# LazyUpdateManager LazyUpdateManager is a small update helper for Arch Linux and Hyprland. It checks for available package updates and sends a desktop notification at most once per week while updates are pending. ## Features - Checks official repository updates with `checkupdates` when available, otherwise `pacman -Qu` - Checks AUR updates with `paru -Qua` or `yay -Qua` when either helper is installed - Sends notifications with `notify-send`, with `hyprctl notify` as fallback - Provides a graphical browser UI for checking and installing updates - Includes a systemd user timer that checks every two hours and reminds weekly - Provides an interactive `update` command ## Requirements - Arch Linux - Go 1.22 or newer to build - `pacman-contrib` recommended for `checkupdates` - Optional: `paru` or `yay` for AUR updates - Optional: `libnotify` for `notify-send` ## Build ```sh make build ``` ## Usage ```sh ./bin/lazy-update-manager status ./bin/lazy-update-manager check ./bin/lazy-update-manager check -quiet ./bin/lazy-update-manager notify ./bin/lazy-update-manager notify -force ./bin/lazy-update-manager gui ./bin/lazy-update-manager update ``` ## Graphical Interface ```sh ./bin/lazy-update-manager gui ``` The GUI opens in your browser and lets you: - refresh the update list - start update installation in a terminal - enable or disable AUR checks - change the reminder interval - choose the terminal used for installing updates ## Install ```sh make install ``` This installs the binary to `~/.local/bin/lazy-update-manager`. It also installs a desktop launcher to `~/.local/share/applications/lazy-update-manager.desktop`. ## Enable Weekly Reminder ```sh make enable-user-service ``` The timer runs every two hours, but `lazy-update-manager notify` stores the last reminder timestamp in: ```text ~/.local/state/lazy-update-manager/state.json ``` That means you only get a reminder once per week while updates are available. Settings are stored in: ```text ~/.config/lazy-update-manager/config.json ``` ## Check Timer ```sh systemctl --user status lazy-update-manager.timer systemctl --user list-timers lazy-update-manager.timer ```