feat: Arch Linux support (pacman + AUR via paru/yay)#6
Open
Rocho-EL-Locho wants to merge 3 commits into
Open
Conversation
Detect the native package manager at runtime (dnf vs pacman) and drive the existing native section off it, so Fedora behavior is unchanged. On pacman systems: repo updates are checked with checkupdates (pacman-contrib), which syncs to a temporary cache DB and never runs 'pacman -Sy' against the system DB (avoids a partial-upgrade state); AUR updates are listed in a separate section via the detected helper (paru preferred, yay fallback) using -Qua; update actions run 'sudo pacman -Syu' and '<helper> -Sua' (the AUR helper as the invoking user, never via sudo). The Flatpak section is hidden automatically when flatpak isn't installed. Each Proc command id is suffixed with a per-instance value so multi-monitor widget instances don't collide on the global Proc debounce key. A timed-out or errored check is shown distinctly from 'no updates available', and a hint is shown when no supported package manager is present. Adds a 'Show AUR Updates' toggle to the settings.
Update the README (intro, features, configuration, requirements) and the plugin.json description for the new native-PM detection and Arch/AUR support, and add an Unreleased changelog entry. Also correct the Flatpak update command in the features list to match the code (sudo flatpak update -y). Version number is intentionally left for the maintainer to assign.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implements #5 — adds Arch Linux support to the widget.
What this does
The plugin now auto-detects the native package manager at runtime instead of assuming DNF:
checkupdates(frompacman-contrib).parupreferred,yayfallback) with-Qua.flatpakisn't installed.Update actions per section open a terminal and run:
sudo dnf upgrade -ysudo pacman -Syu(interactive — review the transaction)<helper> -Sua(as the invoking user, never sudo)sudo flatpak update -ySafety / correctness notes
checkupdates, which syncs to a temporary cache DB. It needs no root and does not runpacman -Syagainst the system database (which would risk a partial-upgrade state).checkupdatesexit codes are handled (0 = updates, 2 = none, other = failure); a timed-out or failed check is shown distinctly from "no updates available" instead of silently reading as up-to-date.Proc.runCommandid is suffixed per widget instance, so multi-monitor instances don't collide on the global (singleton) Proc debounce key.Settings
Adds a "Show AUR Updates" toggle (default on; ignored when no helper is installed). DNF/Flatpak settings are unchanged.
Notes
plugin.jsonversion and the changelog version are left for you to assign — there's an "Unreleased" changelog stub you can rename on release.checkupdates+ paru/yay.Happy to adjust the approach (e.g. an explicit backend setting instead of auto-detect, or folding AUR into the native section) if you'd prefer it shaped differently.