nixos/parts/vm.nix
2025-02-18 20:17:57 +01:00

41 lines
949 B
Nix

{
hostname,
version,
inputs,
...
}: let
username = "vm";
in {
perSystem = {
system,
pkgs,
...
}: {
packages.vm = inputs.nixos-generators.nixosGenerate {
specialArgs = {
inherit inputs system pkgs hostname version username;
};
modules = [
inputs.home-manager.nixosModules.home-manager
inputs.agenix.nixosModules.default
inputs.agenix-rekey.nixosModules.default
./modules/base/user.nix
./modules/required.nix
./modules/shell.nix
./modules/graphical.nix
{
users.users.${username} = {
isNormalUser = true;
extraGroups = ["wheel" "networkmanager" "libvirt" "kvm"];
};
monitors = [{resolution="1920x1080";}];
services.qemuGuest.enable = true;
services.spice-vdagentd.enable = true;
}
];
inherit system;
format = "qcow";
};
};
}