From af13b05dda7a598c51a81a81b92c36d27e599889 Mon Sep 17 00:00:00 2001 From: nocent Date: Thu, 2 Nov 2017 21:57:25 +0000 Subject: [PATCH] networkmanager: add power saving and mac address randomization options for wifi devices --- .../services/networking/networkmanager.nix | 27 ++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/nixos/modules/services/networking/networkmanager.nix b/nixos/modules/services/networking/networkmanager.nix index e03309c87299..6bdae32f72bb 100644 --- a/nixos/modules/services/networking/networkmanager.nix +++ b/nixos/modules/services/networking/networkmanager.nix @@ -32,6 +32,11 @@ let ipv6.ip6-privacy=2 ethernet.cloned-mac-address=${cfg.ethernet.macAddress} wifi.cloned-mac-address=${cfg.wifi.macAddress} + ${optionalString (cfg.wifi.powersave != null) + ''wifi.powersave=${if cfg.wifi.powersave then "3" else "2"}''} + + [device] + wifi.scan-rand-mac-address=${if cfg.wifi.scanRandMacAddress then "yes" else "no"} ''; /* @@ -179,7 +184,27 @@ in { }; ethernet.macAddress = macAddressOpt; - wifi.macAddress = macAddressOpt; + + wifi = { + macAddress = macAddressOpt; + + powersave = mkOption { + type = types.nullOr types.bool; + default = null; + description = '' + Whether to enable Wi-Fi power saving. + ''; + }; + + scanRandMacAddress = mkOption { + type = types.bool; + default = true; + description = '' + Whether to enable MAC address randomization of a Wi-Fi device + during scanning. + ''; + }; + }; useDnsmasq = mkOption { type = types.bool;