Shelly ALPM v2.4.1.4 Released: Tightens PKGBUILD Parsing and Build Diagnostics
Shelly ALPM v2.4.1.4 dropped on July 14. Zoey Bauer pushed the update from Seafoam Labs, bringing targeted fixes to dependency resolution and build error reporting for the C#/Vala package manager. The release aims to reduce headaches for Arch users relying on Shelly to handle AUR packages that use conditional feature flags.
Shelly has been circling the pacman ecosystem for a while, promising a faster, feature-rich alternative with a GTK-based GUI. It's currently sitting at 854+ stars on GitHub. This update doesn't overhaul the interface, but it addresses gaps in PKGBUILD parsing that could lead to broken builds or missing dependencies.
Smarter PKGBUILD Parsing
AUR packages often toggle dependencies based on scalar variables. You might see something like _build_cuda=1 followed by a conditional guard to append makedepends. Before this release, Shelly would skip the conditional line entirely. If the flag was set to include cuda or cudnn, Shelly missed them.
The new parser evaluates same-line conditional guards when it can resolve the scalar variables. It supports operators like -eq, -ne, -gt, -ge, -lt, -le, ==, and !=. The logic handles literal variables, quoted strings, and unquoted numeric comparisons. Unresolved variables are skipped with an error to stderr instead of guessing.
This matters for packages with hardware feature toggles. GPU builds, optional acceleration flags, and similar feature branches now parse correctly. Two new unit tests verify the behavior. One confirms inclusion when _build_cuda=1. Another confirms exclusion when it's zero.
Full Build Logs on Failure
When makepkg crashes, diagnosing the issue is usually the first step. Previously, Shelly captured only the last line of stderr via ReadToEndAsync(). That often left you staring at a truncated error with no context.
Now Shelly collects all stdout and stderr output into a StringBuilder during execution. On failure, it appends the full captured output to the error message. You get the entire build trace instead of a single line. That's a quality-of-life win for debugging AUR packages that don't compile out of the box.
One commit also patched an AUR concurrency build issue, though the specific diff isn't detailed in the release notes. Another commit updated the security warning header to clarify that commands execute outside Shelly's control, not just pacman's. The distinction helps users understand how Shelly handles PKGBUILD content.
Installation and Details
The version bumped from 2.4.1.3 to 2.4.1.4 across all artifacts. That includes the PKGBUILD source, PKGBUILD-bin, PKGBUILD-git, and all .NET and Meson project files. The update touches 12 files with two commits.
If you want to try Shelly, you have options. CachyOS provides a packaged version:
sudo pacman -S shelly
AUR helpers like yay and paru also support it:
yay -S shelly
You can build from source if you prefer:
git clone https://github.com/Seafoam-Labs/Shelly-ALPM.git cd Shelly-ALPM makepkg -si
Head here to theĀ GitHub repository.
