From a12b74b878220dc796e4e4cb44d277466212113e Mon Sep 17 00:00:00 2001 From: "A. Wilcox" Date: Fri, 15 Jun 2018 00:38:04 -0500 Subject: system/s6: new package --- system/s6/s6-svscanboot | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 system/s6/s6-svscanboot (limited to 'system/s6/s6-svscanboot') diff --git a/system/s6/s6-svscanboot b/system/s6/s6-svscanboot new file mode 100644 index 000000000..2b41d2916 --- /dev/null +++ b/system/s6/s6-svscanboot @@ -0,0 +1,32 @@ +#!/bin/execlineb -S1 + +foreground { redirfd -w 2 /dev/null mkdir -p /run/uncaught-logs } +if { chown catchlog:catchlog /run/uncaught-logs } +if { chmod 2700 /run/uncaught-logs } +foreground { redirfd -w 2 /dev/null mkdir -p ${1}/.s6-svscan ${1}/s6-svscan-log } +foreground { redirfd -w 2 /dev/null ln -sf /bin/false ${1}/.s6-svscan/crash } +if +{ + redirfd -w 1 ${1}/.s6-svscan/finish + heredoc 0 "#!/bin/execlineb -P\ns6-svc -X -- \"${1}/s6-svscan-log\"\n" + cat +} +if { chmod 0755 ${1}/.s6-svscan/finish } +foreground { redirfd -w 2 /dev/null mkfifo -m 0600 ${1}/s6-svscan-log/fifo } +if +{ + redirfd -w 1 ${1}/s6-svscan-log/run + heredoc 0 "#!/bin/execlineb -P +redirfd -w 2 /dev/console +redirfd -rnb 0 fifo +s6-setuidgid catchlog +exec -c +s6-log t /run/uncaught-logs\n" + cat +} +if { chmod 0755 ${1}/s6-svscan-log/run } + +redirfd -r 0 /dev/null +redirfd -wnb 1 ${1}/s6-svscan-log/fifo +fdmove -c 2 1 +s6-svscan -St0 ${1} -- cgit v1.2.3-70-g09d2