install_packages(8)

πŸ“¦
version 6.6ubuntu1 Β· 3 versions
, in ubuntu stonking

✨ install_packages β€” the FAI package wrangler ✨

okay bestie, listen up πŸ’– this is install_packages, and it lives in the System Manager's Manual section of the manual pages (section 8, the sysadmin corner, iykyk). she's a Perl script, she's booked and busy, and she does NOT want you calling her directly.


πŸŽ€ NAME πŸŽ€

install_packages β€” install FAI configured packages. that's the whole job description bestie, and she ate πŸ’…


🌸 SYNOPSIS 🌸

install_packages

that's it. no arguments. no flags required. she's a no-args queen πŸ‘‘


πŸ¦‹ DESCRIPTION πŸ¦‹

okay so real talk: this command is only ever called internally by FAI. it is not for you to run by hand, bestie, no cap. FAI calls her, you don't. periodt.

install_packages is a Perl script written for FAI, and her whole thing is selectively installing, holding, removing, or purging packages or tasks. like, she's picky, it's a lifestyle πŸ’…

her function? she parses the package_config files based on the class definitions of the client. so for example β€” and I'm literally quoting the vibe here β€” if the client belonged to the SMTPSERVER class, then install_packages would parse ../package_config/SMTPSERVER for instructions on what packages to install, hold, remove, or purge. iconic behavior honestly ✨


πŸ’… OPTIONS πŸ’…

the full menu, no skips, we don't gatekeep here 🫢

  • -c β€” check the list of packages to see if they're actually known, then dip out and exit. ⚠️ heads up: this only works for deb packages, so if that's not your format she can't help you 😭
  • -d β€” only download the packages, don't install them. and bestie, the variable $aptoptions must be set, or this whole plan falls apart πŸ™ˆ
  • -h β€” show help, version, and a lil summary of all the options. the friendly one πŸ₯°
  • -G β€” Generic mode ✨ use this when install_packages gets called by fai-mirror (using -IG) to create a generic package mirror for different combinations of the class list. this option ignores the logical not operator on PACKAGES lines, and it also ignores packages with the suffix - (like packagename-). and it only makes sense in download mode, so don't be chaotic with it fr fr πŸ’€
  • -H β€” show the list of all available commands for the file in package_config. the whole menu, chef's kiss πŸ‘‘
  • -l β€” print only the list of all packages that would be installed, then exit. a preview, a peek, a little trailer 🌸
  • -L β€” same energy as above but with version numbers: prints the list of all packages that would be installed, versions included, then exits. she's thorough πŸ’–
  • -m MAX β€” install only MAX packages at a time. this is the same as setting the shell environment variable MAXPACKAGES. pacing herself, we love a girl who doesn't burn out 🧚
  • -n β€” dry run! do not execute installation commands, just print them. a little dress rehearsal, no consequences πŸŽ€
  • -N β€” do not check whether package names are valid, and remove unknown packages from the list. you can also just set the variable FAI_DISABLE_PACKAGE_NAME_CHECK to 1. living dangerously, we support it 🫢
  • -P β€” print the URIs of all packages that need downloading. only useful when you're also using -d, so pair them up, they're a duo πŸ’œ
  • -p DIRECTORY β€” read the configuration files from DIRECTORY instead of $FAI/packages_config. pick your own adventure πŸ“
  • -s β€” download the source of binary packages that are installed. currently supported only for apt-get/aptitude based installations, so check your setup first ⭐
  • -v β€” be verbose. tell me everything bestie, I want the tea β˜•

πŸ“ NOTES πŸ“

install_packages expects to find the FAI_ROOT directory somewhere in the filesystem β€” that's where the class definitions, package configurations, and custom install scripts all live. so if things go weird, that's your first vibe check πŸ”


πŸ‘€ SEE ALSO πŸ‘€

  • apt(1)
  • aptitude(8)
  • apt-get(8)
  • dpkg(8)
  • tasksel(1)

this program is part of FAI (Fully Automatic Installation) 🌈 check the FAI manual for more on how to use install_packages, bestie. the FAI homepage is https://fai-project.org β€” go look, it's giving resources πŸ’–


πŸ—‚οΈ FILES πŸ—‚οΈ

  • /srv/fai/config/package_config/ β€” the FAI package configuration directory. this is home 🏠

πŸ‘‘ AUTHOR πŸ‘‘

Thomas Lange <lange@cs.uni-koeln.de> β€” the legend, the moment, the main character πŸ’œ


and that's the whole page, bestie!! ✨ this was FAI 6.5, dated January 2026, and it belongs to install_packages(8) in the System Manager's Manual. slay, go forth, and let FAI call her for you πŸŽ€πŸ¦‹πŸ’…

πŸ“¦ where this page comes from