40 lines
869 B
Nix
40 lines
869 B
Nix
{
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}:
|
|
|
|
let
|
|
inherit (lib) mkDefault;
|
|
inherit (lib.utils) isNotEmptyStr;
|
|
in
|
|
{
|
|
config = {
|
|
assertions = [
|
|
{
|
|
assertion = isNotEmptyStr config.networking.domain;
|
|
message = "synix/nixos/common: config.networking.domain cannot be empty.";
|
|
}
|
|
{
|
|
assertion = isNotEmptyStr config.networking.hostName;
|
|
message = "synix/nixos/common: config.networking.hostName cannot be empty.";
|
|
}
|
|
];
|
|
|
|
networking = {
|
|
domain = mkDefault "${config.networking.hostName}.local";
|
|
hostId = mkDefault "8425e349"; # same as NixOS install ISO and nixos-anywhere
|
|
|
|
# NetworkManager
|
|
useDHCP = false;
|
|
networkmanager = {
|
|
enable = true;
|
|
plugins = with pkgs; [
|
|
networkmanager-openconnect
|
|
networkmanager-openvpn
|
|
];
|
|
};
|
|
};
|
|
};
|
|
}
|