• lindon-6.0.0-rc1-1 e201dbe694

    RudiOnTheAir released this 2026-09-09 16:03:48 +02:00 | 20 commits to main since this release

    lindon 6.0.0~rc1-1

    First release under the new package name. If you're upgrading an
    existing rivolution install, read the "Renamed" section below before
    installing — the short version is: use apt install, not
    lindon-install.sh, and back up your database first regardless.

    Renamed: rivolution → lindon

    The package itself is now lindon (was rivolution). Internal paths
    went the other way — /usr/share/rivolution/, our own systemd units
    — reverted to plain rivendell naming. Also dropped the +lindonN
    version suffix entirely; it's redundant now that the package name
    itself says lindon, and it was quietly breaking our own build
    script's revision auto-bump. Versioning going forward is a plain
    Debian revision count (6.0.0~rc1-1, -2, …) against the upstream
    Rivolution version.

    Upgrading from rivolution:

    mysqldump --all-databases > backup.sql   # do this regardless
    sudo apt install lindon_*.deb lindon-*.deb
    

    Conflicts:/Replaces: handles removing the old rivolution-*
    packages in the same transaction — review apt's summary before
    confirming.

    Two things worth knowing after an upgrade, neither of them
    automatic:

    • If you have existing PyPAD instances, check their script path —
      PYPAD_INSTANCES.SCRIPT_PATH is a string frozen in the database at
      creation time and won't follow the rename on its own. New instances
      created after upgrading pick up the correct path automatically.
    • rivolution.conf under /etc/systemd/system/rivendell.service.d/
      isn't a dpkg-tracked conffile, so it's left sitting there alongside
      the new rivendell.conf rather than being removed. Harmless as
      long as the two don't diverge, but worth cleaning up by hand:
      rm /etc/systemd/system/rivendell.service.d/rivolution.conf.

    Also fixed: postinst's fresh-install-vs-upgrade check relied only on
    dpkg's $OLD_VERSION, which dpkg leaves empty for a Replaces:-
    triggered rename even with a fully working install already in place —
    the very first rivolution→lindon install would otherwise have hit
    the fresh-install branch and dropped the production database. Now
    also checks for a pre-existing /etc/rivendell.d/rd-default.conf
    before deciding.

    New: "Make Next & Wait max"

    A fourth option in "Action If Previous Event Still Playing" (rdairplay
    Edit Event, rdlogedit, and rdlogmanager's clock/event editor), alongside
    Start Immediately / Make Next / Wait up to.

    Reserves the "next" slot immediately like Make Next — so on a busy or
    segue-chained clock, a hard-timed element (news, a legally-timed ID)
    joins the current segue chain instead of the log falling through to
    whatever else happens to be scheduled next. But it still enforces a
    bounded timeout like Wait up to, so an overrunning predecessor can't
    push it past its deadline either.

    Encoded as GRACE_TIME <= -2 (timeout_ms = -GRACE_TIME - 2) — no
    database schema change, existing 0/-1/>0 values unaffected.

    Fixed

    • A side effect in RDLogPlay::transTimerData(): makeNext() calls
      SetTransTimer() internally, which can silently reassign the
      play_trans_line member to the next upcoming hard-time line. The
      new branch now uses the function's own pre-captured local
      (trans_line) consistently instead, matching the defensive pattern
      already used elsewhere in the function. Symptom before the fix: the
      wrong log line could get force-started after the grace timeout.
    • Two independent display bugs that made a correctly-saved value look
      wrong: EventWidget::load() (rdlogmanager) always showed "Start
      Immediately" on reopen regardless of what was actually saved;
      RDEventLine::propertiesText() rendered the new negative
      GRACE_TIME range as a bogus wrapped-around time (e.g. "57:59" for
      a 2:00 timeout) in the RDLogManager event list.

    Notes

    • Includes lindon:-tagged LOG_DEBUG diagnostics around the new
      grace-timer branch, for diagnosing scheduling edge cases.
    • GitHub renames "~" to "." in uploaded asset filenames — use
      lindon_6.0.0.rc1-1_amd64.deb in install commands, not the real
      Debian version string above.
      EOF
      Ausgabe

    lindon 6.0.0~rc1-1

    First release under the new package name. If you're upgrading an
    existing rivolution install, read the "Renamed" section below before
    installing — the short version is: use apt install, not
    lindon-install.sh, and back up your database first regardless.

    Renamed: rivolution → lindon

    The package itself is now lindon (was rivolution). Internal paths
    went the other way — /usr/share/rivolution/, our own systemd units
    — reverted to plain rivendell naming. Also dropped the +lindonN
    version suffix entirely; it's redundant now that the package name
    itself says lindon, and it was quietly breaking our own build
    script's revision auto-bump. Versioning going forward is a plain
    Debian revision count (6.0.0~rc1-1, -2, …) against the upstream
    Rivolution version.

    Upgrading from rivolution:

    mysqldump --all-databases > backup.sql   # do this regardless
    sudo apt install lindon_*.deb lindon-*.deb
    

    Conflicts:/Replaces: handles removing the old rivolution-*
    packages in the same transaction — review apt's summary before
    confirming.

    Two things worth knowing after an upgrade, neither of them
    automatic:

    • If you have existing PyPAD instances, check their script path —
      PYPAD_INSTANCES.SCRIPT_PATH is a string frozen in the database at
      creation time and won't follow the rename on its own. New instances
      created after upgrading pick up the correct path automatically.
    • rivolution.conf under /etc/systemd/system/rivendell.service.d/
      isn't a dpkg-tracked conffile, so it's left sitting there alongside
      the new rivendell.conf rather than being removed. Harmless as
      long as the two don't diverge, but worth cleaning up by hand:
      rm /etc/systemd/system/rivendell.service.d/rivolution.conf.

    Also fixed: postinst's fresh-install-vs-upgrade check relied only on
    dpkg's $OLD_VERSION, which dpkg leaves empty for a Replaces:-
    triggered rename even with a fully working install already in place —
    the very first rivolution→lindon install would otherwise have hit
    the fresh-install branch and dropped the production database. Now
    also checks for a pre-existing /etc/rivendell.d/rd-default.conf
    before deciding.

    New: "Make Next & Wait max"

    A fourth option in "Action If Previous Event Still Playing" (rdairplay
    Edit Event, rdlogedit, and rdlogmanager's clock/event editor), alongside
    Start Immediately / Make Next / Wait up to.

    Reserves the "next" slot immediately like Make Next — so on a busy or
    segue-chained clock, a hard-timed element (news, a legally-timed ID)
    joins the current segue chain instead of the log falling through to
    whatever else happens to be scheduled next. But it still enforces a
    bounded timeout like Wait up to, so an overrunning predecessor can't
    push it past its deadline either.

    Encoded as GRACE_TIME <= -2 (timeout_ms = -GRACE_TIME - 2) — no
    database schema change, existing 0/-1/>0 values unaffected.

    Fixed

    • A side effect in RDLogPlay::transTimerData(): makeNext() calls
      SetTransTimer() internally, which can silently reassign the
      play_trans_line member to the next upcoming hard-time line. The
      new branch now uses the function's own pre-captured local
      (trans_line) consistently instead, matching the defensive pattern
      already used elsewhere in the function. Symptom before the fix: the
      wrong log line could get force-started after the grace timeout.
    • Two independent display bugs that made a correctly-saved value look
      wrong: EventWidget::load() (rdlogmanager) always showed "Start
      Immediately" on reopen regardless of what was actually saved;
      RDEventLine::propertiesText() rendered the new negative
      GRACE_TIME range as a bogus wrapped-around time (e.g. "57:59" for
      a 2:00 timeout) in the RDLogManager event list.

    Notes

    • Includes lindon:-tagged LOG_DEBUG diagnostics around the new
      grace-timer branch, for diagnosing scheduling edge cases.
    • GitHub renames "~" to "." in uploaded asset filenames — use
      lindon_6.0.0.rc1-1_amd64.deb in install commands, not the real
      Debian version string above.
    Downloads