30 lines
580 B
Nix
30 lines
580 B
Nix
{
|
|
lib,
|
|
config,
|
|
...
|
|
}:
|
|
with lib; let
|
|
cfg = config.wireless.wifi;
|
|
in {
|
|
options = {
|
|
wireless.wifi.enable =
|
|
mkEnableOption "enables wifi with iwd and MAC address randomisation";
|
|
};
|
|
config = mkIf cfg.enable {
|
|
networking = {
|
|
networkmanager.wifi = {
|
|
backend = "iwd";
|
|
macAddress = "random";
|
|
scanRandMacAddress = true;
|
|
};
|
|
wireless.iwd = {
|
|
enable = true;
|
|
settings = {
|
|
General.AddressRandomization = "network";
|
|
Settings.AlwaysRandomizeAddress = true;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|