[2026.06.26]
Added
library: periodic library rescan + delete reconciliation as a backstop for filesystem watcher events that get dropped silently — Linux inotify is a no-op on NFS/SMB/FUSE mounts, and the kqueue backend on BSDs (NetBSD) coalesces multi-file drops into a singleVnode::Writeevent and only surfaces one new file per coalesce;start_watchernow spawns a background tokio task that ticks everyROCKBOX_RESCAN_INTERVAL_SECSseconds (default120, set0to disable), runsscan_audio_filesthen the newaudio_scan::reconcile_deletionswhich walksrepo::track::all(already filtersis_remote = 0) and callsrepo::track::delete_by_pathfor any track whose path no longer exists on disk; overlapping ticks are skipped viatokio::sync::Mutex::try_lockso the periodic pass can never pile up behind a still-running initial scan on a large libraryci: Debian and Fedora package builds, published to GitHub Releases and Gemfury — new.github/workflows/linux-x86_64-build.ymlbuildsrockbox,rockboxd,librockboxd.a, androckbox-gpui(viagpui/package.sh, hard-fails if the Linux GPUI build breaks), downloadstypesense-serverv30.1 fromdl.typesense.org, and packages a.deband.rpmthat ship all four binaries plus therockbox-gpuidesktop entry and PNG icon; the existinglinux-aarch64-build.ymlis extended with a.debcontainingrockbox+rockboxd+typesense-server(no GPUI);linux-armhf-build.ymlgains a.debwith justrockboxd; each workflow checks forFURY_TOKENandFURY_ACCOUNTsecrets and pushes its own packages topush.fury.io, mirroring the smolsonic release pipeline
Full Changelog: 2026.06.25...2026.06.26