One Package Manager to Rule Them All
Khazaur is a package manager for Arch Linux that unifies multiple package sources into a single interface. Instead of switching between pacman, yay, flatpak, and snap, you can use one tool for everything.
Written in Rust for performance and reliability.
Multi-source support
- Official Arch repositories (via pacman)
- AUR packages (automatic building)
- Flatpak applications from Flathub
- Snap packages from Snap Store
- Debian .deb files (via debtap conversion)
Unified search
- Search all sources with one command
- Interactive selection when multiple matches exist
- Filter by source with
--aur,--repo,--flatpak,--snap, or--debian
Smart behavior
- Automatic dependency resolution
- 24-hour cache for Debian packages
- Checksum verification
- Conflict detection for package removal
- Optional dependency prompts (flatpak, snapd, debtap)
Security
- PKGBUILD review before building
- MD5 verification for Debian packages
- Supports pkexec, sudo, or doas
Developer Experience
- Shell completions for bash, zsh, fish, PowerShell, and elvish
- Colored output with clear status indicators
- Interactive package selection
The easiest way to install khazaur on Arch Linux:
# Using an AUR helper (yay, paru, etc.)
yay -S khazaurIf you prefer to build manually without an AUR helper:
# Clone the repository
git clone https://github.com/os-guy-original/khazaur.git
cd khazaur
# Build and install using makepkg
makepkg -siRequirements:
- Arch Linux or Arch-based distribution
- Rust 1.70+
- cargo and git
- libgit2, libssh2, openssl, zlib (runtime dependencies)
- Privilege escalation tool (pkexec, sudo, or doas)
git clone https://github.com/os-guy-original/khazaur.git
cd khazaur
cargo build --release
sudo install -Dm755 target/release/khazaur /usr/bin/khazaurKhazaur will prompt to install these when needed:
flatpak- for Flatpak supportsnapd- for Snap supportdebtap- for Debian package conversion
# Search for packages
khazaur -Ss firefox
# Install a package
khazaur -S firefox
# Install from specific source (pacman-style)
khazaur -S aur/yay
khazaur -S core/linux
khazaur -S flatpak/org.mozilla.firefox
khazaur -S snap/discord
# Update package databases
khazaur -Sy
# Upgrade system
khazaur -Syu
# Remove a package
khazaur -R firefox
# Show package info
khazaur -Si firefox# Search specific sources
khazaur -Ss yay --aur
khazaur -Ss spotify --flatpak
khazaur -Ss discord --snap
khazaur -Ss htop --debian
khazaur -Ss firefox --repo
# Install from specific source (two methods)
# Method 1: Using flags
khazaur -S yay --aur
khazaur -S firefox --flatpak
# Method 2: Using source prefix (pacman-style)
khazaur -S aur/yay
khazaur -S flatpak/org.mozilla.firefox
khazaur -S snap/discord
khazaur -S core/linux extra/firefox
# Update specific sources
khazaur -Sy --repo # Update pacman databases only
khazaur -Sy --debian # Update Debian index and debtapkhazaur package.deb
# or
khazaur -S package.debWhen removing packages with dependencies, khazaur detects conflicts and prompts for confirmation:
khazaur -R flatpak
# Shows dependent packages
# Asks if you want to force removal with -Rddkhazaur -S package-name --noconfirmConfig file: ~/.config/khazaur/config.toml
use_color = true
confirm = true
review_pkgbuild = false
concurrent_downloads = 4
use_git_clone = true
max_concurrent_requests = 10
request_delay_ms = 100
[rejected_dependencies]
flatpak = false
snapd = false
debtap = falseCache directory: ~/.cache/khazaur/
| Feature | Khazaur | yay | paru |
|---|---|---|---|
| Language | Rust | Go | Rust |
| AUR + repos | ✓ | ✓ | ✓ |
| Flatpak | ✓ | ✗ | ✗ |
| Snap | ✓ | ✗ | ✗ |
| Debian packages | ✓ | ✗ | ✗ |
| Multi-source search | ✓ | ✗ | ✗ |
| Dependency resolution | ✓ | ✓ | ✓ |
Khazaur extends the traditional AUR helper model by adding support for additional package sources. If you only need AUR and repository support, yay and paru are excellent choices. Khazaur is useful when you want to manage Flatpak, Snap, or Debian packages alongside your Arch packages.
Working:
- AUR package installation
- Repository package installation
- Flatpak support
- Snap support
- Debian package support
- Multi-source search
- Dependency resolution
- Package removal
- Conflict handling
- Configuration file
- AUR package upgrades
Completed:
- Shell completions
Note: Debian packages installed via debtap are converted to pacman packages and managed through pacman thereafter.
Contributions are welcome. Please submit pull requests or open issues on GitHub.
Licensed under the GNU General Public License v3.0. See LICENSE for details.
Inspired by yay and paru. Built with Rust. Thanks to the Arch Linux community.
Made by os-guy-original