59 lines
1.3 KiB
Nix
59 lines
1.3 KiB
Nix
|
{ config
|
||
|
, lib
|
||
|
, pkgs
|
||
|
, inputs
|
||
|
, system
|
||
|
, ...
|
||
|
}: {
|
||
|
environment.systemPackages = with pkgs; [
|
||
|
virtiofsd
|
||
|
virt-manager
|
||
|
virt-viewer
|
||
|
virt-top
|
||
|
spice-gtk
|
||
|
inputs.winapps.packages."${system}".winapps
|
||
|
inputs.winapps.packages."${system}".winapps-launcher
|
||
|
];
|
||
|
|
||
|
boot.kernelModules = [ "kvm-amd" ]; # TODO check cpu and enable intel kvm if needed
|
||
|
|
||
|
virtualisation.waydroid.enable = true;
|
||
|
virtualisation.docker = {
|
||
|
enable = true;
|
||
|
package = pkgs.docker;
|
||
|
|
||
|
storageDriver = lib.mkDefault "overlay2";
|
||
|
liveRestore = false;
|
||
|
autoPrune.enable = true;
|
||
|
};
|
||
|
|
||
|
security.wrappers.spice-client-glib-usb-acl-helper = {
|
||
|
owner = "root";
|
||
|
group = "root";
|
||
|
# capabilities = "cap_fowner+ep";
|
||
|
setuid = true;
|
||
|
source = "${pkgs.spice-gtk}/bin/spice-client-glib-usb-acl-helper";
|
||
|
};
|
||
|
|
||
|
virtualisation.libvirtd = {
|
||
|
enable = true;
|
||
|
package = pkgs.libvirt;
|
||
|
|
||
|
onShutdown = "suspend";
|
||
|
onBoot = "ignore";
|
||
|
|
||
|
qemu = {
|
||
|
package = pkgs.qemu_kvm;
|
||
|
vhostUserPackages = [ pkgs.virtiofsd ];
|
||
|
ovmf.enable = true;
|
||
|
ovmf.packages = [ pkgs.OVMFFull.fd ];
|
||
|
swtpm.enable = true;
|
||
|
runAsRoot = false;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
services.udev.extraRules = ''
|
||
|
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE="0664", GROUP="wheel"
|
||
|
'';
|
||
|
}
|