PKGFILED(1)

πŸ“¦ version 27, in arch rolling

πŸ’… PKGFILED(1) β€” the pkgfiled girlies' manual ✨

okay so this is the pkgfiled page from the pkgfiled manual, and honestly? she's a tiny little icon and she deserves your attention πŸŽ€


🌸 NAME 🌸

pkgfiled β€” the babe that automatically syncs your pacman .files DBs over to the pkgfile cache πŸ¦‹


✨ SYNOPSIS ✨

Usage: pkgfiled [options] pacman_dbpath pkgfile_cache

🫢 DESCRIPTION 🫢

pkgfiled is a tiny daemon β€” like, genuinely tiny, she's not doing the most β€” whose whole job is watching for changes to pacman(8)'s .files databases and repackaging them so pkgfile can eat them. the result? data stays in sync between pacman and pkgfile. no cap, that's the whole vibe check πŸ’–

calling pkgfiled needs two arguments, bestie: a source directory to read the pacman database files from (typically under /var/lib/pacman/sync), and a destination directory that pkgfile will read from (typically /var/cache/pkgfile). and yes there's a systemd unit that handles daemon management for you so you don't have to ✨

here's the part that's giving main character energy: pkgfiled reads the set of enabled repositories from pacman's configuration file (peep --config) and only repackages databases for those repos. databases for repos that aren't enabled? ignored. not invited to the party πŸ™ˆ

on startup, pkgfiled compares what's in the pacman database against the pkgfile cache and catches up on anything that's out of sync. after that, she literally only wakes up when something changes in the pacman database. lowkey the ideal coworker πŸ’…

oh and she also watches the pacman configuration file. when that changes, pkgfiled re-reads the enabled repositories, removes cached databases for repos that are no longer enabled, and syncs the databases for the newly enabled ones. she keeps up, fr fr 🌈


πŸ”₯ OPTIONS πŸ”₯

  • -C, --config FILE β€” read the enabled repositories from the pacman configuration file FILE instead of the default of /etc/pacman.conf. πŸŽ€
  • -f, --force β€” on the initial sync, ignore timestamp comparisons and rewrite all the databases it finds. no thoughts, just rewrite πŸ’€
  • -o, --oneshot β€” dip out after pkgfiled's initial sync instead of sticking around listening for changes. one and done, periodt πŸ‘‘
  • -h, --help β€” print help and exit 🫢
  • -V, --version β€” print the version and exit ⭐

πŸ’œ SIGNALS πŸ’œ

  • SIGINT, SIGTERM β€” when run interactively, pkgfiled will gracefully shut down on receipt of SIGINT. otherwise, SIGTERM is the one used to indicate a graceful shutdown. she leaves politely, always 🧚
  • SIGUSR1, SIGUSR2 β€” upon receipt of these signals, pkgfiled will rescan the pacman database directory for changes and update as needed. but heads up: unlike SIGUSR1, SIGUSR2 will ignore timestamp checks and rewrite all the databases it finds. same energy as --force, just via signal πŸ“‘
ngl bestie, that SIGUSR2 one is the "you sure?" button β€” it rewrites everything it finds, timestamps not invited 😭

πŸ¦‹ SEE ALSO πŸ¦‹

pkgfile(8) β€” go say hi, she's the whole reason this daemon exists πŸ’–


🌟 AUTHOR 🌟

Dave Reisner <d@falconindy.com<gt> πŸ‘‘


and that's the page, babe πŸ’… β€” this was pkgfiled, version 27, dated 2026-10-24, straight from the pkgfiled Manual. now go sync something, you're gonna slay βœ¨πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from