A modern, fast, and intuitive GTK4 graphical interface for pacman package manager with AUR support for Arch Linux.
- π Search packages in official repositories and AUR
- π¦ Install/Remove packages with real-time logs
- ποΈ Installed packages management with fast async loading and tabbed interface
- π System updates with progress tracking
- π Package dependency visualization with interactive graph viewer
- π§Ή Package cache cleanup - remove old packages or clear entire cache
- β‘ Async loading with spinners - no UI freezing, smart lazy loading
- π Live operation logs in separate window with timestamps
- π Fast startup - instant launch with background loading
- π¨ Modern tabbed interface - separate search and installed package views
- π Dark theme support - follows system theme automatically
- π οΈ AUR support via yay or paru detection
- π― Beginner-friendly with progress indicators
yay -S pacman-gui
# or
paru -S pacman-gui# Dependencies
sudo pacman -S gtk4 glib2 cmake gcc pkgconf
# Clone and build
git clone https://github.com/Coneriys/pacman-gui.git
cd pacman-gui
mkdir build && cd build
cmake ..
make
# Install
sudo make installgtk4- GUI toolkitglib2- GLib librarypacman- Package managerpolkit- Privilege escalation
yay- AUR helper (recommended)paru- Alternative AUR helper
pacman-guiOr find "Pacman GUI" in your application menu.
- Search packages: Enter package name in search tab and click Search
- Choose source: Select "Official Repos" or "AUR" from dropdown
- Install: Select package from list and click Install
- View dependencies: Select package and click "Dependencies" for interactive graph
- Browse installed: Switch to "Installed Packages" tab (loads on first visit)
- Remove packages: Select installed package and click Remove
- Refresh list: Click "Refresh Installed Packages" to update
- Update system: Click "Update System" button for full system upgrade
- Clean cache: Use "Clean Cache" to remove old packages or "Clean All Cache" for complete cleanup
- Monitor operations: All operations show real-time logs in a separate window
The application automatically detects installed AUR helpers (yay/paru). If none found, AUR search will be disabled.
src/
βββ main.c # Application entry point
βββ pacman_wrapper.c # Package manager backend
βββ pacman_wrapper.h # Backend interface
βββ ui/
βββ main_window.c # Main GUI implementation
βββ main_window.h # GUI interface
βββ dependency_viewer.c # Dependency visualization component
βββ dependency_viewer.h # Dependency viewer interface
- pacman_wrapper: Handles pacman/AUR operations, dependency parsing, and async package loading
- main_window: Modern tabbed GTK4 interface with async loading, spinners, and real-time logs
- dependency_viewer: Interactive dependency graph visualization with Cairo rendering
- Async operations: Non-blocking package operations with background threads and UI feedback
- Smart loading: Lazy loading of installed packages with smooth transitions and progress indicators
The application automatically:
- Detects system theme (light/dark)
- Finds available AUR helpers
- Uses
pkexecfor privilege escalation
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Debug
make- Fork the repository
- Create feature branch (
git checkout -b feature/amazing-feature) - Commit changes (
git commit -m 'Add amazing feature') - Push to branch (
git push origin feature/amazing-feature) - Open Pull Request
- C11 standard
- 4-space indentation
- GTK4 conventions
- Comment public functions
Arch Linux is powerful but can be intimidating for newcomers. This GUI provides:
- Accessibility: No need to memorize pacman commands
- Safety: Visual confirmation before operations
- Learning: See actual commands being executed
- Convenience: AUR integration without manual setup
- Performance: Fast, responsive experience even on older hardware
- Package dependency visualization
- Installed packages management
- Package cache cleanup
- Async loading with preloaders
- Package categories/groups
- Configuration settings dialog
- Repository management
- Multiple language support
- Package information details view
- Update notifications
GPL-3.0 License. See LICENSE for details.
- Arch Linux community
- GTK development team
- AUR helper developers (yay, paru)
- Issues: GitHub Issues
- Wiki: Arch Wiki
- Forum: Arch Linux Forums
Note: This is unofficial software. Always keep your system updated and understand what packages you're installing.