From 5eefb9aae5e9e88b200ff7fcc445120c5ee2998b Mon Sep 17 00:00:00 2001
From: Laurent Bercot
Date: Tue, 8 Sep 2026 16:12:24 +0000
Subject: Improve user service management
- Separate /etc/s6.conf from /etc/s6-user.conf
- Have --system|--user handled at the s6 level, not the s6-frontend level
- Also have --help rewritten at the s6 level because it's cleaner
- On --user, process the config file with sed to import XDG variables
- Do not use s6f_user_get_confdirs() anymore (can remove it if we
decide to stick with this design), --user now only changes the
conf file, and only command-line options such as --scandir can override
what is described in the conf file.
- Document the current behaviour.
---
doc/s6-frontend.html | 20 ++++++++++++++++----
1 file changed, 16 insertions(+), 4 deletions(-)
(limited to 'doc/s6-frontend.html')
diff --git a/doc/s6-frontend.html b/doc/s6-frontend.html
index 9d563f7..df98186 100644
--- a/doc/s6-frontend.html
+++ b/doc/s6-frontend.html
@@ -38,14 +38,26 @@ users should call s6 instead.
- - s6 gets the name of its configuration file from the
-S6_CONF environment variable, or from the compiled-in default if
-this variable is unset. Normally this default is /etc/s6.conf.
+ - s6 reads its configuration file at
+/etc/s6.conf by default, overridable by the admin at build time
+via the --conffile configure option, also overridable by the user
+at run time via the S6_CONF environment variable.
+
+ - If s6 is run with the --user option,
+it looks for /etc/s6-user.conf instead, overridable by the admin at
+build time via the --userconffile configure option, also overridable
+by the user at run time via the S6_USER_CONF environment variable.
+
- This configuration file (let's call it conf) contains
variable definitions that set the default for
all the parts of the s6 system.
- s6 rewrites itself into
-
envfile -I conf -- s6-frontend args...
+envfile -I conf -- s6-frontend args...
+
- The envfile program
reads and parses conf, and then runs s6-frontend
with the additional environment variables defined in conf.
--
cgit v1.3.1