A terminal UI for managing packages on Arch Linux (and derivatives like CachyOS, Manjaro, EndeavourOS).
Handles system updates and package installs/removals via pacman and yay (AUR).
╔══════════════════[ pkgtui v1.0 ]═══════════════════╗
║ ██████╗ ██╗ ██╗ ██████╗ ████████╗██╗ ██╗██╗ ║
║ ██╔══██╗██║ ██╔╝██╔════╝ ╚══██╔══╝██║ ██║██║ ║
║ ██████╔╝█████╔╝ ██║ ███╗ ██║ ██║ ██║██║ ║
║ ██╔═══╝ ██╔═██╗ ██║ ██║ ██║ ██║ ██║██║ ║
║ ██║ ██║ ██╗╚██████╔╝ ██║ ╚██████╔╝██║ ║
║ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═════╝ ╚═╝ ║
║ Arch Linux Package Manager ║
╠════════════════════════════════════════════════════╣
║ ╔══════════════════════════════════════════╗ ║
║ ║ ▶ [1] System Update ║ ║
║ ╠══════════════════════════════════════════╣ ║
║ ║ [2] Search & Install ║ ║
║ ╠══════════════════════════════════════════╣ ║
║ ║ [3] Remove Package ║ ║
║ ╠══════════════════════════════════════════╣ ║
║ ║ [4] Exit ║ ║
║ ╚══════════════════════════════════════════╝ ║
╚════════════════════════════════════════════════════╝
Vibecoded Notice This tool was vibecoded — designed and written with AI assistance (Claude by Anthropic). It works, but treat it like any community script: read it before running, and don't blindly
sudothings you haven't glanced at.
- Arch-based distro (Arch, CachyOS, Manjaro, EndeavourOS, …)
python3— part of the base systemfzf— fuzzy finder (sudo pacman -S fzf)yay— AUR helper (sudo pacman -S yayor from AUR)pacman— comes with every Arch install- Terminal size at least 80×24
yay -S pkgtuiOr with any other AUR helper (paru, trizen, etc.). The package page is at
https://aur.archlinux.org/packages/pkgtui
git clone https://github.com/StepanKomis/pkgtui ~/pkgtui
cd ~/pkgtui
bash install.shThe script is copied to ~/.local/bin/pkgtui. Make sure ~/.local/bin is in your PATH:
fish:
fish_add_path ~/.local/binbash/zsh:
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc # or ~/.zshrcThen run:
pkgtuiIf installed from AUR:
yay -R pkgtuiIf installed from source:
bash ~/pkgtui/uninstall.sh| Key | Action |
|---|---|
↑ / ↓ |
Move selection |
Enter / Space |
Confirm selection |
1–4 |
Jump directly to menu item |
q / Esc |
Quit |
Runs a full system upgrade:
sudo pacman -Syu— syncs and upgrades all official packagesyay -Syu— upgrades AUR packages
Live output is shown directly in the terminal (pacman's progress bars, prompts, etc. are all preserved).
- Type a search query in the overlay dialog
- Results from both official repos and AUR are shown in
fzf - Use arrow keys / type to filter;
Tabtoggles the preview pane (shows full package info) - Press
Enterto install the selected package viayay -S
yay handles both AUR and official repo packages transparently — no need to distinguish.
- All installed packages are listed in
fzf Tabpreviews the package's info (pacman -Qi)- Press
Enterto remove viasudo pacman -Rs(also removes orphaned dependencies)
Exit pkgtui. Also reachable with q or Esc.
- Minimum terminal size: 80 columns × 24 rows. The menu will show an error if the terminal is smaller; just resize and it will redraw.
yay -Sis used for installs (handles both official and AUR).sudo pacman -Rsis used for removal.- No config file, no persistent state — just a single executable script.