Pacman is one of the fastest linux package manager but it has one problem makes it slow and annoying and itโs the local package database
We talked about it here ![]()
Im working on new pacman fork still alpha 12% on progress that nuke this problem
Entirely and replace it with Lightning Memory-Mapped Database file
[ pacman CLI ]
โ
โผ
[ libalpm public API ]
โ
โผ
[ be_local.c (Filesystem Driver) ]
โโโ /var/lib/pacman/local/
โ โโโ git-2.45.0-1/
โ โ โโโ desc (Plain text file)
โ โ โโโ files (Plain text file)
โ โ โโโ depends (Plain text file)
โ โโโ gcc-14.1.0-1/
โ โ โโโ desc
โ โ โโโ ...
โ โโโ [ Thousands of other package directories... ]
โ
โผ
[ OS VFS / Disk Inode Traversal (High I/O Overhead) ]
Optimized new Memory-Mapped LMDB database
[ pacman++ CLI ]
โ
โผ
[ libalpm public API (C++20) ]
โ
โผ
[ be_local.cc (LMDB Storage Driver) ]
โ
โผ
[ /var/lib/pacman/local.mdb (Single File Container) ]
โโโ B+Tree Root: Package Metadata Index
โโโ B+Tree Root: File Ownership Index (-Qo)
โโโ B+Tree Root: Provides / Conflicts Index
โ
โผ
[ OS Kernel mmap() / Page Cache (Zero-Copy RAM Pointers) ]
