GLAZEPKG(1)

NAME

glazepkgSee all your installed packages in one place.

SYNOPSIS

$go install github.com/neur0map/glazepkg/cmd/gpk@latest

INFO

452 stars
17 forks
0 views

DESCRIPTION

See all your installed packages in one place.

README

GlazePKG (gpk)

See every package on your system — one gorgeous terminal dashboard.

A beautiful TUI that unifies 35 package managers into a single searchable, snapshotable, diffable view. Built with Bubble Tea. Zero config. One binary. Just run gpk.

CI Go Release License: GPL-3.0 Downloads Stars

demo


Why?

You have brew, pip, cargo, npm, apt, maybe flatpak — all installing software independently. Knowing what's actually on your machine means running 6+ commands across different CLIs with different flags and output formats.

GlazePKG fixes this. One command, one view, every package. Track what changed over time with snapshots and diffs. Export everything to JSON for backup or migration.

Features

  • 35 package managers — brew, pacman, AUR, apt, dnf, snap, pip, pipx, cargo, go, npm, pnpm, bun, flatpak, MacPorts, pkgsrc, opam, gem, pkg, composer, mas, apk, nix, conda/mamba, luarocks, XBPS, Portage, Guix, winget, Chocolatey, Scoop, NuGet, PowerShell modules, Maven, Windows Update
  • Instant startup — scans once, caches for 10 days, opens in milliseconds on repeat launches
  • Fuzzy search — find any package across all managers instantly with /
  • Package operations — upgrade, remove, search, and install packages without leaving the TUI
  • Multi-select — batch upgrade or remove with smart sudo batching
  • Snapshots & diffs — save system state, diff to see what changed
  • Update detection indicator for packages with available updates
  • Export — dump to JSON or text for backup, migration, or dotfile tracking
  • Zero dependencies — single static Go binary, cross-platform

Install

Homebrew (macOS / Linux)

brew install neur0map/tap/gpk

Arch Linux (AUR)

yay -S gpk-bin

Go

go install github.com/neur0map/glazepkg/cmd/gpk@latest

Pre-built binaries

Grab a binary from releases for macOS (ARM/Intel), Linux (x64/ARM), or Windows (x64/ARM).

Build from source
git clone https://github.com/neur0map/glazepkg.git
cd glazepkg && go build ./cmd/gpk

If gpk is not found after installing via go install, add Go's bin directory to your PATH:

export PATH="$PATH:$HOME/go/bin"

Quick Start

gpk              Launch TUI
gpk update       Self-update to latest release
gpk version      Show current version
gpk --help       Show keybind reference

Just run gpk — navigate with j/k, switch managers with Tab, search with /, press s to snapshot, d to diff, e to export. Press ? for the full keybind reference.

Keybindings
KeyAction
j/k, /Navigate
g / GJump to top / bottom
Ctrl+d / Ctrl+uHalf-page down / up
PgDn / PgUpPage down / up
Tab / Shift+TabCycle manager tabs
fCycle size filter
/Fuzzy search
EnterPackage details
u (detail)Upgrade package
x (detail)Remove package
d (detail)View dependencies
h (detail)Package help/usage
e (detail)Edit description
iSearch + install packages
mToggle multi-select mode
Space (multi-select)Toggle package selection
sSave snapshot
dDiff against last snapshot
eExport (JSON or text)
rForce rescan
?Help overlay
qQuit
Package Operations

Upgrade (u in detail view)

Open a package with Enter, then press u. A confirmation modal shows the exact command. Privileged managers (apt, pacman, dnf, snap, apk, xbps) include a password field for sudo. The upgrade runs in the background while you keep using the TUI.

Remove (x in detail view)

Open a package with Enter, then press x. Managers that support it (apt, pacman, dnf, xbps) offer two modes: remove package only, or remove package with orphaned dependencies. If the package is required by other packages, a warning is shown before proceeding.

Search + Install (i)

