Fediversity/deployment/check/common/utils.nix
Kiara Grouwstra 9ddc71acc3
simplify networking
Signed-off-by: Kiara Grouwstra <kiara@procolix.eu>
2025-10-22 17:16:48 +02:00

53 lines
1.4 KiB
Nix

{
lib,
sources ? import ../../../npins,
...
}:
{
mkNixosConfiguration =
environment: requests:
{ ... }:
{
imports = [
../common/sharedOptions.nix
../common/targetNode.nix
"${sources.nixpkgs}/nixos/modules/profiles/minimal.nix"
"${sources.nixpkgs}/nixos/modules/profiles/qemu-guest.nix"
# systemd-repart
# ../../../infra/common/nixos/repart.nix
# disko
"${sources.disko}/module.nix"
../../../infra/common/proxmox-qemu-vm.nix
];
nixpkgs.hostPlatform = "x86_64-linux";
system.stateVersion = "25.05";
services.qemuGuest.enable = true;
services.openssh.enable = true;
networking = {
firewall.enable = false;
useNetworkd = true;
};
services.cloud-init = {
enable = true;
network.enable = true;
};
users.users =
{
root.openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFZsldWMEsajYysjYsEpNvMOjO4D8L21pTrfQS1T+Hfy"
];
}
// environment.config.resources."operator-environment".login-shell.apply {
resources = lib.filterAttrs (_name: value: value ? login-shell) (
lib.concatMapAttrs (
k': req: lib.mapAttrs' (k: lib.nameValuePair "${k'}.${k}") req.resources
) requests
);
};
};
}