diff --git a/hardware/wle900vx/ath10k-override-eeprom-regulatory-domain.patch b/hardware/wle-regulatory-domain/ath10k-override-eeprom-regulatory-domain.patch similarity index 100% rename from hardware/wle900vx/ath10k-override-eeprom-regulatory-domain.patch rename to hardware/wle-regulatory-domain/ath10k-override-eeprom-regulatory-domain.patch diff --git a/hardware/wle-regulatory-domain/default.nix b/hardware/wle-regulatory-domain/default.nix new file mode 100644 index 0000000..3e1993d --- /dev/null +++ b/hardware/wle-regulatory-domain/default.nix @@ -0,0 +1,15 @@ +{ config, lib, pkgs, ... }: { + boot.kernelPatches = [{ + name = "ath10k-override-eeprom-regulatory-domain"; + patch = ./ath10k-override-eeprom-regulatory-domain.patch; + extraConfig = '' + EXPERT y + CFG80211_CERTIFICATION_ONUS y + ATH_REG_DYNAMIC_USER_REG_HINTS y + ATH_REG_DYNAMIC_USER_CERT_TESTING y + ATH_REG_DYNAMIC_USER_CERT_TESTING y + ATH9K_DFS_CERTIFIED y + ATH10K_DFS_CERTIFIED y + ''; + }]; +} diff --git a/hardware/wle600vx.nix b/hardware/wle600vx.nix index b1a2c6d..4b2775c 100644 --- a/hardware/wle600vx.nix +++ b/hardware/wle600vx.nix @@ -1,7 +1,11 @@ # Note: You can either use wel600vx.nix or wle900vx.nix { config, lib, pkgs, ... }: { - #TODO! + imports = [ + ./wle-regulatory-domain + ]; + services.hostapd5ghz.extraConfig = '' ht_capab=[LDPC][HT40][SMPS-STATIC][SHORT-GI-20][SHORT-GI-40][TX-STBC][RX-STBC1][DSSS_CCK-40] + fragm_threshold=-1 ''; } diff --git a/hardware/wle900vx.nix b/hardware/wle900vx.nix index caa2a47..2b9e98a 100644 --- a/hardware/wle900vx.nix +++ b/hardware/wle900vx.nix @@ -1,15 +1,7 @@ { config, lib, pkgs, ... }: { - boot.kernelPatches = [{ - name = "ath10k-override-eeprom-regulatory-domain"; - patch = ./wle900vx/ath10k-override-eeprom-regulatory-domain.patch; - extraConfig = '' - EXPERT y - CFG80211_CERTIFICATION_ONUS y - ATH_REG_DYNAMIC_USER_REG_HINTS y - ATH_REG_DYNAMIC_USER_CERT_TESTING y - ATH_REG_DYNAMIC_USER_CERT_TESTING y - ''; - }]; + imports = [ + ./wle-regulatory-domain + ]; services.hostapd5ghz.extraConfig = '' ht_capab=[LDPC][HT40+][SHORT-GI-20][SHORT-GI-40][TX-STBC][DSSS_CCK-40] diff --git a/host/etzel.nix b/host/etzel.nix index fb8b3ba..e61712b 100644 --- a/host/etzel.nix +++ b/host/etzel.nix @@ -16,10 +16,26 @@ ../role/router-wireless-ap ]; + nix.distributedBuilds = true; + + nix.buildMachines = [ { + hostName = "10.2.1.38"; + system = "x86_64-linux"; + sshUser = "fhauser"; + sshKey = "/root/.ssh/id_ed25519"; + # if the builder supports building for multiple architectures, + # replace the previous line by, e.g., + # systems = ["x86_64-linux" "aarch64-linux"]; + maxJobs = 4; + speedFactor = 2; + supportedFeatures = [ "nixos-test" "benchmark" "big-parallel" "kvm" ]; + mandatoryFeatures = [ ]; + }] ; + services.router = { enable = true; wanInterface = "enp2s0"; - wirelessInterfaces = [ "wlp4s0" "wlp6s0" ]; + #wirelessInterfaces = [ "wlp4s0" "wlp6s0" ]; lanInterfaces = [ "enp1s0" "enp3s0" ]; internalRouterIP = "10.2.2.1"; dhcp = { @@ -36,7 +52,7 @@ wleInterface24Ghz = "wlp4s0"; wleInterface5Ghz = "wlp6s0"; ssid = "testnet"; - passphrase = "testnet"; + passphrase = "testnettestnet"; }; }; diff --git a/role/base/default.nix b/role/base/default.nix index 41eaceb..0aa0710 100644 --- a/role/base/default.nix +++ b/role/base/default.nix @@ -30,6 +30,7 @@ parted borgbackup nixfmt + iw ]; services.fwupd.enable = true; diff --git a/role/router-wireless-ap/default.nix b/role/router-wireless-ap/default.nix index 4f722fc..c9720d2 100644 --- a/role/router-wireless-ap/default.nix +++ b/role/router-wireless-ap/default.nix @@ -72,8 +72,6 @@ in { wpaPassphrase = cfg.passphrase; channel = 36; extraConfig = '' - ${optionalString wle24GhzEnabled - "except-interface=${cfg.wleInterface24Ghz}"} max_num_sta=255 #Details for Connecting Clients via WPA2 TKIP @@ -144,8 +142,6 @@ in { wpaPassphrase = cfg.passphrase; channel = 6; extraConfig = '' - ${optionalString wle5GhzEnabled - "except-interface=${cfg.wleInterface5Ghz}"} #macaddr_acl sets options for mac address filtering. 0 means "accept unless in deny list" macaddr_acl=0