about summary refs log tree commit diff
diff options
context:
space:
mode:
-rwxr-xr-xbin/svtree-run31
1 files changed, 11 insertions, 20 deletions
diff --git a/bin/svtree-run b/bin/svtree-run
index 05cd16e..398094a 100755
--- a/bin/svtree-run
+++ b/bin/svtree-run
@@ -36,26 +36,17 @@ foreground { elglob l ${LIVE_DIR}* rm -rf ${l} }
 if { cp -va -- /opt/svtree/run-image/service ${SCAN_DIR} }
 
 background {
-	# catch-all logger
-	fdmove -c 4 2
-	redirfd -wnb 2 ${SCAN_DIR}/s6-svscan-log/fifo
-	fdmove -c 1 2
-	
-	# TODO: why do we need this?
-	execline-cd ${HOME}
-
-	# run s6
-	s6-svscan ${SCAN_DIR}
-}
-
-# setup s6-rc
-if { s6-rc-init -c ${COMPILED_DIR} -l ${LIVE_DIR} -d -- ${SCAN_DIR} }
+	# setup s6-rc
+	if { s6-rc-init -c ${COMPILED_DIR} -l ${LIVE_DIR} -db -- ${SCAN_DIR} }
 
-# launch default target
-if { s6-rc -v2 -l ${LIVE_DIR} -pu change default }
+	# launch default target
+	if { s6-rc -v2 -l ${LIVE_DIR} -pu change default }
+}
 
-# block on s6
-importas -i scanpid !
-wait -i { ${scanpid} }
+# catch-all logger
+fdmove -c 4 2
+redirfd -wnb 2 ${SCAN_DIR}/s6-svscan-log/fifo
+fdmove -c 1 2
 
-exit 0
+# run s6
+exec s6-svscan ${SCAN_DIR}