diff options
author | Jörg Thalheim <joerg@thalheim.io> | 2020-03-13 07:00:17 +0000 |
---|---|---|
committer | Jörg Thalheim <joerg@thalheim.io> | 2020-03-13 07:04:26 +0000 |
commit | 505d241ee3905166206d9a8a2f13a01b60659ed2 (patch) | |
tree | 68dd86755c8db8875af34353ea8ba00f722a8fab /nixos/modules/virtualisation | |
parent | 85aae79ca1dbdd592f631ce2d6719f648c35f0e3 (diff) | |
download | nixlib-505d241ee3905166206d9a8a2f13a01b60659ed2.tar nixlib-505d241ee3905166206d9a8a2f13a01b60659ed2.tar.gz nixlib-505d241ee3905166206d9a8a2f13a01b60659ed2.tar.bz2 nixlib-505d241ee3905166206d9a8a2f13a01b60659ed2.tar.lz nixlib-505d241ee3905166206d9a8a2f13a01b60659ed2.tar.xz nixlib-505d241ee3905166206d9a8a2f13a01b60659ed2.tar.zst nixlib-505d241ee3905166206d9a8a2f13a01b60659ed2.zip |
nixos/kvmgt: add udev rules for unprivileged access
Diffstat (limited to 'nixos/modules/virtualisation')
-rw-r--r-- | nixos/modules/virtualisation/kvmgt.nix | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/nixos/modules/virtualisation/kvmgt.nix b/nixos/modules/virtualisation/kvmgt.nix index 355f4770c502..0902d2dc2cb0 100644 --- a/nixos/modules/virtualisation/kvmgt.nix +++ b/nixos/modules/virtualisation/kvmgt.nix @@ -19,7 +19,8 @@ in { virtualisation.kvmgt = { enable = mkEnableOption '' KVMGT (iGVT-g) VGPU support. Allows Qemu/KVM guests to share host's Intel integrated graphics card. - Currently only one graphical device can be shared + Currently only one graphical device can be shared. To allow users to access the device without root add them + to the kvm group: <literal>users.extraUsers.<yourusername>.extraGroups = [ "kvm" ];</literal> ''; # multi GPU support is under the question device = mkOption { @@ -35,9 +36,7 @@ in { and find info about device via <command>cat /sys/bus/pci/devices/*/mdev_supported_types/i915-GVTg_V5_4/description</command> ''; example = { - i915-GVTg_V5_8 = { - uuid = "a297db4a-f4c2-11e6-90f6-d3b88d6c9525"; - }; + i915-GVTg_V5_8.uuid = "a297db4a-f4c2-11e6-90f6-d3b88d6c9525"; }; }; }; @@ -62,6 +61,10 @@ in { } ) cfg.vgpus; + services.udev.extraRules = '' + SUBSYSTEM=="vfio", OWNER="root", GROUP="kvm" + ''; + systemd.services = mapAttrs' (name: value: nameValuePair "kvmgt-${name}" { description = "KVMGT VGPU ${name}"; |