35 lines
974 B
Nix
35 lines
974 B
Nix
|
{ config, ... }: {
|
||
|
systemd.services.libvirtd = {
|
||
|
path = let
|
||
|
env = pkgs.buildEnv {
|
||
|
name = "qemu-hook-env";
|
||
|
paths = with pkgs; [
|
||
|
libvirt bash util-linux pciutils ripgrep
|
||
|
procps coreutils systemd kmod gawk
|
||
|
];
|
||
|
};
|
||
|
in [ env ];
|
||
|
};
|
||
|
|
||
|
system.activationScripts.libvirt-hooks.text = ''
|
||
|
ln -Tfs /etc/libvirt/hooks /var/lib/libvirt/hooks
|
||
|
ln -Tfs /etc/libvirt/vgabios /var/lib/libvirt/vgabios
|
||
|
'';
|
||
|
|
||
|
environment.etc = {
|
||
|
"libvirt/hooks/qemu".source = ./passthrough/qemu;
|
||
|
"libvirt/hooks/qemu.d/win10/vfio-script.sh".source = ./passthrough/vfio-script.sh;
|
||
|
"libvirt/vgabios/navi22.rom".source = ./passthrough/navi22.rom;
|
||
|
};
|
||
|
|
||
|
systemd.services.hyprland-logout = {
|
||
|
script = "hyprctl dispatch exit";
|
||
|
serviceConfig = {
|
||
|
Type = "oneshot";
|
||
|
User = config.mainuser;
|
||
|
};
|
||
|
path = [
|
||
|
config.home-manager.users.${config.mainuser}.wayland.windowManager.hyprland.package
|
||
|
];
|
||
|
};
|
||
|
}
|