forked from M-Labs/nix-servo
29 lines
856 B
Diff
29 lines
856 B
Diff
diff --git a/runit.nix b/runit.nix
|
|
index d7b0bf3..64f99f2 100644
|
|
--- a/runit.nix
|
|
+++ b/runit.nix
|
|
@@ -57,6 +57,23 @@ in
|
|
'';
|
|
"runit/3".source = pkgs.writeScript "3" ''
|
|
#!${pkgs.runtimeShell}
|
|
+ echo Waiting for services to stop...
|
|
+ sv force-stop /etc/service/*
|
|
+ sv exit /etc/service/*
|
|
+
|
|
+ echo Sending TERM signal to processes...
|
|
+ pkill --inverse -s0,1 -TERM
|
|
+ sleep 1
|
|
+ echo Sending KILL signal to processes...
|
|
+ pkill --inverse -s0,1 -KILL
|
|
+
|
|
+ echo Unmounting filesystems, disabling swap...
|
|
+ swapoff -a
|
|
+ umount -r -a -t nosysfs,noproc,nodevtmpfs,notmpfs
|
|
+ echo Remounting rootfs read-only...
|
|
+ mount -o remount,ro /
|
|
+
|
|
+ sync
|
|
echo and down we go
|
|
'';
|
|
"service/sshd/run".source = pkgs.writeScript "sshd_run" ''
|