Artix's dinit stage 1. Adapted from s6-scripts, runit-rc, Chimera Linux, and dinit's own configuration. Since 0.3.0, to manage dependencies better, most services have been reconfigured around new service targets lifted from Chimera Linux to replace the existing mess like "setup", "loginready", or "misc", which by now I can't even make sense of. This is the list of targets, lifted directly from dinit-chimera's README, some differences may apply with our current implementation but the gist should remain the same: * `early-prepare.target` - early pseudo-filesystems have been mounted * `early-modules.target` - kernel modules from `/etc/modules` have been loaded * `early-devices.target` - device events have been processed * This means `/dev` is fully populated with quirks applied and so on. * `early-keyboard.target` - console keymap has been set * This has no effect when `setupcon` from `console-setup` is not available. * `early-fs-pre.target` - filesystems are ready to be checked and mounted * This means encrypted disks, RAID, LVM and so on is up. * `early-root-rw.target` - root filesystem has been re-mounted read/write. * That is, unless `fstab` explicitly specifies it should be read-only. * `early-fs-fstab.target` - non-network filesystems in `fstab` have been mounted * `early-fs-local.target` - non-network filesystems have finished mounting * This includes the above plus non-`fstab` filesystems such as ZFS. * `early-console.target` - follow-up to `early-keyboard.target` (console font, etc.) * This has no effect when `setupcon` from `console-setup` is not available. * `pre-local.target` - most important early oneshots have run. * Temporary/volatile files/dirs managed with `tmpfiles.d` are not guaranteed yet. * Most services should prefer `local.target` as their sentinel. * Typically only for services that should guarantee being up before `rc.local` is run. * All targets above this one are guaranteed to have been reached. * `local.target` - `/etc/rc.local` has run and temp/volatile files/dirs are created * Implies `pre-local.target`. * Most regular services should depend on at least this one (or `pre-local.target`). * `pre-network.target` - networking daemons may start. * This means things such as firewall have been brought up. * `network.target` - networking daemons have started. * Networking daemons should use this as `before`. * Things depending on network being up should use this as a dependency. * `login.target` - the system is ready to run gettys, launch display manager, etc. * Typically to be used as a `before` sentinel for things that must be up before login. * `time-sync.target` - system date/time should be set by now. * Things such as NTP implementations should wait and use this as `before`. * Things requiring date/time to be set should use this as a dependency. * This may take a while, so pre-login services depending on this may stall the boot.
Description
Languages
C
58.6%
Shell
32.7%
Makefile
8.7%