Press i from the package list to open the search view. Type a query and results stream in from all installed managers in parallel. Results are deduplicated by name — expand a row to see all available sources and versions. Press i on a result to install it. Already-installed packages are marked.

Multi-Select (m)

Press m to enter selection mode. Use Space to toggle packages, navigate and search normally — selections persist across tabs and searches. Press u to upgrade all selected or x to remove all selected. The confirmation modal groups operations by privilege level so you only enter your password once.

All operations work on macOS, Linux, and Windows. Each manager maps to its correct native command automatically.

Supported Package Managers (35)
ManagerPlatformWhat it scansDescriptions
brewmacOS/LinuxInstalled formulaebatch via JSON
pacmanArchExplicit native packagespacman -Qi
AURArchForeign/AUR packagespacman -Qi
aptDebian/UbuntuInstalled packagesapt-cache show
dnfFedora/RHELInstalled packagesdnf info
snapUbuntu/LinuxSnap packagessnap info
pipCross-platformTop-level Python packagespip show
pipxCross-platformIsolated Python CLI tools
cargoCross-platformInstalled Rust binaries
goCross-platformGo binaries in ~/go/bin
npmCross-platformGlobal Node.js packagesnpm info
pnpmCross-platformGlobal pnpm packagespnpm info
bunCross-platformGlobal Bun packages
flatpakLinuxFlatpak applicationsflatpak info
MacPortsmacOSInstalled portsport info
pkgsrcNetBSD/cross-platformInstalled packagespkg_info
opamCross-platformOCaml packagesopam show
gemCross-platformRuby gemsgem info
pkgFreeBSDInstalled packagesinline from scan
composerCross-platformGlobal PHP packagesinline from JSON
masmacOSMac App Store apps
apkAlpine LinuxInstalled packagesapk info
nixNixOS/cross-platformNix profile, nix-env, and NixOS system packagesnix-env -qa
conda/mambaCross-platformConda environments
luarocksCross-platformLua rocksluarocks show
XBPSVoid LinuxInstalled packagesxbps-query
PortageGentooInstalled ebuilds via qlistemerge -s
GuixGNU GuixInstalled packagesguix show
wingetWindowsWindows Package Manager
chocolateyWindowsChocolatey packages (v1 + v2)
scoopWindowsScoop packages
nugetCross-platformNuGet global package cache
powershellCross-platformPowerShell modulesvia scan
mavenCross-platformLocal Maven artifacts in ~/.m2/repository
windows-updatesWindowsPending Windows system updates
  • Managers that aren't installed are silently skipped — no errors, no config needed.
  • Descriptions are fetched in the background and cached for 24 hours.
  • Packages with available updates show a indicator next to their version (checked every 7 days).
  • Press d in the detail view to see full dependency tree for any package.
  • Press h in the detail view to see the package's --help output.
  • Press e in the detail view to add custom descriptions — these persist across sessions and won't be overwritten.
Snapshots & Diffs

GlazePKG can track how your system changes over time:

  1. Snapshot (s) — saves every package name, version, and source to a timestamped JSON file
  2. Diff (d) — compares your current packages against the last snapshot, showing:
    • Added packages (new installs)
    • Removed packages (uninstalls)
    • Upgraded packages (version changes)

Use this to audit what changed after a brew upgrade, track drift across machines, or catch unexpected installs.

Data Storage

All data lives under ~/.local/share/glazepkg/ (respects XDG_DATA_HOME):

DataPathRetention
Scan cachecache/scan.json10 days (auto-refresh)
Description cachecache/descriptions.json24 hours
Update cachecache/updates.json7 days
User notesnotes.jsonPermanent
Snapshotssnapshots/*.jsonPermanent
Exportsexports/*.json or *.txtPermanent

Contributing

Want to add a package manager or fix a bug? Check out CONTRIBUTING.md. Each manager is a single Go file — easy to add.

Built With

Star History

Star History Chart

License

GPL-3.0

SEE ALSO

clihub3/27/2026GLAZEPKG(1)