default.nix (864B)
1 { 2 s6-linux-init 3 , execline 4 , writeScript 5 , stdenvNoCC 6 , lib 7 , s6-rc 8 }: 9 let 10 hpr = name: arg: writeScript name '' 11 #!${execline}/bin/execlineb -S0 12 ${s6-linux-init}/bin/s6-linux-init-hpr ${arg} \$@ 13 ''; 14 init = writeScript "init" '' 15 #!${execline}/bin/execlineb -S0 16 ${s6-linux-init}/bin/s6-linux-init -c /etc/s6-linux-init/current -m 0022 -p ${lib.makeBinPath [execline s6-linux-init s6-rc]}:/usr/bin:/bin -d /dev -- "\$@" 17 ''; 18 in stdenvNoCC.mkDerivation { 19 name = "s6-init-bin"; 20 phases = ["installPhase"]; 21 installPhase = '' 22 bin=$out/bin 23 mkdir -p $bin 24 cd $bin 25 ln -s ${s6-linux-init}/bin/s6-linux-init-shutdown shutdown 26 ln -s ${s6-linux-init}/bin/s6-linux-init-telinit telinit 27 ln -s ${hpr "reboot" "-r"} reboot 28 ln -s ${hpr "poweroff" "-p"} poweroff 29 ln -s ${hpr "halt" "-h"} halt 30 ln -s ${init} init 31 ''; 32 }