remove interface.device
build-time uses can mostly be replaced with interface.name for runtime uses, switch to $(output ${interface} name)
This commit is contained in:
parent
6da0e67621
commit
540a1dfd76
6 changed files with 22 additions and 22 deletions
|
@ -105,7 +105,7 @@ in rec {
|
||||||
inherit interface;
|
inherit interface;
|
||||||
ranges = [
|
ranges = [
|
||||||
"10.8.0.10,10.8.0.240"
|
"10.8.0.10,10.8.0.240"
|
||||||
"::,constructor:${interface.device},ra-stateless"
|
"::,constructor:$(output ${interface} ifname),ra-stateless"
|
||||||
];
|
];
|
||||||
domain = "fake.liminix.org";
|
domain = "fake.liminix.org";
|
||||||
};
|
};
|
||||||
|
@ -188,7 +188,7 @@ in rec {
|
||||||
let script = pkgs.callPackage ./acquire-delegated-prefix.nix { };
|
let script = pkgs.callPackage ./acquire-delegated-prefix.nix { };
|
||||||
in longrun {
|
in longrun {
|
||||||
name = "acquire-lan-prefix";
|
name = "acquire-lan-prefix";
|
||||||
run = "${script} /run/service-state/dhcp6c.wan ${services.int.device}";
|
run = "${script} /run/service-state/dhcp6c.wan $(output ${services.int} ifname)";
|
||||||
dependencies = [ services.dhcp6 ];
|
dependencies = [ services.dhcp6 ];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -13,14 +13,15 @@ let
|
||||||
type = "bridge";
|
type = "bridge";
|
||||||
};
|
};
|
||||||
addif = member :
|
addif = member :
|
||||||
oneshot {
|
let ifname = "$(output ${member} ifname)";
|
||||||
name = "add-${member.device}-to-br-${primary.device}";
|
in oneshot {
|
||||||
up = "${ifwait}/bin/ifwait ${member.device} running && ip link set dev ${member.device} master ${primary.device}";
|
name = "add-${member.name}-to-br-${primary.name}";
|
||||||
down = "ip link set dev ${member.device} nomaster";
|
up = "${ifwait}/bin/ifwait ${ifname} running && ip link set dev ${ifname} master $(output ${primary} ifname)";
|
||||||
|
down = "ip link set dev ${ifname} nomaster";
|
||||||
dependencies = [ primary member ];
|
dependencies = [ primary member ];
|
||||||
};
|
};
|
||||||
|
|
||||||
in (bundle {
|
in bundle {
|
||||||
name = "bridge-${primary.device}-members";
|
name = "bridge-${primary.name}-members";
|
||||||
contents = [ primary ] ++ map addif members;
|
contents = [ primary ] ++ map addif members;
|
||||||
}) // { device = primary.device; }
|
}
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
, resolvconf
|
, resolvconf
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
name = "${interface.device}.dnsmasq";
|
name = "${interface.name}.dnsmasq";
|
||||||
inherit (liminix.services) longrun;
|
inherit (liminix.services) longrun;
|
||||||
inherit (lib) concatStringsSep;
|
inherit (lib) concatStringsSep;
|
||||||
in
|
in
|
||||||
|
@ -27,7 +27,7 @@ longrun {
|
||||||
--user=${user} \
|
--user=${user} \
|
||||||
--domain=${domain} \
|
--domain=${domain} \
|
||||||
--group=${group} \
|
--group=${group} \
|
||||||
--interface=${interface.device} \
|
--interface=$(output ${interface} ifname) \
|
||||||
${lib.concatStringsSep " " (builtins.map (r: "--dhcp-range=${r}") ranges)} \
|
${lib.concatStringsSep " " (builtins.map (r: "--dhcp-range=${r}") ranges)} \
|
||||||
${lib.concatStringsSep " " (builtins.map (r: "--server=${r}") upstreams)} \
|
${lib.concatStringsSep " " (builtins.map (r: "--server=${r}") upstreams)} \
|
||||||
--keep-in-foreground \
|
--keep-in-foreground \
|
||||||
|
|
|
@ -17,7 +17,7 @@ let
|
||||||
# we'll add them as top-level attributes and rename params to
|
# we'll add them as top-level attributes and rename params to
|
||||||
# extraParams
|
# extraParams
|
||||||
|
|
||||||
name = "${interface.device}.hostapd";
|
name = "${interface.name}.hostapd";
|
||||||
defaults = {
|
defaults = {
|
||||||
driver = "nl80211";
|
driver = "nl80211";
|
||||||
logger_syslog = "-1";
|
logger_syslog = "-1";
|
||||||
|
@ -35,5 +35,5 @@ let
|
||||||
in longrun {
|
in longrun {
|
||||||
inherit name;
|
inherit name;
|
||||||
dependencies = [ interface ];
|
dependencies = [ interface ];
|
||||||
run = "${hostapd}/bin/hostapd -i ${interface.device} -P /run/${name}.pid -S ${conf}";
|
run = "${hostapd}/bin/hostapd -i $(output ${interface} ifname) -P /run/${name}.pid -S ${conf}";
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
{ interface, ppp-options }:
|
{ interface, ppp-options }:
|
||||||
let
|
let
|
||||||
inherit (liminix.services) longrun;
|
inherit (liminix.services) longrun;
|
||||||
name = "${interface.device}.pppoe";
|
name = "${interface.name}.pppoe";
|
||||||
ip-up = writeAshScript "ip-up" {} ''
|
ip-up = writeAshScript "ip-up" {} ''
|
||||||
. ${serviceFns}
|
. ${serviceFns}
|
||||||
(in_outputs ${name}
|
(in_outputs ${name}
|
||||||
|
@ -42,7 +42,10 @@ let
|
||||||
in
|
in
|
||||||
longrun {
|
longrun {
|
||||||
inherit name;
|
inherit name;
|
||||||
run = "${ppp}/bin/pppd pty '${pppoe}/bin/pppoe -I ${interface.device}' ${lib.concatStringsSep " " ppp-options'}" ;
|
run = ''
|
||||||
|
. ${serviceFns}
|
||||||
|
${ppp}/bin/pppd pty "${pppoe}/bin/pppoe -I $(output ${interface} ifname)" ${lib.concatStringsSep " " ppp-options'}
|
||||||
|
'';
|
||||||
notification-fd = 10;
|
notification-fd = 10;
|
||||||
dependencies = [ interface ];
|
dependencies = [ interface ];
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,18 +25,14 @@ in {
|
||||||
up = lib.concatStringsSep "\n" ups;
|
up = lib.concatStringsSep "\n" ups;
|
||||||
down = "ip link set down dev ${device}";
|
down = "ip link set down dev ${device}";
|
||||||
dependencies = dependencies ++ lib.optional (primary != null) primary;
|
dependencies = dependencies ++ lib.optional (primary != null) primary;
|
||||||
} // {
|
|
||||||
inherit device;
|
|
||||||
};
|
};
|
||||||
address = interface: { family, dependencies ? [], prefixLength, address } @ args:
|
address = interface: { family, dependencies ? [], prefixLength, address } @ args:
|
||||||
let inherit (builtins) toString;
|
let inherit (builtins) toString;
|
||||||
in oneshot {
|
in oneshot {
|
||||||
dependencies = [ interface ] ++ dependencies;
|
dependencies = [ interface ] ++ dependencies;
|
||||||
name = "${interface.device}.addr.${address}";
|
name = "${interface.name}.addr.${address}";
|
||||||
up = "ip address add ${address}/${toString prefixLength} dev ${interface.device} ";
|
up = "ip address add ${address}/${toString prefixLength} dev $(output ${interface} ifname)";
|
||||||
down = "ip address del ${address}/${toString prefixLength} dev ${interface.device} ";
|
down = "ip address del ${address}/${toString prefixLength} dev $(output ${interface} ifname)";
|
||||||
} // {
|
|
||||||
inherit (interface) device;
|
|
||||||
};
|
};
|
||||||
route = { name, target, via, dependencies, dev ? null }:
|
route = { name, target, via, dependencies, dev ? null }:
|
||||||
let with_dev = if dev != null then "dev ${dev}" else "";
|
let with_dev = if dev != null then "dev ${dev}" else "";
|
||||||
|
|
Loading…
Reference in a new issue