aboutsummaryrefslogtreecommitdiffstats
path: root/configure
diff options
context:
space:
mode:
authorLaurent Bercot <ska-skaware@skarnet.org>2026-09-08 16:12:24 +0000
committerLaurent Bercot <ska-skaware@skarnet.org>2026-09-08 16:12:24 +0000
commit5eefb9aae5e9e88b200ff7fcc445120c5ee2998b (patch)
treeaa0bc83b0b5a86dd9a1aab781f36f2c85c8a6b5c /configure
parent125cf07d0b5139476b1f25fa4ba5a0782818eacc (diff)
downloads6-frontend-5eefb9aae5e9e88b200ff7fcc445120c5ee2998b.tar.gz
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.
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure13
1 files changed, 11 insertions, 2 deletions
diff --git a/configure b/configure
index ace7d40..b04abb8 100755
--- a/configure
+++ b/configure
@@ -30,7 +30,9 @@ Fine tuning of the installation directories:
--repodir=DIR default s6-rc repository [s6-rc default: /var/lib/s6-rc/repository]
--bootdb=LINK location of the bootable s6-rc compiled db [s6-rc default: /etc/s6-rc/compiled/current]
--stmpdir=DIR secure location for temporary s6-frontend files [/run/s6-frontend]
- --conffile=FILE default configuration file for s6 command [SYSCONFDIR/s6.conf]
+ --conffile=FILE default system configuration file for the s6 command [SYSCONFDIR/s6.conf]
+ --userconffile=FILE default user configuration file for the s6 command [SYSCONFDIR/s6-user.conf]
+
If no --prefix option is given, by default libdir (but not dynlibdir) will be
/usr/lib, and includedir will be /usr/include.
@@ -188,6 +190,7 @@ repodir=
bootdb=
stmpdir=/run/s6-frontend
conffile='$sysconfdir/s6.conf'
+userconffile='$sysconfdir/s6-user.conf'
storelist='$prefix/share/s6/sources:$sysconfdir/s6/sources'
defbundle=
fdhuser=
@@ -240,6 +243,7 @@ for arg ; do
--bootdb=*) bootdb=${arg#*=} ;;
--stmpdir=*) stmpdir=${arg#*=} ;;
--conffile=*) conffile=${arg#*=} ;;
+ --userconffile=*) userconffile=${arg#*=} ;;
--with-store-list=*) storelist=${arg#*=} ;;
--with-default-bundle=*) defbundle=${arg#*=} ;;
--with-fdholder-user=*) fdhuser=${arg#*=} ;;
@@ -277,7 +281,7 @@ fi
# Expand installation directories
stripdir prefix
-for i in exec_prefix dynlibdir libexecdir bindir libdir includedir sysconfdir pkgconfdir sysdeps sproot stmpdir conffile storelist ; do
+for i in exec_prefix dynlibdir libexecdir bindir libdir includedir sysconfdir pkgconfdir sysdeps sproot stmpdir conffile userconffile storelist ; do
eval tmp=\${$i}
eval $i=$tmp
stripdir $i
@@ -566,6 +570,8 @@ echo "BOOTDB := $bootdb"
echo "STMPDIR := $stmpdir"
echo "STORELIST := $storelist"
echo "FDHUSER := $fdhuser"
+echo "CONFFILE := $conffile"
+echo "USERCONFFILE := $userconffile"
if $usensss ; then
echo "LIBNSSS := -lnsss"
@@ -677,6 +683,9 @@ echo "#define ${package_macro_name}_STMPDIR \"$stmpdir\""
echo "#undef ${package_macro_name}_CONF"
echo "#define ${package_macro_name}_CONF \"$conffile\""
+echo "#undef ${package_macro_name}_USER_CONF"
+echo "#define ${package_macro_name}_USER_CONF \"$userconffile\""
+
echo "#undef ${package_macro_name}_STORELIST"
echo "#define ${package_macro_name}_STORELIST \"$storelist\""