default.nix (670B)
1 { writeText }: 2 writeText "service-fns.sh" '' 3 output() { cat $1/.outputs/$2; } 4 output_word() { 5 set -f 6 local i=1 7 for var in $(cat $1/.outputs/$2); do 8 if test "$i" == "$3" ; then 9 echo $var 10 fi 11 i=$(expr $i + 1) 12 done 13 set +f 14 } 15 16 output_path() { echo $(realpath $1/.outputs)/$2; } 17 SERVICE_OUTPUTS=/run/services/outputs 18 SERVICE_STATE=/run/services/state 19 mkoutputs() { 20 d=$SERVICE_OUTPUTS/$1 21 mkdir -m 2751 -p $d && chown root:system $d 22 echo $d 23 } 24 mkstate() { 25 d=$SERVICE_STATE/$1 26 mkdir -m 0700 -p $d && chown root:system $d 27 echo $d 28 } 29 in_outputs() { 30 cd `mkoutputs $1` && umask 0027 31 } 32 ''