A Kirigami-based package management GUI for Arch Linux and CachyOS. Unified interface for Pacman, AUR, Flatpak, firmware updates, and KDE add-ons — no PackageKit required.
- Pacman — Search, install, and remove official repository packages
- AUR — Browse and install AUR packages via paru, with terminal mode for interactive builds
- Flatpak — Manage Flatpak applications across multiple remotes
- Firmware — View devices and apply firmware updates via fwupd
- KDE Add-ons — Install Plasma widgets, themes, icons, and more from the KDE Store
- Safe Update — One-click sequential update across all backends (pacman → AUR → Flatpak → Firmware), stopping on any error
- Security — All privileged operations go through a PolicyKit-guarded helper script with a strict command whitelist
paru -S safe-discover# Build
cmake -B build && cmake --build build -j$(nproc)
# Install system-wide
sudo cmake --install build
# Or build and install as an Arch package
make package-installRequired: qt6-base, qt6-declarative, kirigami, kirigami-addons, kcoreaddons, ki18n, kconfig, knewstuff, polkit
Optional: paru (AUR support), flatpak, fwupd (firmware), konsole (terminal mode)
# Configure + build + test
make build
make test
# Build and run
make run
# Build Arch package
make package
# All targets
make helpSee docs/ for full architecture documentation, backend details, security model, and contributing guidelines.
Safe Discover invokes CLI tools directly rather than going through PackageKit. Each backend wraps a specific tool:
| Backend | Tool | Operations |
|---|---|---|
| Pacman | pacman |
Search, install, remove, system update |
| AUR | paru |
Search, install (terminal), 3-step removal with orphan cleanup |
| Flatpak | flatpak |
Search, install, remove, multi-remote support |
| Firmware | fwupdmgr |
Device listing, per-device updates |
| KDE Add-ons | KNewStuff | Plasma widgets, themes, icons from store.kde.org |
Privileged operations (install, remove, system update) are escalated through PolicyKit with a helper script that only allows whitelisted commands. See docs/security.md for details.
This project is licensed under the GNU General Public License v3.0 or later.
2026 Kinn Coelho Juliao kinncj@protonmail.com






