github Seafoam-Labs/Shelly-ALPM v3.1.10

3 hours ago

🐚 Shelly-ALPM v3.1.10 Release Notes

Shelly v3.1.10 improves AUR build reliability, resolves system upgrades and explicitly requested repository packages together, and makes RLPM failures easier to understand. The CLI gains a shell progress animation and package-name output for scripts and completions, while the desktop app gets better keyboard navigation and more accurate package lists.

Behind the scenes, Shelly moves to Zig 0.17.0, updates its build and packaging workflows, and removes Arch Linux news from Devario builds.

🧱 More reliable AUR builds

Build dependencies are now discovered and installed before prepare() runs, including when an AUR package needs other AUR packages to build. Dependency planning reads metadata without downloading sources, running lifecycle functions, or changing the reviewed PKGBUILD. Normal source preparation and version updates happen after dependencies are available. (#2110)

This release also improves compatibility with package recipes:

  • 🧩 Support prefix and suffix trimming on quoted indexed array elements, including expressions such as ${source[0]%%::*}, fixing UnsupportedArrayExpansion failures for these constructs.
  • πŸ“ Collapse whitespace in multiline pkgdesc values when writing .PKGINFO, keeping descriptions on one valid metadata line. (#2100)
  • πŸ“₯ Accept larger HTTP response headers during downloads, fixing failures involving GitHub security headers and redirects. (#2096)

πŸ”„ Upgrades and package configuration

shelly install standard --upgrade now resolves the system upgrade and explicitly requested repository packages in one transaction. This fixes dependency failures when a requested package and its updated libraries need to move together, including explicit targets from another repository. The confirmation preview explains the combined operation. (#2105)

Changes to IgnorePkg now preserve the separation between the main configuration and included files. Adding or removing an entry no longer copies inherited entries into pacman.conf. (#2101)

πŸ› Clearer RLPM errors and progress

RLPM reports more useful explanations for failures involving configuration, database locks, downloads, filesystem operations, hooks, and scriptlets. Diagnostics retain the underlying technical error and add relevant context, including action names and exit status when available.

File-conflict reporting carries the conflicting paths and package identities into the transaction diagnostics. Download verification and publication progress bars also clear when their work finishes, keeping subsequent hook output readable while other downloads continue.

🐚 A little more shell in your terminal

The new Shell progress style opens and closes a small ASCII shell as it advances along the bar. It becomes the default when no style is saved; existing style choices are preserved. To select it:

shelly config set ProgressBarStyle Shell

Blocks and Pacman remain available. Redirected output prints completed progress lines without animation.

The CLI also adds --names-only to standard and AUR package lists and standard searches. Each matching package name appears on its own line, and standard searches bypass pagination:

shelly list standard --names-only
shelly list aur --names-only
shelly search standard --names-only --show-hidden

Bash, Fish, and Zsh package completions now query Shelly directly, removing their dependency on pacman for those package lists.

🧭 Desktop navigation and package lists

  • β™Ώ Give pages an accessible focus stop so keyboard traversal reaches their content. The first-run wizard also moves focus into each new page, helping keyboard and screen-reader users follow the setup flow. (#2107)
  • πŸ“¦ Keep the Packages tab based on repository results, using installed-package data to annotate installation status. Foreign and local-only packages no longer appear there as repository packages with unsuitable actions. (#2108)

🌊 Devario defaults

Builds using the Devario path profile no longer fetch or display Arch Linux news during upgrades. News commands are omitted from help, generated manuals, and shell completions; explicitly invoking them reports that news is unavailable. This follows the build's distribution profile, so selecting another runtime backend does not change it. Builds using the pacman path profile retain Arch news. (#2109)

πŸ“¦ Build and packaging updates

  • ⚑ Move the native components and build recipes to Zig 0.17.0, with matching API and build-option updates. (#2117)
  • βœ… Install checksum-verified official Zig archives in CI for the runner's architecture.
  • 🧩 Replace vendored dependency copies with upstream dependencies pinned by URL and content hash.
  • πŸ“¦ Add a dedicated CachyOS packaging directory and update Arch and Devario build workflows.

πŸš€ Upgrade notes

Source builds now require Zig 0.17.0. Populate the dependency cache before building offline with zig build --fetch=all in each component you intend to build.

install standard --upgrade cannot be combined with --build-deps; upgrade the system separately before installing build dependencies.

🌍 Translations and thanks

πŸ‡«πŸ‡· This release updates the French UI translation.

❀️ Thank you to Zoey Bauer, VinnyQF, Anton Ždanov, Mohit Mishra, TomÑs Arribas, and Thierry M for their contributions, and to everyone reporting issues and testing fixes.

πŸ“‹ Full Changelog: v3.1.9…55a23eb0

πŸ”€ Release pull request: #2120

Don't miss a new Shelly-ALPM release

NewReleases is sending notifications on new releases.