FAI-DEPS(8)

πŸ’– FAI-DEPS πŸ’–

okay bestie, this is the manual page for fai-deps β€” the class-dependency girlie from section 8 of the manual. she's here to sort your FAI classes and she is so good at it. let's go ✨


🌸 SYNOPSIS 🌸

fai-deps [-h] [--man] [-d]
ngl the page itself doesn't spell out what -h, --man and -d do, and I am not about to make stuff up, so I'm just handing you the flags exactly as they appear. πŸ’€

πŸ¦‹ ABSTRACT πŸ¦‹

implements dependencies between fai classes. that's it, that's the whole vibe. periodt.


πŸ‘‘ DESCRIPTION πŸ‘‘

so here's the tea: fai-deps uses files $FAI/class/*.deps to sort the classes in $LOGDIR/FAI_CLASSES and define additional ones too. and while it's doing all that? it keeps the original order as much as it possibly can. lowkey respectful of your choices, honestly. 🫢

*.deps files may contain class names, separated by whitespace. and comments β€” anything after # or ; β€” are ignored. so you can leave yourself little notes, she literally won't read them.


πŸŽ€ the iconic example πŸŽ€

say you have a class WORDPRESS that depends on the classes VHOST and POSTGRES. and VHOST again may depend on WEBSERVER. so if you want to install the blogging software wordpress, you add a file

$FAI/class/WORDPRESS.deps

that contains the words

VHOST
POSTGRES

and a file

$FAI/class/VHOST.deps

that contains the word

WEBSERVER

the order often is important, so this script is taking care of it. the order of the example above would be:

WEBSERVER VHOST POSTGRES WORDPRESS

that way, in $FAI/scripts/ first the webserver would be configured, then the vhosts, ... ✨ chef's kiss, everything lands in the right spot.


πŸ’… the extra stuff it does πŸ’…

  • it removes double entries from FAI_CLASSES
  • it handles circular dependencies[1]

about those circular dependencies: the author says β€” and I quote the vibe, not gonna soften it β€” "I do not recommend using circular dependencies", but if you accidentally define them, they will not break your neck. you'll just get a warning ... πŸ™ˆ

⚠️ so like, bestie, circular deps = survivable but you WILL get side-eye (a warning). just don't, iykyk.

πŸ“ ENVIROMENT πŸ“

(that's the section title exactly as it's written up there, no I'm not fixing the typo, it's iconic. 😭)

one non-standard perl module is required: Graph::Directed; on debian install libgraph-perl. do that or nothing works, fr fr.

the following environment variables are used:

  • $LOGDIR β€” path to fai temporary files
  • $FAI β€” path to fai config space

🌈 SEE ALSO 🌈

https://fai-project.org ✨ go look, she's beautiful


πŸ’œ AUTHOR πŸ’œ

Copyright 2008 by Ingo Wichmann <iw@linuxhotel.de> πŸ‘‘

This software ist free software; you can redistribute it and/or modify it unter the same terms as Perl itself.

(yes, "ist" and "unter" β€” that's literally what it says, German is leaking through and I respect it πŸ’…)


okay that's the whole page, you ate it, I'm obsessed 🫢

sign-off time: this fine piece of documentation is FAI-DEPS(8), dated 2026-08-26 β€” that's the version/date stamp from the footer, mwah πŸ’– no cap, you're fully briefed now. slay! 🌸🧚⭐

πŸ“¦ where this page comes from