diff options
Diffstat (limited to 'doc/source')
| -rw-r--r-- | doc/source/system/admin/seatd.html | 42 | ||||
| -rw-r--r-- | doc/source/system/bundles/default.html | 37 | ||||
| -rw-r--r-- | doc/source/system/bundles/firewall.html | 29 | ||||
| -rw-r--r-- | doc/source/system/bundles/mount.html | 48 | ||||
| -rw-r--r-- | doc/source/system/bundles/networking.html | 35 | ||||
| -rw-r--r-- | doc/source/system/bundles/seat-manager.html | 31 | ||||
| -rw-r--r-- | doc/source/system/bundles/system-bus.html | 34 | ||||
| -rw-r--r-- | doc/source/system/bundles/udev.html | 36 | ||||
| -rw-r--r-- | doc/source/user/bundle/audio.html | 31 | ||||
| -rw-r--r-- | doc/source/user/bundle/compositor.html | 33 | ||||
| -rw-r--r-- | doc/source/user/bundle/default.html | 39 | ||||
| -rw-r--r-- | doc/source/user/bundle/session-bus.html | 34 | ||||
| -rw-r--r-- | doc/source/user/other/dbus-daemon.html | 44 | ||||
| -rw-r--r-- | doc/source/user/xdg/xdg-runtime-dir.html | 75 |
14 files changed, 548 insertions, 0 deletions
diff --git a/doc/source/system/admin/seatd.html b/doc/source/system/admin/seatd.html new file mode 100644 index 0000000..6303835 --- /dev/null +++ b/doc/source/system/admin/seatd.html @@ -0,0 +1,42 @@ +<!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>seatd</title> + <meta name="Description" content="Seatd mediates access to hardware like a GPU or input devices to compositors." /> + <meta name="Keywords" content="goetia s6-rc seat seatd system supervision tree" /> + </head> + <header> + <p> + <a href="//0x53.net/software/goetia/goetia-base">goetia-base</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 seatd service</h1> + <p> + Seatd is a seat manager. + This means that it mediates access to + hardware like a GPU or input devices to the compositor. + </p> + <p> + This service makes the socket have + <code>seat</code> group permissions. + Thus the group <code>seat</code> must exist + and users intending to run a compositor need to + be part of that group. + </p> + <p> + The service does not change the socket location, + by default it usually resides at + <code>/run/seatd.sock</code>. + </p> + </body> +</html> diff --git a/doc/source/system/bundles/default.html b/doc/source/system/bundles/default.html new file mode 100644 index 0000000..80b58c0 --- /dev/null +++ b/doc/source/system/bundles/default.html @@ -0,0 +1,37 @@ +<!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>default system bundle</title> + <meta name="Description" content="System bundle that is by default started during boot." /> + <meta name="Keywords" content="goetia s6-rc bundle system supervision tree" /> + </head> + <header> + <p> + <a href="//0x53.net/software/goetia/goetia-base">goetia-base</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 default system bundle</h1> + <p> + This bundle is started on boot and everything that is + desired to be autostarted should be part of it. + Minimize the amount of services in this bundle. + <a href="https://skarnet.org/software/s6-rc">s6-rc</a> + will automatically start (and stop) all dependencies. + Add only what should be unconditionally there. + An example of this would be a service to mount a storage device + containing photos. No other service will probably depend on + this, since none needs the photos, but the user still needs + this to be mounted. + </p> + </body> +</html> diff --git a/doc/source/system/bundles/firewall.html b/doc/source/system/bundles/firewall.html new file mode 100644 index 0000000..ecfe00e --- /dev/null +++ b/doc/source/system/bundles/firewall.html @@ -0,0 +1,29 @@ +<!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>firewall system bundle</title> + <meta name="Description" content="System bundle depended upon by services that should be started after the firewall is configured." /> + <meta name="Keywords" content="goetia s6-rc bundle system supervision tree" /> + </head> + <header> + <p> + <a href="//0x53.net/software/goetia/goetia-base">goetia-base</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 firewall system bundle</h1> + <p> + Some services might require a frirewall to be ready + when started, those shall depend on this bundle. + </p> + </body> +</html> diff --git a/doc/source/system/bundles/mount.html b/doc/source/system/bundles/mount.html new file mode 100644 index 0000000..c295d49 --- /dev/null +++ b/doc/source/system/bundles/mount.html @@ -0,0 +1,48 @@ +<!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>mount system bundle</title> + <meta name="Description" content="System bundle that is by default depended upon by program that need to read/write from/to disk." /> + <meta name="Keywords" content="goetia s6-rc bundle system supervision tree" /> + </head> + <header> + <p> + <a href="//0x53.net/software/goetia/goetia-base">goetia-base</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 mount system bundle</h1> + <p> + This bundle is by default a declared dependency of many + services provided by goetia. + Most importantly, it is a dependency of all autogenerated + loggers. + It should thus contain the mount services for all drives + that are used for + <a href="//0x53.net/software/goetia/logdir.html">logging</a>. + </p> + <p> + In most cases, the <code>remount-root</code> + <a href="https://skarnet.org/software/s6-rc/s6-rc-compile.html#source">source directory</a> + should be added to this bundle. + This source directory is part of the kernel specific packages, + like + <a href="//0x53.net/software/goetia/goetia-linux/">goetia-linux</a>. + </p> + <h2>See also</h2> + <ul> + <li> + <a href="//0x53.net/software/goetia/tutorials/base/mount.html">Mount tutorial</a> + </li> + </ul> + </body> +</html> diff --git a/doc/source/system/bundles/networking.html b/doc/source/system/bundles/networking.html new file mode 100644 index 0000000..0e3e18b --- /dev/null +++ b/doc/source/system/bundles/networking.html @@ -0,0 +1,35 @@ +<!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>networking system bundle</title> + <meta name="Description" content="System bundle that is depended upon by services requiring the correct network configuration to be applied." /> + <meta name="Keywords" content="goetia s6-rc bundle system supervision tree" /> + </head> + <header> + <p> + <a href="//0x53.net/software/goetia/goetia-base">goetia-base</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 networking system bundle</h1> + <p> + Services requiring networking to be set up + will depend on this. + </p> + <h2>See also</h2> + <ul> + <li> + <a href="//0x53.net/software/goetia/tutorials/base/networking.html">Networking tutorial</a> + </li> + </ul> + </body> +</html> diff --git a/doc/source/system/bundles/seat-manager.html b/doc/source/system/bundles/seat-manager.html new file mode 100644 index 0000000..eab3d26 --- /dev/null +++ b/doc/source/system/bundles/seat-manager.html @@ -0,0 +1,31 @@ +<!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>seat-manager system bundle</title> + <meta name="Description" content="System bundle that is depended upon by services requiring a seat manager to be running." /> + <meta name="Keywords" content="goetia s6-rc bundle system supervision tree" /> + </head> + <header> + <p> + <a href="//0x53.net/software/goetia/goetia-base">goetia-base</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 seat-manager system bundle</h1> + <p> + Refer to the + <a href="//0x53.net/software/goetia/tutorials/ui/seatsession.html">seat and session management</a> + tutorial, to understand the purpose of seat managers. + This bundle abstracts over the choices one has here. + </p> + </body> +</html> diff --git a/doc/source/system/bundles/system-bus.html b/doc/source/system/bundles/system-bus.html new file mode 100644 index 0000000..4efd015 --- /dev/null +++ b/doc/source/system/bundles/system-bus.html @@ -0,0 +1,34 @@ +<!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-bus system bundle</title> + <meta name="Description" content="System bundle depended upon by services requiring a system bus to be up." /> + <meta name="Keywords" content="goetia s6-rc bundle bus system-bus dbus system supervision tree" /> + </head> + <header> + <p> + <a href="//0x53.net/software/goetia/goetia-base">goetia-base</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-bus system bundle</h1> + <p> + Some software requires a system-bus + implementing - usually the dbus interface. + The only currently available implementation + of this interface is + <a href="https://www.freedesktop.org/wiki/Software/dbus/">dbus-daemon</a>. + The source directory is part of + <a href="//0x53.net/software/goetia/goetia-base">goetia-base</a>. + </p> + </body> +</html> diff --git a/doc/source/system/bundles/udev.html b/doc/source/system/bundles/udev.html new file mode 100644 index 0000000..835f04b --- /dev/null +++ b/doc/source/system/bundles/udev.html @@ -0,0 +1,36 @@ +<!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>udev system bundle</title> + <meta name="Description" content="System bundle that is depended upon by services requiring the userspace device manager to be up." /> + <meta name="Keywords" content="goetia s6-rc bundle system supervision tree" /> + </head> + <header> + <p> + <a href="//0x53.net/software/goetia/goetia-base">goetia-base</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 udev system bundle</h1> + <p> + Some software depends on userspace device management software + to setup device permissions, symlinks and more. + The corresponding services will depend on this bundle. + </p> + <h2>See also</h2> + <ul> + <li> + <a href="//0x53.net/software/goetia/tutorials/base/udev.html">Udev tutorial</a> + </li> + </ul> + </body> +</html> diff --git a/doc/source/user/bundle/audio.html b/doc/source/user/bundle/audio.html new file mode 100644 index 0000000..687926e --- /dev/null +++ b/doc/source/user/bundle/audio.html @@ -0,0 +1,31 @@ +<!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>audio user bundle</title> + <meta name="Description" content="User bundle depended upon by services that need an audio server to be up." /> + <meta name="Keywords" content="goetia s6-rc bundle user supervision tree" /> + </head> + <header> + <p> + <a href="//0x53.net/software/goetia/goetia-base">goetia-base</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 audio user bundle</h1> + <p> + This bundle abstracts over the different + autio daemon implementations, + so services requiring a running audion daemon + can depend on this. + </p> + </body> +</html> diff --git a/doc/source/user/bundle/compositor.html b/doc/source/user/bundle/compositor.html new file mode 100644 index 0000000..9d10e89 --- /dev/null +++ b/doc/source/user/bundle/compositor.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>compositor user bundle</title> + <meta name="Description" content="User bundle depended upon by services that need a wayland compositor to be up." /> + <meta name="Keywords" content="goetia s6-rc bundle user supervision tree" /> + </head> + <header> + <p> + <a href="//0x53.net/software/goetia/goetia-base">goetia-base</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 compositor user bundle</h1> + <p> + This bundle shall contain the service corresponding to the + main compositing program, e.g. the + <a href="https://wayland.freedesktop.org/">Wayland</a> + compositor or + <a href="https://www.x.org/releases/X11R7.7/doc/index.html">X11</a>. + instance. + </p> + </body> +</html> diff --git a/doc/source/user/bundle/default.html b/doc/source/user/bundle/default.html new file mode 100644 index 0000000..2192a15 --- /dev/null +++ b/doc/source/user/bundle/default.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>default user bundle</title> + <meta name="Description" content="User bundle started upon starting the user supervision tree." /> + <meta name="Keywords" content="goetia s6-rc bundle user supervision tree" /> + </head> + <header> + <p> + <a href="//0x53.net/software/goetia/goetia-base">goetia-base</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 default user bundle</h1> + <p> + This bundle is started when the + <a href="//0x53.net/software/goetia/supervisiontree.html#user">user supervision tree</a> + is started and everything that is + desired to be autostarted should be part of it. + Minimize the amount of services in this bundle. + <a href="https://skarnet.org/software/s6-rc">s6-rc</a> + will automatically start (and stop) all dependencies. + Add only what should be unconditionally there. + An example of this would be a service + starting a wallpaper daemon, no other service + will probably depend on this but the user + wants the wallpaper to be there. + </p> + </body> +</html> diff --git a/doc/source/user/bundle/session-bus.html b/doc/source/user/bundle/session-bus.html new file mode 100644 index 0000000..8984b80 --- /dev/null +++ b/doc/source/user/bundle/session-bus.html @@ -0,0 +1,34 @@ +<!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>session-bus user bundle</title> + <meta name="Description" content="User bundle that is depended upon by services that need a session-bus to be up." /> + <meta name="Keywords" content="goetia s6-rc bundle bus session-bus dbus user supervision tree" /> + </head> + <header> + <p> + <a href="//0x53.net/software/goetia/goetia-base">goetia-base</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 session-bus user bundle</h1> + <p> + Some software requires a session-bus + - usually implementing the dbus interface. + The only currently available implementation + of this interface is + <a href="https://www.freedesktop.org/wiki/Software/dbus/">dbus-daemon</a>. + The source directory is part of + <a href="//0x53.net/software/goetia/goetia-base">goetia-base</a>. + </p> + </body> +</html> diff --git a/doc/source/user/other/dbus-daemon.html b/doc/source/user/other/dbus-daemon.html new file mode 100644 index 0000000..f5290c8 --- /dev/null +++ b/doc/source/user/other/dbus-daemon.html @@ -0,0 +1,44 @@ +<!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>dbus-daemon</title> + <meta name="Description" content="User longrun to start the dbus session-bus" /> + <meta name="Keywords" content="goetia s6-rc bundle bus session-bus dbus user supervision tree" /> + </head> + <header> + <p> + <a href="//0x53.net/software/goetia/goetia-base">goetia-base</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 dbus-daemon service</h1> + <p> + This service starts a session + <a href="https://gitlab.freedesktop.org/dbus/dbus">dbus-daemon</a>. + It is important to set the environment variable + <code>DBUS_SESSION_BUS_ADDRESS</code>, + so other services depending on dbus-daemon can find it. + </p> + <p> + The <code>DBUS_SESSION_BUS_ADDRESS</code> environment variable + should be set at + <code>${HOME}/<var>@userconfdir@</var>/<var>@USERTREE@</var>/env/DBUS_SESSION_BUS_ADDRESS</code>, + by writing the address into this file + (see <a href="//0x53.net/software/goetia/confdir.html">configuration directory</a>). + It is recomended to set + <code>${HOME}/<var>@userconfdir@</var>/<var>@USERTREE@</var>/env/DBUS_SESSION_BUS_ADDRESS</code>, + to + <code><var>@tmpusdir@</var>/<var>@usrrundir@</var>/<var>@USER@</var>/<var>@USERTREE@</var>/session-bus</code> + (see <a href="//0x53.net/software/goetia/rundir.html">runtime directory</a>). + </p> + </body> +</html> diff --git a/doc/source/user/xdg/xdg-runtime-dir.html b/doc/source/user/xdg/xdg-runtime-dir.html new file mode 100644 index 0000000..3b17d8b --- /dev/null +++ b/doc/source/user/xdg/xdg-runtime-dir.html @@ -0,0 +1,75 @@ +<!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>xdg-runtime-dir</title> + <meta name="Description" content="User oneshot to create and remove the XDG_RUNTIME_DIR." /> + <meta name="Keywords" content="goetia s6-rc bundle xdg runtime directory user supervision tree" /> + </head> + <header> + <p> + <a href="//0x53.net/software/goetia/goetia-base">goetia-base</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 xdg-runtime-dir service</h1> + <p> + This service dynamically creates the directory + specified in the environment variable + <code>XDG_RUNTIME_DIR</code>. + </p> + <p> + Starting this service creates the directory + and sets the proper permissions, + stopping it deletes it. + </p> + <p> + It is recommended to set + <code>XDG_RUNTIME_DIR</code> + to the + <code><var>@USER@</var>/<var>@USERTREE@</var>/xdg-runtime-dir</code> + subdirectory of the + <a href="//0x53.net/software/goetia/rundir.html#user">user runtime directory</a>. + This allows to follow the + <a href="https://specifications.freedesktop.org/basedir-spec/latest/">XDG Base Directory Specification</a>. + </p> + <p> + If more than one + <a href="//0x53.net/software/goetia/supervisiontree.html#user">user supervision tree</a> + <em>per user</em> is used to have multiple + <a href="//0x53.net/software/goetia/tutorials/ui/seatsession.html">sessions</a> + with a distinct UI server, audio server, etc. + It makes sense for each session to have its own, + distinct <code>xdg-runtime-dir</code>, + since it is often used for sockets and temporary files + of said UI server, audio server, etc. + Setting + <code>XDG_RUNTIME_DIR</code> + as described above, allows for this. + Note, however, that this deviates from the + <a href="https://specifications.freedesktop.org/basedir-spec/latest/">XDG Base Directory Specification</a>. + </p> + <p> + All user services writing to or reading from + <code>XDG_RUNTIME_DIR</code> + should depend on this service. + </p> + <h2>See also</h2> + <ul> + <li> + <a href="//0x53.net/software/goetia/tutorials/ui/seatsession.html">seat and session management</a> + </li> + <li> + <a href="https://specifications.freedesktop.org/basedir-spec/latest/">XDG Base Directory Specification</a>. + </li> + </ul> + </body> +</html> |
