Před pár lety jsem nad initscripty také trochu přemýšlel, ale tehdy mne trápil úplně jiný problém než vyjádření závislostí apod., konkrétně to, že celý systém initscriptů v linuxových distribucích je dosti nepřehledný, musím se dívat poměrně hluboko, abych zjistil, co se vlastne s jakými parametry spustí, a ledva nainstaluji nějakou package, přidá si okamžitě svůj initscript, i když s ní chci třeba jen experimentovat a spouštět si ji jen ručně na požádání. To je pro osoby Linuxu méně znalé samozřejmě velmi příjemné, ale já mám přeci jen raději dokonalý přehled o tom, co se děje.
Z podobných úvah tehdy vzešla potvorka jménem SSS (system startup and shutdown), která namísto shellových scriptů používá jednoduchý céčkový program řízený konfiguračním souborem. Onen konfigurační soubor definuje jednotlivé systémové služby, jejich zařazení do stromové struktury a shellové příkazy pro nahození, shození, reload atd. služby (přičemž na prakticky všechno jsou k dispozici defaulty, takže pro běžného daemonka napíšete jen jeho jméno a SSS si už zbytek domyslí).
Pak si můžete ručně nebo z inittabu nechat spustit či shodit (či reloadnout atd.) nejen jednotlivé služby, ale i celé podstromy (subsystémy) a inittab se pak změní v pravidla říkající, ve kterých runlevelech mají běžet které podstromy.
Dodnes SSS provozuji na několika svých serverech a jsem s nim velmi spokojený, i když dnes bych asi všechno udělal trochu jinak a stále doufám, že se k tomu někdy zase dostanu a dodělám i nějaké package-friendly featurky (hlavně možnost includovat definici podstromu odjinud).
[Také je to velmi příjemné pro různé minimalistické instalace, protože z shellových utilit není potřeba téměř nic a navíc vše bootuje daleko rychleji.]
Production quality code to zrovna není (stabilní by to bylo, což o to, ale dokumentace je pomálu), ale kdybyste si chtěli pohrát (nebo se aspoň podívat, jak takový config file může vypadat), najdete všechno potřebné na ftp://atrey.karlin.mff.cuni.cz/pub/local/mj/linux/sss-0.0.0.tar.gz