Hello I’m sharing tiny article to understand the cons & pros about arch linux package manager /Pacman/
it’s written by Judd Vinet (Y) 2002
and today it’s been used by hundred of thousands of linux users
known for it’s speed and versatility man pacman
it has smart cli arg blending via || getopt_long || function^
new arch user often do -syu after each new package fearing system breakage
It’s right way to avoid ABI error ,or, partial upgrade
the darkness behind this pm that it destroy the lifespan of old HDD’s
because it ask the kernel for open() request for it’s old local DB style
unlike dnf that use /sqlite3/ for packages database
pacman use old human-readable method each package has 3 files once you sync
it check for conflation doing thousands of open()close() request,
inside /var/lib/pacman/local the pacman DB
it also use gzip mtree style to compress packages information such as hashes
everything about pacman is great for me but it’s I/O hunger
they often upgrade and do nice optimization , adding newest technology for compression and synchronization & for me I find pacman the best to automate config and get fixed among other pm’s & it’s easy to understand
the year is 2026 and pacman isn’t the fastest anymore and not the smartest
dnf (fedora) and zipper (openSUSE) use libsolv best for io
xbps (voidlinux) has it’s own fast implementation each pacmage has single metadata Indexes
I’m willing to write another article soon on how to use pacman professionally
Thanks for reading, &I hope you learn something new.
You’re right about the local DB design. The /var/lib/pacman/local layout does mean more filesystem hits vs. something like SQLite. On SSD it’s basically a non-issue, but yeah, older HDDs would feel it.
I donno about “not the fastest anymore” though. I had recent interaction with it last night and boy is it still fast!
I guess it depends on what you’re measuring. Pacman is still very fast at install/remove.
Won’t be able to match dnf/zypper with dependency solving, but that’s just one part of it. xbps is definitely quick, thats fair.
I’ve 1649 packages installed for pacman to finish checking for conflicted ones it tooks 8 - 12 second
everything else runs smooth but the IO is bottleneck
pacman hurting my HDD performance with that flat file database,
& yeah benchmark with nowaday 1776268112 would be different
other package manager shifted way better than before.