aboutsummaryrefslogtreecommitdiffstats
path: root/doc/index.html
diff options
context:
space:
mode:
authorPS <p@0x53.net>2026-02-07 10:20:30 +0100
committerPS <p@0x53.net>2026-02-07 10:20:30 +0100
commit5e95d487982b9362b544139b98d1da55fa6ef78c (patch)
tree1abf6d91f9e6d0b6d0ac7b7d759663f2531eb51b /doc/index.html
parentf7df2f7bb6abbea365cccb1345dcf1a1b7a80797 (diff)
downloadgoetia-base-5e95d487982b9362b544139b98d1da55fa6ef78c.tar.gz
goetia-base-5e95d487982b9362b544139b98d1da55fa6ef78c.tar.bz2
goetia-base-5e95d487982b9362b544139b98d1da55fa6ef78c.zip
Add doc
Diffstat (limited to 'doc/index.html')
-rw-r--r--doc/index.html413
1 files changed, 413 insertions, 0 deletions
diff --git a/doc/index.html b/doc/index.html
new file mode 100644
index 0000000..fe07e2b
--- /dev/null
+++ b/doc/index.html
@@ -0,0 +1,413 @@
+<!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-base</title>
+ <meta name="Description" content="goetia-base contains kernel independent basic building blocks of goetia." />
+ <meta name="Keywords" content="goetia base" />
+ </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-base</h1>
+ <h2>What is it?</h2>
+ <p>
+ goetia-base contains scripts to manage
+ <a href="//0x53.net/software/goetia/supervisiontree.html#system">system</a>.
+ and
+ <a href="//0x53.net/software/goetia/supervisiontree.html#user">system supervision trees</a>.
+ Additionally, it contains kernel independant
+ <a href="https://skarnet.org/software/s6/servicedir.html">service directories</a>
+ and
+ <a href="https://skarnet.org/software/s6-rc/s6-rc-compile.html#source">source directories</a>
+ for the system and user supervision tree.
+ </p>
+ <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>
+ Additional per-service dependencies,
+ e.g. the daemon itself the service corresponds to,
+ are listed on the respective page of the service.
+ </li>
+ </ul>
+ <h3>Licensing</h3>
+ <p>
+ goetia-base 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-base is
+ <a href="./goetia-base-0.0.1.0.tar.gz">0.0.1.0</a>.
+ You can access its checksum
+ <a href="./goetia-base-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-base">goetia-base git repository</a>:
+ <pre>git clone git://git.0x53.net/goetia-base</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.
+ Most of these commands are thin wrappers
+ around tools from
+ <a href="https://skarnet.org/software/s6/">s6</a>
+ and
+ <a href="https://skarnet.org/software/s6-rc/">s6-rc</a>.
+ They do not do much more than supplement the former
+ with the right paths and default options.
+ The utility scripts, however,
+ contain their own logic that is used
+ in some of the other scripts.
+ </p>
+ <h4>Managing system supervision trees</h4>
+ <ul>
+ <li>
+ <a href="./bin/system-db.html">system-db</a>
+ </li>
+ <li>
+ <a href="./bin/system-ml.html">system-ml</a>
+ </li>
+ <li>
+ <a href="./bin/system-rc.html">system-rc</a>
+ </li>
+ <li>
+ <a href="./bin/system-run.html">system-run</a>
+ </li>
+ </ul>
+ <h4>Managing user supervision trees</h4>
+ <ul>
+ <li>
+ <a href="./bin/user-db.html">user-db</a>
+ </li>
+ <li>
+ <a href="./bin/user-ml.html">user-ml</a>
+ </li>
+ <li>
+ <a href="./bin/user-rc.html">user-rc</a>
+ </li>
+ <li>
+ <a href="./bin/user-run.html">user-run</a>
+ </li>
+ <li>
+ <a href="./bin/user-init.html">user-init</a>
+ </li>
+ <li>
+ <a href="./bin/user-shutdown.html">user-shutdown</a>
+ </li>
+ <li>
+ <a href="./bin/user-tmpfs.html">user-tmpfs</a>
+ </li>
+ </ul>
+ <h4>Utility scripts</h4>
+ <ul>
+ <li>
+ <a href="./bin/compile-db.html">compile-db</a>
+ </li>
+ <li>
+ <a href="./bin/longrun-make.html">longrun-make</a>
+ </li>
+ <li>
+ <a href="./bin/oneshot-make.html">oneshot-make</a>
+ </li>
+ <li>
+ <a href="./bin/prepare-svscan.html">prepare-svscan</a>
+ </li>
+ <li>
+ <a href="./bin/system-shutdown-daemon.html">system-shutdown-daemon</a>
+ </li>
+ </ul>
+ </section>
+ <section id="service">
+ <h3>Service directories</h3>
+ <p>
+ Service directories for early and basic services,
+ used without
+ <a href="https://skarnet.org/software/s6-rc/">s6-rc</a>.
+ Service directories in this package are used independent
+ of the kernel in use.
+ </p>
+ <h4>System service directories</h4>
+ <ul>
+ <li>
+ <a href="./service/system/goetia-runner.html">goetia-runner</a>
+ </li>
+ <li>
+ <a href="./service/system/s6-svscan-log.html">s6-svscan-log</a>
+ </li>
+ <li>
+ <a href="./service/system/s6-svscan-log-console.html">s6-svscan-log-console</a>
+ </li>
+ </ul>
+ <h4>User service directories</h4>
+ <ul>
+ <li>
+ <a href="./service/user/.s6-svscan.html">.s6-svscan</a>
+ </li>
+ <li>
+ <a href="./service/user/goetia-runner.html">goetia-runner</a>
+ </li>
+ <li>
+ <a href="./service/user/goetia-shutdown.html">goetia-shutdown</a>
+ </li>
+ <li>
+ <a href="./service/user/s6-svscan-log.html">s6-svscan-log</a>
+ </li>
+ </ul>
+ </section>
+ <section id="source">
+ <h3>Source directories</h3>
+ <p>
+ Following is a list of included
+ source directories.
+ Note that some daemons are so modular
+ and configurable, it would be nonsense
+ to provide a "stock" source directory.
+ How to set those up is explained in
+ an according
+ <a href="//0x53.net/software/goetia/tutorials/">tutorial page</a>.
+ </p>
+ <h4>System source directories</h4>
+ <h5>bundle</h5>
+ <p>
+ Some services can be provided by multiple different implementations.
+ Those are abstracted by bundles,
+ which can be filled with the desired implementation.
+ For the
+ <a href="//0x53.net/software/goetia/supervisiontree.html#system">system supervision tree</a>
+ the bundles used and provided by default in goetia are:
+ </p>
+ <ul>
+ <li>
+ <a href="./source/system/bundles/default.html">default</a>
+ </li>
+ <li>
+ <a href="./source/system/bundles/mount.html">mount</a>
+ </li>
+ <li>
+ <a href="./source/system/bundles/udev.html">udev</a>
+ </li>
+ <li>
+ <a href="./source/system/bundles/seat-manager.html">seat-manager</a>
+ </li>
+ <li>
+ <a href="./source/system/bundles/system-bus.html">system-bus</a>
+ </li>
+ <li>
+ <a href="./source/system/bundles/networking.html">networking</a>
+ </li>
+ <li>
+ <a href="./source/system/bundles/firewall.html">firewall</a>
+ </li>
+ </ul>
+ <h5>cron</h5>
+ <ul>
+ <li>
+ dcron
+ </li>
+ </ul>
+ <h5>db</h5>
+ <ul>
+ <li>
+ mariadb
+ </li>
+ <li>
+ mysqld
+ </li>
+ </ul>
+ <h5>net</h5>
+ <ul>
+ <li>
+ dhcpcd
+ </li>
+ <li>
+ wpa_supplicant
+ </li>
+ </ul>
+ <h5>ntp</h5>
+ <ul>
+ <li>
+ chronyd
+ </li>
+ </ul>
+ <h5>web</h5>
+ <ul>
+ <li>
+ gate
+ </li>
+ <li>
+ nginx
+ </li>
+ <li>
+ radicale
+ </li>
+ </ul>
+ <h5>other</h5>
+ <ul>
+ <li>
+ cupsd
+ </li>
+ <li>
+ dbus-daemon
+ </li>
+ <li>
+ <a href="./source/system/admin/seatd.html">seatd</a>
+ </li>
+ <li>
+ sshd
+ </li>
+ </ul>
+ <h4>User source directories</h4>
+ <h5>bundle</h5>
+ <p>
+ Some services can be provided by multiple different implementations.
+ Those are abstracted by bundles,
+ which can be filled with the desired implementation.
+ For the
+ <a href="//0x53.net/software/goetia/supervisiontree.html#user">user supervision tree</a>
+ the bundles used and provided by default in goetia are:
+ </p>
+ <ul>
+ <li>
+ <a href="./source/user/bundle/default.html">default</a>
+ </li>
+ <li>
+ <a href="./source/user/bundle/audio.html">audio</a>
+ </li>
+ <li>
+ <a href="./source/user/bundle/compositor.html">compositor</a>
+ </li>
+ <li>
+ <a href="./source/user/bundle/session-bus.html">session-bus</a>
+ </li>
+ </ul>
+ <h5>audio-daemon</h5>
+ <ul>
+ <li>
+ pipewire
+ </li>
+ <li>
+ pipewire-pulse
+ </li>
+ <li>
+ wireplumber
+ </li>
+ </ul>
+ <h5>clipboard-manager</h5>
+ <ul>
+ <li>
+ wl-clip-persist
+ </li>
+ </ul>
+ <h5>compositor</h5>
+ <ul>
+ <li>
+ Hyprland
+ </li>
+ </ul>
+ <h5>desktop-widget</h5>
+ <ul>
+ <li>
+ waybar
+ </li>
+ <li>
+ yambar
+ </li>
+ </ul>
+ <h5>notification-daemon</h5>
+ <ul>
+ <li>
+ dunst
+ </li>
+ <li>
+ fnott
+ </li>
+ <li>
+ mako
+ </li>
+ <li>
+ swaync
+ </li>
+ </ul>
+ <h5>wallpaper-daemon</h5>
+ <ul>
+ <li>
+ hyprpaper
+ </li>
+ </ul>
+ <h5>xdg</h5>
+ <ul>
+ <li>
+ xdg-desktop-portal-hyprland
+ </li>
+ <li>
+ xdg-desktop-portal
+ </li>
+ <li>
+ xdg-document-portal
+ </li>
+ <li>
+ xdg-permission-store
+ </li>
+ <li>
+ <a href="./source/user/xdg/xdg-runtime-dir.html">xdg-runtime-dir</a>
+ </li>
+ </ul>
+ <h5>other</h5>
+ <ul>
+ <li>
+ at-spi-bus-launcher
+ </li>
+ <li>
+ at-spi2-registryd
+ </li>
+ <li>
+ <a href="./source/user/other/dbus-daemon.html">dbus-daemon</a>
+ </li>
+ <li>
+ dconf-service
+ </li>
+ <li>
+ foot
+ </li>
+ <li>
+ mpd
+ </li>
+ </ul>
+ </section>
+ </body>
+</html>