diff options
author | Maximilian Bosch <maximilian@mbosch.me> | 2024-05-30 18:11:51 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-05-30 18:11:51 +0000 |
commit | ab294204bacaf74b4f64afb5e44ccccd23b68401 (patch) | |
tree | 7c6c4165acfe87ee404bf38b27dee48b68d8abca /nixos | |
parent | d4d0137f3bf7ca725477db8102620dbd75a4edc4 (diff) | |
parent | cf50bd0aa1a0d9271fd0c547f435b5c9a2a0f2c0 (diff) |
Merge pull request #315921 from lheckemann/networkd-simplify-mkif
nixos/networking: use mkIfs on the inner attributes
Diffstat (limited to 'nixos')
-rw-r--r-- | nixos/modules/tasks/network-interfaces-systemd.nix | 76 |
1 files changed, 20 insertions, 56 deletions
diff --git a/nixos/modules/tasks/network-interfaces-systemd.nix b/nixos/modules/tasks/network-interfaces-systemd.nix index c1241d11de879..d30ed3069f553 100644 --- a/nixos/modules/tasks/network-interfaces-systemd.nix +++ b/nixos/modules/tasks/network-interfaces-systemd.nix @@ -95,64 +95,28 @@ let address = forEach (interfaceIps i) (ip: "${ip.address}/${toString ip.prefixLength}"); routes = forEach (interfaceRoutes i) - (route: mkMerge [ + (route: { # Most of these route options have not been tested. # Please fix or report any mistakes you may find. - (mkIf (route.address != null && route.prefixLength != null) { - Destination = "${route.address}/${toString route.prefixLength}"; - }) - (mkIf (route.options ? fastopen_no_cookie) { - FastOpenNoCookie = route.options.fastopen_no_cookie; - }) - (mkIf (route.via != null) { - Gateway = route.via; - }) - (mkIf (route.type != null) { - Type = route.type; - }) - (mkIf (route.options ? onlink) { - GatewayOnLink = true; - }) - (mkIf (route.options ? initrwnd) { - InitialAdvertisedReceiveWindow = route.options.initrwnd; - }) - (mkIf (route.options ? initcwnd) { - InitialCongestionWindow = route.options.initcwnd; - }) - (mkIf (route.options ? pref) { - IPv6Preference = route.options.pref; - }) - (mkIf (route.options ? mtu) { - MTUBytes = route.options.mtu; - }) - (mkIf (route.options ? metric) { - Metric = route.options.metric; - }) - (mkIf (route.options ? src) { - PreferredSource = route.options.src; - }) - (mkIf (route.options ? protocol) { - Protocol = route.options.protocol; - }) - (mkIf (route.options ? quickack) { - QuickAck = route.options.quickack; - }) - (mkIf (route.options ? scope) { - Scope = route.options.scope; - }) - (mkIf (route.options ? from) { - Source = route.options.from; - }) - (mkIf (route.options ? table) { - Table = route.options.table; - }) - (mkIf (route.options ? advmss) { - TCPAdvertisedMaximumSegmentSize = route.options.advmss; - }) - (mkIf (route.options ? ttl-propagate) { - TTLPropagate = route.options.ttl-propagate == "enabled"; - }) - ]); + Destination = mkIf (route.address != null && route.prefixLength != null) "${route.address}/${toString route.prefixLength}"; + FastOpenNoCookie = mkIf (route.options ? fastopen_no_cookie) route.options.fastopen_no_cookie; + Gateway = mkIf (route.via != null) route.via; + Type = mkIf (route.type != null) route.type; + GatewayOnLink = mkIf (route.options ? onlink) true; + InitialAdvertisedReceiveWindow = mkIf (route.options ? initrwnd) route.options.initrwnd; + InitialCongestionWindow = mkIf (route.options ? initcwnd) route.options.initcwnd; + IPv6Preference = mkIf (route.options ? pref) route.options.pref; + MTUBytes = mkIf (route.options ? mtu) route.options.mtu; + Metric = mkIf (route.options ? metric) route.options.metric; + PreferredSource = mkIf (route.options ? src) route.options.src; + Protocol = mkIf (route.options ? protocol) route.options.protocol; + QuickAck = mkIf (route.options ? quickack) route.options.quickack; + Scope = mkIf (route.options ? scope) route.options.scope; + Source = mkIf (route.options ? from) route.options.from; + Table = mkIf (route.options ? table) route.options.table; + TCPAdvertisedMaximumSegmentSize = mkIf (route.options ? advmss) route.options.advmss; + TTLPropagate = mkIf (route.options ? ttl-propagate) route.options.ttl-propagate == "enabled"; + }); networkConfig.IPv6PrivacyExtensions = "kernel"; linkConfig = optionalAttrs (i.macAddress != null) { MACAddress = i.macAddress; |