github Seafoam-Labs/Shelly-ALPM v3.1.9

4 hours ago

Shelly-ALPM v3.1.9 Release Notes

Shelly v3.1.9 adds file migration support to RLPM, allowing packages to take ownership of eligible existing files while preserving their contents. Devario gains automatic adoption of unowned files, and package authors can declare specific migrations for replacements and upgrades.

This release also fixes first-upgrade failures for AUR -git packages, preserves proxy settings during native builds, and improves repository refreshes and update previews.

๐Ÿ“ฆ File migration with RLPM

Files installed by an installer or an earlier system setup can now become package-managed without being overwritten. RLPM can adopt existing regular files and symlinks, keeping their contents and attributes while recording the destination package as their owner.

Package authors can declare exact paths through the new shelly_migrate PKGBUILD array. Declarations support unowned files and files belonging to an accepted replacement or the previous version of the same package. They can also mark missing paths as optional and establish backup tracking for eligible files.

Shelly carries these declarations through generated .SRCINFO and package archives, including overrides for individual split packages. Explicit migrations can adopt files absent from the incoming archive; RLPM retains those ownership records across later upgrades until normal package payload handling takes over.

CLI and GTK transaction previews show which paths will be preserved, their source and destination, and whether the migration was declared or discovered automatically. Ownership and file-type checks still apply. See the migration guide for declaration syntax and lifecycle details.

โš™๏ธ Automatic adoption on Devario

Devario builds enable automatic adoption of eligible unowned files that are also supplied by an incoming package. Once the package owns a file, later upgrades use normal extraction and backup rules. Files already owned by another package are not automatically adopted.

The setting lives under [options] in the native configuration file, /etc/shelly.conf on Devario:

[options]
AutoMigrateUnowned = true

Set it to false to disable automatic discovery. Explicit migration declarations remain available. The pacman path profile defaults to false; this feature requires the RLPM backend.

๐Ÿ—๏ธ More reliable AUR builds

  • Fixed -git packages failing their first upgrade after upstream changes with ReviewedCheckoutChanged. Shelly now recognizes controlled pkgver and pkgrel updates made during metadata generation while continuing to reject unrelated changes to reviewed inputs. (#2081)
  • Fixed PKGBUILD parsing for negated and conditional brace groups, including constructs such as if ! { ...; }; then. (#2076)
  • Preserved standard HTTP, HTTPS, all-proxy, and no-proxy environment variables when elevated native builds return to the invoking user.
  • Improved AUR failure reporting so errors identify the affected package and retain the underlying cause.

๐Ÿ”„ Smoother updates and previews

  • Reuse repository databases already synchronized by the libalpm manager, avoiding a duplicate refresh during the same update flow. (#2066)
  • Keep root-run update previews in root's own cache, preventing them from leaving root-owned database files in the regular user's preview cache. (#2072)

๐Ÿ”ง Packaging and maintenance

  • Pin the affected source PKGBUILDs to Zig 0.16.0 and use the patched compiler package consistently in CI and release builds.
  • Build the stable Devario packages from the matching release tag; the separate shelly-git recipe continues to track development.
  • Update the AUR release helper to refresh checksums and .SRCINFO through Shelly, with package builds optional during release preparation.

๐Ÿ”„ Upgrade notes

File migration requires Shelly 3.1.9 with RLPM. Upgrade Shelly before deploying packages that depend on shelly_migrate. Shelly's libalpm backend rejects installation of archives declaring these migration semantics; older Shelly releases and other package managers may ignore them.

RLPM may download package archives before final installation confirmation to prepare the migration preview. Cancelling at that confirmation leaves installed files and ownership unchanged.

๐ŸŒ Translations and thanks

This release updates German and Russian UI translations and Polish notification translations.

Thank you to Zoey Bauer (@ZoeyErinBauer), Rani Charradi (@treshaun), Hen_Ry (@Henry2o1o), Andrei Stepanov (@adem4ik), Julia (@juliazero), and Piotr Gรณrski for their contributions.

Full Changelog: v3.1.8โ€ฆd89a8338

Don't miss a new Shelly-ALPM release

NewReleases is sending notifications on new releases.