diff options
author | Silas Schöffel <sils@sils.li> | 2024-04-20 19:24:58 +0200 |
---|---|---|
committer | Silas Schöffel <sils@sils.li> | 2024-04-20 19:24:58 +0200 |
commit | 5ecc3573b82f99ed401e0685eb92a5dfccb7f407 (patch) | |
tree | ff3570ac527d909a7182a22da704215b6c4859fb | |
parent | sils/meta: make declarations nullable (diff) | |
download | nix-config-5ecc3573b82f99ed401e0685eb92a5dfccb7f407.tar.gz nix-config-5ecc3573b82f99ed401e0685eb92a5dfccb7f407.zip |
sils: make networking toggleable
-rw-r--r-- | modules/nixos/sils/networking.nix | 70 | ||||
-rw-r--r-- | modules/nixos/sils/roles.nix | 1 |
2 files changed, 39 insertions, 32 deletions
diff --git a/modules/nixos/sils/networking.nix b/modules/nixos/sils/networking.nix index 8884742..aed4eb4 100644 --- a/modules/nixos/sils/networking.nix +++ b/modules/nixos/sils/networking.nix @@ -1,41 +1,47 @@ { config, self, + lib, ... -}: { - networking = { - enableIPv6 = false; - useDHCP = true; - #nameservers = ["2620:fe::fe" "2620:fe::9" "9.9.9.9" "149.112.112.112"]; - wireless = { - enable = true; - environmentFile = config.age.secrets.wireless.path; - networks = { - # Important: Never forget the second '@'! - "@SSID_N0@".psk = "@PSK_N0@"; - "@SSID_N1@".psk = "@PSK_N1@"; - "@SSID_N2@" = { - hidden = true; - psk = "@PSK_N2@"; +}: let + cfg = config.sils.networking; +in { + options.sils.networking.enable = lib.mkEnableOption "networking"; + config = lib.mkIf cfg.enable { + networking = { + enableIPv6 = false; + useDHCP = true; + #nameservers = ["2620:fe::fe" "2620:fe::9" "9.9.9.9" "149.112.112.112"]; + wireless = { + enable = true; + environmentFile = config.age.secrets.wireless.path; + networks = { + # Important: Never forget the second '@'! + "@SSID_N0@".psk = "@PSK_N0@"; + "@SSID_N1@".psk = "@PSK_N1@"; + "@SSID_N2@" = { + hidden = true; + psk = "@PSK_N2@"; + }; + "@SSID_N3@".psk = "@PSK_N3@"; + "@SSID_N4@" = { + auth = '' + proto=RSN + key_mgmt=WPA-EAP + pairwise=CCMP + auth_alg=OPEN + eap=PEAP + identity="@IDENTITY_N4@" + password="@PSK_N4@" + ca_cert="${self}/files/DNSX-CA.pem" + ''; + }; + "@SSID_N5@".psk = "@PSK_N5@"; }; - "@SSID_N3@".psk = "@PSK_N3@"; - "@SSID_N4@" = { - auth = '' - proto=RSN - key_mgmt=WPA-EAP - pairwise=CCMP - auth_alg=OPEN - eap=PEAP - identity="@IDENTITY_N4@" - password="@PSK_N4@" - ca_cert="${self}/files/DNSX-CA.pem" - ''; + userControlled = { + enable = true; + group = "wheel"; # TODO: Change this? }; - "@SSID_N5@".psk = "@PSK_N5@"; - }; - userControlled = { - enable = true; - group = "wheel"; # TODO: Change this? }; }; }; diff --git a/modules/nixos/sils/roles.nix b/modules/nixos/sils/roles.nix index 73edf85..811c0ea 100644 --- a/modules/nixos/sils/roles.nix +++ b/modules/nixos/sils/roles.nix @@ -5,6 +5,7 @@ in { if roleCmp "laptop" then { basesystem.enable = true; + networking.enable = true; nix-config.enable = true; plymouth.enable = true; theming.enable = true; |