coffebar / waybar-module-pacman-updates

waybar module for Arch to show system updates available
GNU General Public License v3.0
51 stars 4 forks source link
hyprland rust sway waybar wayland

waybar module for Arch to show system updates available

screenshot

Reason

Why not just exec checkupdates in custom waybar module?

This small program will give you fast updates with less network usage. After you have installed all the updates, the module will immediately go into the Updated state. You don't need to send signals to waybar to update this module state.

How to use

"custom/updates": {
    "format": "{} {icon}",
    "return-type": "json",
    "format-icons": {
        "has-updates": "󱍷",
        "updated": "󰂪"
    },
    "exec-if": "which waybar-module-pacman-updates",
    "exec": "waybar-module-pacman-updates --interval-seconds 5 --network-interval-seconds 300"
}

Options

--no-zero-output - don't print "0" if there are no updates available.

--interval-seconds - interval to run checkupdates without network usage.

--network-interval-seconds - interval to run checkupdates with network usage.

--tooltip-align-columns - format tooltip as a table using given monospaced font.

How to hide the module when there are no updates available

waybar config
"custom/updates": {
    "format": "{} {icon}",
    "return-type": "json",
    "format-icons": {
        "has-updates": "󱍷",
        "updated": ""
    },
    "exec-if": "which waybar-module-pacman-updates",
    "exec": "waybar-module-pacman-updates --no-zero-output"
}
style.css
#custom-updates {
    background-color: transparent;
}

installation options

Install from cargo crates

cargo install waybar-module-pacman-updates

Make sure you have $HOME/.cargo/bin in your PATH env variable.

Install from AUR

yay -S waybar-module-pacman-updates-git

Install from source

sh -c "$(wget -O- https://raw.githubusercontent.com/coffebar/waybar-module-pacman-updates/master/installer.sh)"

Make sure you have $HOME/.local/bin in your PATH env variable.