From e29dd8a2283399b7e046937340509d5aec4b52ba Mon Sep 17 00:00:00 2001 From: Collin Williams <96917990+bluedragon1221@users.noreply.github.com> Date: Wed, 29 Jul 2026 06:54:49 -0500 Subject: changes --- modules/networking/options.nix | 58 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 modules/networking/options.nix (limited to 'modules/networking/options.nix') diff --git a/modules/networking/options.nix b/modules/networking/options.nix new file mode 100644 index 0000000..cc4864b --- /dev/null +++ b/modules/networking/options.nix @@ -0,0 +1,58 @@ +{ + lib, + my-lib, + ... +}: let + inherit (my-lib.netTypes {inherit lib;}) ipAddr ipAddrCidr; + inherit (lib) mkOption mkEnableOption; +in { + options.collinux.system.network = { + dns.areYouAServer = mkEnableOption "Set up unbound with the *.ganymede resolver and disable resolved stub"; + + static = lib.mkOption { + description = "Set a static IP address for this device on this network. Leave unset to use DHCP"; + type = lib.types.nullOr (lib.types.submodule { + options = { + ip = mkOption { + description = "IP address"; + type = ipAddrCidr; + }; + gateway = mkOption { + description = "default gateway"; + type = ipAddr; + }; + }; + }); + default = null; + }; + + wireless = { + static = lib.mkOption { + description = "Set a preconfigured SSID and PSK for the wireless config"; + type = lib.types.nullOr (lib.types.submodule { + options = { + ssid = mkOption { + description = "SSID for this network"; + type = lib.types.str; + }; + pskFile = mkOption { + description = "Absolute path to a file containing the pre-shared key for this network in the form `psk:`"; + type = lib.types.str; + example = "/run/secrets.d/wifi-psk"; + }; + }; + }); + default = null; + }; + dynamic = mkEnableOption "Enable dynamically joining wireless networks with iwd"; + }; + + wireguard = { + enable = mkEnableOption "Whether to enable Wireguard on this device"; + # peers = lib.types.listOf (lib.types.submodule { + # options = { + # }; + # }); + }; + }; +} -- cgit v1.3.1