Checkpac – Fast Unified Search for Arch Packages
Posted4 months ago
github.comTechstory
supportivepositive
Debate
20/100
Arch LinuxPackage ManagementOpen-Source
Key topics
Arch Linux
Package Management
Open-Source
A developer shares checkpac, a tool for unified search of Arch Linux packages, addressing fragmentation issues.
Snapshot generated from the HN discussion
Discussion Activity
Light discussionFirst comment
N/A
Peak period
1
Start
Avg / period
1
Key moments
- 01Story posted
Sep 10, 2025 at 1:13 AM EDT
4 months ago
Step 01 - 02First comment
Sep 10, 2025 at 1:13 AM EDT
0s after posting
Step 02 - 03Peak activity
1 comments in Start
Hottest window of the conversation
Step 03 - 04Latest activity
Sep 10, 2025 at 1:13 AM EDT
4 months ago
Step 04
Generating AI Summary...
Analyzing up to 500 comments to identify key contributors and discussion patterns
ID: 45193589Type: storyLast synced: 11/17/2025, 6:10:09 PM
Want the full context?
Jump to the original sources
Read the primary article or dive into the live Hacker News thread when you're ready.
There's no simple way to answer "show me everything about packages matching X" without juggling multiple tools. What checkpac does: One command gives you everything, clearly categorized. Run "checkpac firefox" to see what you have installed with update status. Add -r like "checkpac -r wine" to also see what's available to install. Use -d to search descriptions like "checkpac -rd compression". The terminal output is designed to be instantly readable. Green checkmarks for installed packages, red X's for not installed. Package names are color-coded by source (red for core, green for extra, cyan for multilib, yellow for AUR). Version numbers appear in cyan. Most importantly, outdated packages get a yellow warning triangle with an update arrow showing "v1.2.3 → v1.2.4" so you can immediately spot what needs updating. Each package shows its description in dim text for context.
It separates and organizes results by source and status: Official Installed (packages from core/extra/multilib with update status), AUR Installed (your AUR packages also with update checks), Official Available (what's in the repos you could install, shown with -r), and AUR Available (what's in the AUR you could grab, also shown with -r).
Every package shows its version number and checkpac actually compares your installed versions against the remote repositories in real-time - not just cached data. The color highlighting and visual indicators make it obvious at a glance what's installed, what's outdated, and what's available. No more parsing walls of text or guessing package states.
The technical approach: Uses bash associative arrays (hashmaps) for O(1) package lookups instead of searching through lists repeatedly. One expac call grabs all package metadata upfront rather than querying repeatedly. Caches everything in memory to avoid repeated disk hits. Makes parallel AUR API calls when checking for updates against live AUR data. The whole thing is about 400 lines of bash plus expac, curl, and jq.
Other useful features: The -e flag for exact name matches only. Use --exclude-aur or --exclude-arch if you want to filter by source. Handles both installed and available packages in a single search. Shows real-time update status for everything including AUR packages by checking against remote sources. Get it from GitHub at https://github.com/zeroz41/checkpac or install from the AUR at https://aur.archlinux.org/packages/checkpac