diff options
| -rw-r--r-- | doc/bin/system-init.html | 74 | ||||
| -rw-r--r-- | doc/bin/system-shutdown.html | 54 | ||||
| -rw-r--r-- | doc/index.html | 192 | ||||
| -rw-r--r-- | doc/service/system/.s6-svscan.html | 38 | ||||
| -rw-r--r-- | doc/service/system/s6-linux-init-runleveld.html | 39 | ||||
| -rw-r--r-- | doc/service/system/s6-linux-init-shutdownd.html | 33 |
6 files changed, 430 insertions, 0 deletions
diff --git a/doc/bin/system-init.html b/doc/bin/system-init.html new file mode 100644 index 0000000..e0f1812 --- /dev/null +++ b/doc/bin/system-init.html @@ -0,0 +1,74 @@ +<!DOCTYPE html> +<html> + <head> + <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + <meta http-equiv="Content-Language" content="en" /> + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + <title>system-init</title> + <meta name="Description" content="A wrapper around s6-linux-init to start it with the correct options for goetia." /> + <meta name="Keywords" content="goetia s6 s6-rc s6-linux-init Linux init" /> + </head> + <header> + <p> + <a href="//0x53.net/software/goetia/goetia-s6-linux-init">goetia-s6-linux-init</a> + <br /> + <a href="//0x53.net/software/goetia">goetia</a> + <br /> + <a href="//0x53.net/software">Software</a> + <br /> + <a href="//0x53.net">0x53.net</a> + </p> + </header> + <body> + <h1>The system-init program</h1> + <p> + system-init is a wrapper around + <a href="https://skarnet.org/software/s6-linux-init/s6-linux-init.html">s6-linux-init</a>. + </p> + <h2>Interface</h2> + <pre> system-init</pre> + <ul> + <li> + system-init takes no arguments. + </li> + <li> It executes s6-linux-init with proper arguments to: + <ul> + <li> + Use the umask <code>0022</code>. + </li> + <li> + Use the config at <code>/etc/s6-linux-init/goetia</code> + </li> + <li> + Use the <code>PATH</code> environment variable set to + <code>/command:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/libexec:/usr/local/libexec</code>. + </li> + </ul> + </li> + </ul> + <h2>Exit codes</h2> + <ul> + <li> + system-init does nothing more than starting + <a href="https://skarnet.org/software/s6-linux-init/s6-linux-init.html">s6-linux-init</a> + with arguments + and behaves exactly like it. + </li> + <li> + See also: + <a href="https://skarnet.org/software/execline/exitcodes.html">execline exit code handling</a>. + </li> + </ul> + <h2>Options</h2> + <ul> + <li> + There are no options to system-init. + </li> + </ul> + <h2>Notes</h2> + <p> + system-init is primarily intended to be used + as an init for an acutal boot process, not for containers. + </p> + </body> +</html> diff --git a/doc/bin/system-shutdown.html b/doc/bin/system-shutdown.html new file mode 100644 index 0000000..ae0904e --- /dev/null +++ b/doc/bin/system-shutdown.html @@ -0,0 +1,54 @@ +<!DOCTYPE html> +<html> + <head> + <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + <meta http-equiv="Content-Language" content="en" /> + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + <title>system-shutdown</title> + <meta name="Description" content="Convenience wrapper around s6-linux-init-shutdown." /> + <meta name="Keywords" content="goetia s6 s6-rc s6-linux-init Linux shutdown" /> + </head> + <header> + <p> + <a href="//0x53.net/software/goetia/goetia-s6-linux-init">goetia-s6-linux-init</a> + <br /> + <a href="//0x53.net/software/goetia">goetia</a> + <br /> + <a href="//0x53.net/software">Software</a> + <br /> + <a href="//0x53.net">0x53.net</a> + </p> + </header> + <body> + <h1>The system-shutdown program</h1> + <p> + system-shutdown is a wrapper around + <a href="https://skarnet.org/software/s6-linux-init/s6-linux-init-shutdown.html">s6-linux-init-shutdown</a>. + </p> + <h2>Interface</h2> + <pre> system-shutdown ... <a href="https://skarnet.org/software/s6-linux-init/s6-linux-init-shutdown.html">see s6-linux-init-shutdown</a> ...</pre> + <ul> + <li> + <a href="https://skarnet.org/software/s6-linux-init/s6-linux-init-shutdown.html">see s6-linux-init-shutdown</a> + </li> + </ul> + <h2>Options</h2> + <ul> + <li> + <a href="https://skarnet.org/software/s6-linux-init/s6-linux-init-shutdown.html">see s6-linux-init-shutdown</a> + </li> + </ul> + <h2>Exit codes</h2> + <ul> + <li> + system-shutdown is a wrapper around + <a href="https://skarnet.org/software/s6-linux-init/s6-linux-init-shutdown.html">see s6-linux-init-shutdown</a> + and behaves exactly like it. + </li> + <li> + See also: + <a href="https://skarnet.org/software/execline/exitcodes.html">execline exit code handling</a>. + </li> + </ul> + </body> +</html> diff --git a/doc/index.html b/doc/index.html new file mode 100644 index 0000000..81e4e34 --- /dev/null +++ b/doc/index.html @@ -0,0 +1,192 @@ +<!DOCTYPE html> +<html> + <head> + <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + <meta http-equiv="Content-Language" content="en" /> + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + <title>goetia-s6-linux-init</title> + <meta name="Description" content="goetia-s6-linux-init contains scripts and a configuration to run goetia using s6-linux-init." /> + <meta name="Keywords" content="goetia s6 s6-rc s6-linux-init Linux init shutdown" /> + </head> + <header> + <p> + <a href="//0x53.net/software/goetia">goetia</a> + <br /> + <a href="//0x53.net/software">Software</a> + <br /> + <a href="//0x53.net">0x53.net</a> + </p> + </header> + <body> + <h1>goetia-s6-linux-init</h1> + <h2>What is it?</h2> + <p> + goetia-s6-linux-init contains a configuration for + <a href="https://skarnet.org/software/s6-linux-init/">s6-linux-init</a>. + It also contains wrappers around some of s6-linux-inits commands + to make them fit the rest of goetia. + Finally, it contains service directories for some + s6-linux-init specific daemons. + </p> + <p> + The configuration is used by copying + the <code>s6-linux-init</code> directory in the + <a href="//0x53.net/software/goetia/installdir.html">installation directory</a> + to <code>/etc/s6-linux-init/goetia</code>, + <em>renaming</em> the directory in the process. + </p> + <p> + It is <em>critical</em>, + that some arguments given to <code>./configure</code> + during the installation of + <a href="https://skarnet.org/software/s6-linux-init/">s6-linux-init</a> + match those used in the goetia packages. + These are: + </p> + <ul> + <li> + <code>--tmpfsdir=...</code> which must be the same + in both the goetia packages and the s6-linux-init package. + The default is in both cases the same and can be left unchanged. + However, a change of this option in e.g. + <a href="//0x53.net/software/goetia/goetia-base">goetia-base</a> + mandates the exact same change of this option in s6-linux-init + and vice versa. + </li> + <li> + <code>--scandir=...</code> of s6-linux-init + which must match + <code>--sysrundir=...</code> in goetia. + This is by default <em>not</em> given. + If the default of goetia packages is kept, + <code>--scandir=system/service</code> has to be used + for s6-linux-init. + In general setting <code>--sysrundir=<var>@sysrundir@</var></code> on + goetia packages means having to set + <code>--scandir=<var>@sysrundir@</var>/service</code> + on s6-linux-init. + </li> + </ul> + <p> + Additionally two things in respect to the + <code>run-image</code> subdirectory of the + <a href="//0x53.net/software/goetia/confdir.html#system">system configuration directory</a> + change <em>for system supervision trees only</em>. + </p> + <ul> + <li> + The <code>run-image</code> subdirectory lies now at + <code>/etc/s6-linux-init/goetia/run-image</code> + instead of + <code><var>@sysconfdir@</var>/system/run-image</code>. + </li> + <li> + When using s6-linux-init, the <code>run-image</code> is now + copied to <code><var>@tmpfsdir@</var></code> instead of + <code><var>@tmpfsdir@</var>/<var>@sysrundir@</var>/system</code>. + This has to be accomodated for by adding an additional <code>system</code> + subdirectory between the <code>run-image</code> and the <code>service</code> + directory. + To make it more clear: this results in: + <code>/etc/s6-linux-init/goetia/run-image/system/service/</code> + instead of + <code>/etc/goetia/system/run-image/service/</code> + with goetia-linux-init. + Bear in mind that this has to be further corrected for every non standard + <code>--sysrundir=...</code> setting in the goetia packages. + </li> + </ul> + <p> + If all defaults are kept on the other geotia packages, + this means the following in practice: + </p> + <ul> + <li> + During the installation of s6-linux-init, run at least <code>./configure --scandir=system/service</code>. + </li> + <li> + Symlink or copy + <a href="https://skarnet.org/software/s6/servicedir.html">service directories</a> + to <code>/etc/s6-linux-init/goetia/run-image/system/service/</code>. + </li> + </ul> + <hr> + <h2>Installation</h2> + <h3>Requirements</h3> + <ul> + <li> + A set of POSIX tools as described in the general + <a href="//0x53.net/software/requirements.html">requirements</a> + </li> + <li> + A POSIX-compliant implementation of make, or GNU make + </li> + <li> + <a href="https://skarnet.org/software/s6-linux-init/">s6-linux-init</a> + </li> + </ul> + <h3>Licensing</h3> + <p> + goetia-s6-linux-init is free software. It is available under the + <a href="https://opensource.org/licenses/ISC">ISC license</a>. + </p> + <h3>Download</h3> + <ul> + <!-- + <li> + The current released version of goetia-s6-linux-init is + <a href="./goetia-s6-linux-init-0.0.1.0.tar.gz">0.0.1.0</a>. + You can access its checksum + <a href="./goetia-s6-linux-init-0.0.1.0.tar.gz.sha256">here</a>. + </li> + --> + <li> + Alternatively, you can checkout a copy of the + <a href="https://git.0x53.net/goetia-s6-linux-init">goetia-s6-linux-init git repository</a>: + <pre>git clone git://git.0x53.net/goetia-s6-linux-init</pre> + </li> + </ul> + <h3>Compilation</h3> + <ul> + <li> + See the enclosed INSTALL file for installation details. + </li> + </ul> + <hr> + <h2>Reference</h2> + <section id="bin"> + <h3>Commands</h3> + <p> + All of the following are + <a href="https://skarnet.org/software/execline/">execline</a> + scripts. + </p> + <ul> + <li> + <a href="./bin/system-init.html">system-init</a> + </li> + <li> + <a href="./bin/system-shutdown.html">system-shutdown</a> + </li> + </ul> + </section> + <section id="service"> + <h3>Service directories</h3> + <p> + Service directories specific to the Linux Kernel + and to this init system. + </p> + <ul> + <li> + <a href="./service/system/.s6-svscan.html">.s6-svscan</a> + </li> + <li> + <a href="./service/system/s6-linux-init-runleveld.html">s6-linux-init-runleveld</a> + </li> + <li> + <a href="./service/system/s6-linux-init-shutdownd.html">s6-linux-init-shutdownd</a> + </li> + </ul> + </section> + </body> +</html> diff --git a/doc/service/system/.s6-svscan.html b/doc/service/system/.s6-svscan.html new file mode 100644 index 0000000..cc9651e --- /dev/null +++ b/doc/service/system/.s6-svscan.html @@ -0,0 +1,38 @@ +<!DOCTYPE html> +<html> + <head> + <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + <meta http-equiv="Content-Language" content="en" /> + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + <title>system .s6-svscan</title> + <meta name="Description" content="Configuration directory for s6-svscan for the system supervision tree" /> + <meta name="Keywords" content="goetia s6 s6-svscan system supervision tree" /> + </head> + <header> + <p> + <a href="//0x53.net/software/goetia/goetia-s6-linux-init">goetia-s6-linux-init</a> + <br /> + <a href="//0x53.net/software/goetia">goetia</a> + <br /> + <a href="//0x53.net/software">Software</a> + <br /> + <a href="//0x53.net">0x53.net</a> + </p> + </header> + <body> + <h1>The system .s6-svscan directory</h1> + <p> + The .s6-svscan directory contains scripts + that are executed if + <a href="https://skarnet.org/software/s6/s6-svscan.html">s6-svscan</a> + receives a signal or exits. + In this case its main use is to properly shutdown + the system using <code>system-shutdown</code> + upon receiving certain signals. + </p> + <p> + The .s6-svscan directory is easily overlooked, + do not forget to symlink/copy it! + </p> + </body> +</html> diff --git a/doc/service/system/s6-linux-init-runleveld.html b/doc/service/system/s6-linux-init-runleveld.html new file mode 100644 index 0000000..bf3c287 --- /dev/null +++ b/doc/service/system/s6-linux-init-runleveld.html @@ -0,0 +1,39 @@ +<!DOCTYPE html> +<html> + <head> + <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + <meta http-equiv="Content-Language" content="en" /> + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + <title>s6-linux-init-runleveld</title> + <meta name="Description" content="System service allowing to run s6-rc invocations of the system supervision tree." /> + <meta name="Keywords" content="goetia s6 s6-rc s6-linux-init Linux run system supervision tree" /> + </head> + <header> + <p> + <a href="//0x53.net/software/goetia/goetia-s6-linux-init">goetia-s6-linux-init</a> + <br /> + <a href="//0x53.net/software/goetia">goetia</a> + <br /> + <a href="//0x53.net/software">Software</a> + <br /> + <a href="//0x53.net">0x53.net</a> + </p> + </header> + <body> + <h1>The s6-linux-init-runleveld service</h1> + <p> + s6-linux-init-runleveld starts the daemon corresponding to + <a href="https://skarnet.org/software/s6-linux-init/s6-linux-init-telinit.html">s6-linux-init-telinit</a>. + It is very similar to + <a href="//0x53.net/software/goetia/goetia-base/service/system/goetia-runner.html">goetia-runner</a> + (which corresponds to <a href="//0x53.net/software/goetia/goetia-base/bin/system-run.html">system-run</a>). + s6-linux-init-runleveld can be used to start and stop bundles + (bundles replace a functionality historically called runlevels) + and have the corresponding + <a href="https://skarnet.org/software/s6-rc/s6-rc.html">s6-rc</a> + command executed <em>from the supervision tree</em>. + This makes the transition resilient to e.g. interface crashes + or the command itself stopping the interface it was executed from. + </p> + </body> +</html> diff --git a/doc/service/system/s6-linux-init-shutdownd.html b/doc/service/system/s6-linux-init-shutdownd.html new file mode 100644 index 0000000..e198bb7 --- /dev/null +++ b/doc/service/system/s6-linux-init-shutdownd.html @@ -0,0 +1,33 @@ +<!DOCTYPE html> +<html> + <head> + <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + <meta http-equiv="Content-Language" content="en" /> + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + <title>s6-linux-init-shutdownd</title> + <meta name="Description" content="System service to start the s6-linux-init-shutdownd daemon." /> + <meta name="Keywords" content="goetia s6 s6-rc s6-linux-init Linux shutdown system supervision tree" /> + </head> + <header> + <p> + <a href="//0x53.net/software/goetia/goetia-s6-linux-init">goetia-s6-linux-init</a> + <br /> + <a href="//0x53.net/software/goetia">goetia</a> + <br /> + <a href="//0x53.net/software">Software</a> + <br /> + <a href="//0x53.net">0x53.net</a> + </p> + </header> + <body> + <h1>The s6-linux-init-shutdownd service</h1> + <p> + s6-linux-init-shutdownd is the service that starts + <a href="https://skarnet.org/software/s6-linux-init/s6-linux-init-shutdownd.html">s6-linux-init-shutdownd</a>. + This daemon, upon activation by + <a href="https://skarnet.org/software/s6-linux-init/s6-linux-init-shutdown.html">s6-linux-init-shutdown</a> + (in goetia wrapped by <a href="//0x53.net/software/goetia/goetia-s6-linux-init/bin/system-shutdown.html">system-shutdown</a>), + runs the shutdown procedure. + </p> + </body> +</html> |
