add in_outputs shell function which ensures umask is set

module-based-network
Daniel Barlow 2023-03-03 23:06:18 +00:00
parent e0ea576674
commit 38756af1c1
5 changed files with 9 additions and 8 deletions

View File

@ -78,7 +78,7 @@
part=$(basename $(dirname $(grep -l art /sys/class/mtd/*/name)))
echo ART partition is ''${part-unset}
test -n "$part" || exit 1
(cd $(mkoutputs ${name}); umask 0027
(in_outputs ${name}
dd if=/dev/$part of=data iflag=skip_bytes,fullblock bs=${toString size} skip=${toString offset} count=1
)
'';

View File

@ -19,7 +19,7 @@ let
name = "${interface.device}.pppoe";
ip-up = writeAshScript "ip-up" {} ''
. ${serviceFns}
(cd $(mkoutputs ${name}); umask 0027
(in_outputs ${name}
echo $1 > ifname
echo $2 > tty
echo $3 > speed

View File

@ -16,7 +16,7 @@ let
set_address() {
ip address replace $ip/$mask dev $interface
(cd $(mkoutputs ${name}); umask 0027
(in_outputs ${name}
for i in lease mask ip router siaddr dns serverid subnet opt53 interface ; do
echo ''${!i} > $i
done)

View File

@ -7,4 +7,7 @@ writeText "service-fns.sh" ''
mkdir -m 2750 -p $d && chown root:system $d
echo $d
}
in_outputs() {
cd `mkoutputs $1` && umask 0027
}
''

View File

@ -141,10 +141,8 @@ in rec {
};
in bundle {
name = "bridge-members";
contents = map addif [
config.hardware.networkInterfaces.wlan_24
config.hardware.networkInterfaces.lan
config.hardware.networkInterfaces.wlan_5
contents = with config.hardware.networkInterfaces; map addif [
wlan_24 lan wlan_5
];
};
@ -181,7 +179,7 @@ in rec {
name = "resolvconf";
up = ''
. ${serviceFns}
( cd `mkoutputs ${name}`; umask 0027
( in_outputs ${name}
echo "nameserver $(output ${services.wan} ns1)" > resolv.conf
echo "nameserver $(output ${services.wan} ns2)" >> resolv.conf
)