summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMuhammad Mahendra Subrata <mumahendras3@gmail.com>2020-01-18 23:02:28 +0700
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2020-01-19 08:53:15 +0700
commitb005ee8654d03e25efe8c057728c6d44c1129c49 (patch)
treed07739cfa3f24674736676c365d2ef042aeb128f
parent584421b15c560e347235eed1316c78b003048865 (diff)
downloadslackbuilds-b005ee8654d03e25efe8c057728c6d44c1129c49.tar.gz
system/s6-rc: Update script.
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
-rw-r--r--system/s6-rc/README26
-rw-r--r--system/s6-rc/s6-rc.SlackBuild6
2 files changed, 24 insertions, 8 deletions
diff --git a/system/s6-rc/README b/system/s6-rc/README
index 5a565ceed2..1f11efda40 100644
--- a/system/s6-rc/README
+++ b/system/s6-rc/README
@@ -1,18 +1,30 @@
-s6-rc is a service manager for s6-based systems, i.e. a suite of programs
-that can start and stop services, both long-running daemons and one-time
-initialization scripts, in the proper order according to a dependency tree.
-It ensures that long-running daemons are supervised by the s6 infrastructure,
-and that one-time scripts are also run in a controlled environment.
+s6-rc is a service manager for s6-based systems, i.e. a suite of
+programs that can start and stop services, both long-running daemons and
+one-time initialization scripts, in the proper order according to a
+dependency tree. It ensures that long-running daemons are supervised by
+the s6 infrastructure, and that one-time scripts are also run in a
+controlled environment.
NOTE:
+s6-rc needs "live directory" where it puts some internal files that are
+needed at run-time. Default is /run/s6-rc. The default can be changed to
+other directory by passing LIVE_DIR=/path/to/directory environment
+variable to the SlackBuild script like below:
+
+ LIVE_DIR=/path/to/directory ./s6-rc.SlackBuild
+
+Make sure /path/to/directory is readable and writable by s6-rc or it
+will not work correctly. Using a RAM filesystem as the live directory is
+preferred.
+
Upstream recommends building skarnet.org softwares with static libraries
as most of skarnet.org softwares are small enough that using shared
libraries are generally not worth using. Therefore, by default, shared
libraries are not built and binaries are linked against the static
versions of the skarnet.org libraries.
-If you want to also build the shared libraries, pass BUILD_SHARED=yes
-environment variable to the SlackBuild script like below:
+If you want to also build the shared libraries, pass BUILD_SHARED=yes to
+the SlackBuild script like below:
BUILD_SHARED=yes ./s6-rc.SlackBuild
diff --git a/system/s6-rc/s6-rc.SlackBuild b/system/s6-rc/s6-rc.SlackBuild
index ff38938475..254c9b8fe3 100644
--- a/system/s6-rc/s6-rc.SlackBuild
+++ b/system/s6-rc/s6-rc.SlackBuild
@@ -77,6 +77,10 @@ if [ "$LINK_SHARED" = "yes" ]; then
LIBS_CONF="--disable-allstatic $LIBS_CONF"
fi
+# /run/s6-rc is the default live directory, pass LIVE_DIR=/path/to/directory to this script to change it
+# make sure /path/to/directory is readable and writable by s6-rc or it will not work correctly
+LIVE_DIR=${LIVE_DIR:-/run/s6-rc}
+
set -e
rm -rf $PKG
@@ -100,7 +104,7 @@ CXXFLAGS="$SLKCFLAGS" \
--libexecdir=/usr/libexec \
--libdir=/usr/lib${LIBDIRSUFFIX}/s6-rc \
--includedir=/usr/include \
- --livedir=/run/s6/rc \
+ --livedir=${LIVE_DIR} \
--with-sysdeps=/usr/lib${LIBDIRSUFFIX}/skalibs/sysdeps \
--with-lib=/usr/lib${LIBDIRSUFFIX}/skalibs \
--with-lib=/usr/lib${LIBDIRSUFFIX}/execline \