nixos/modules/desktop/network.nix

34 lines
1.1 KiB
Nix
Raw Normal View History

2024-03-05 22:57:41 +01:00
{lib, ...}: {
2023-08-12 02:13:50 +02:00
networking = {
2023-08-25 00:57:42 +02:00
# It's a little too much to define every WiFi network declaratively.
# Instead, we enable NetworkManager and the nmtui interface.
2023-08-12 02:13:50 +02:00
networkmanager = {
enable = true;
dns = lib.mkForce "none";
};
};
2023-08-25 00:59:39 +02:00
# Allow our user to configure the network
2024-03-05 22:57:41 +01:00
users.extraGroups.networkmanager.members = ["caspervk"];
2023-08-25 00:59:39 +02:00
# Persist WiFi passwords and other network configuration
environment.persistence."/nix/persist" = {
directories = [
2024-03-05 22:57:41 +01:00
{
directory = "/etc/NetworkManager/system-connections";
user = "root";
group = "root";
mode = "0700";
}
2023-08-25 00:59:39 +02:00
];
};
# systemd-networkd-wait-online can timeout and fail if there are no network
# interfaces available for it to manage. When systemd-networkd is enabled but
# a different service is responsible for managing the system's internet
# connection (for example, NetworkManager), this service is unnecessary and
# can be disabled.
# https://search.nixos.org/options?channel=23.11&show=systemd.network.wait-online.enable
systemd.network.wait-online.enable = false;
2023-08-12 02:13:50 +02:00
}