61 lines
No EOL
1.7 KiB
Nix
Executable file
61 lines
No EOL
1.7 KiB
Nix
Executable file
{ config, lib, system, pkgs, modulesPath, inputs, ... }:
|
|
|
|
{
|
|
programs.virt-manager.enable = true;
|
|
virtualisation.spiceUSBRedirection.enable = true;
|
|
virtualisation.libvirtd = {
|
|
enable = true;
|
|
qemu = {
|
|
package = pkgs.qemu_kvm;
|
|
runAsRoot = true;
|
|
swtpm.enable = true;
|
|
ovmf = {
|
|
enable = true;
|
|
packages = [(pkgs.OVMF.override {
|
|
secureBoot = true;
|
|
tpmSupport = true;
|
|
}).fd];
|
|
};
|
|
};
|
|
hooks.qemu = {
|
|
"win11" = ./scripts/vm-win11-hook.sh;
|
|
};
|
|
};
|
|
|
|
systemd.services.libvirtd = {
|
|
path = let
|
|
env = pkgs.buildEnv {
|
|
name = "qemu-hook-env";
|
|
paths = with pkgs; [
|
|
bash
|
|
libvirt
|
|
kmod
|
|
systemd
|
|
ripgrep
|
|
sd
|
|
];
|
|
};
|
|
in
|
|
[ env ];
|
|
|
|
/*preStart =
|
|
''
|
|
mkdir -p /var/lib/libvirt/hooks
|
|
mkdir -p /var/lib/libvirt/hooks/qemu.d/win10/prepare/begin
|
|
mkdir -p /var/lib/libvirt/hooks/qemu.d/win10/release/end
|
|
mkdir -p /var/lib/libvirt/vgabios
|
|
|
|
ln -sf /home/regent/symlinks/qemu /var/lib/libvirt/hooks/qemu
|
|
ln -sf /home/regent/symlinks/kvm.conf /var/lib/libvirt/hooks/kvm.conf
|
|
ln -sf /home/regent/symlinks/start.sh /var/lib/libvirt/hooks/qemu.d/win11/prepare/begin/start.sh
|
|
ln -sf /home/regent/symlinks/stop.sh /var/lib/libvirt/hooks/qemu.d/win11/release/end/stop.sh
|
|
|
|
chmod +x /var/lib/libvirt/hooks/qemu
|
|
chmod +x /var/lib/libvirt/hooks/kvm.conf
|
|
chmod +x /var/lib/libvirt/hooks/qemu.d/win11/prepare/begin/start.sh
|
|
chmod +x /var/lib/libvirt/hooks/qemu.d/win11/release/end/stop.sh
|
|
'';*/
|
|
};
|
|
|
|
users.extraUsers.regent.extraGroups = [ "libvirtd" ];
|
|
} |