71 lines
1.6 KiB
Text
71 lines
1.6 KiB
Text
|
|
{
|
||
|
|
flake-file.inputs = {
|
||
|
|
nixos-vfio.url = "github:j-brn/nixos-vfio";
|
||
|
|
nixos-vfio.inputs.nixpkgs.follows = "nixpkgs";
|
||
|
|
};
|
||
|
|
|
||
|
|
den.aspects = {
|
||
|
|
kirakira = {
|
||
|
|
nixos =
|
||
|
|
{ inputs, config, pkgs, lib, ... }:
|
||
|
|
{
|
||
|
|
imports = [
|
||
|
|
inputs.nixos-vfio.nixosModules.vfio
|
||
|
|
];
|
||
|
|
|
||
|
|
virtualisation.libvirtd = {
|
||
|
|
deviceACL = [
|
||
|
|
"/dev/kvm"
|
||
|
|
"/dev/kvmfr0"
|
||
|
|
"/dev/kvmfr1"
|
||
|
|
"/dev/kvmfr2"
|
||
|
|
"/dev/shm/scream"
|
||
|
|
"/dev/shm/looking-glass"
|
||
|
|
"/dev/null"
|
||
|
|
"/dev/full"
|
||
|
|
"/dev/zero"
|
||
|
|
"/dev/random"
|
||
|
|
"/dev/urandom"
|
||
|
|
"/dev/ptmx"
|
||
|
|
"/dev/kvm"
|
||
|
|
"/dev/kqemu"
|
||
|
|
"/dev/rtc"
|
||
|
|
"/dev/hpet"
|
||
|
|
"/dev/vfio/vfio"
|
||
|
|
];
|
||
|
|
};
|
||
|
|
|
||
|
|
virtualisation.vfio = {
|
||
|
|
enable = true;
|
||
|
|
IOMMUType = "intel";
|
||
|
|
devices = [ # run `lspci -nn` for check
|
||
|
|
"1002:73df" # amd graphic card
|
||
|
|
"8086:4682" # intel uhd
|
||
|
|
];
|
||
|
|
};
|
||
|
|
|
||
|
|
virtualisation.kvmfr = {
|
||
|
|
enable = true;
|
||
|
|
devices = lib.singleton {
|
||
|
|
size = 128;
|
||
|
|
permissions = {
|
||
|
|
user = "kirbara"; #unsolved
|
||
|
|
mode = "0777";
|
||
|
|
};
|
||
|
|
};
|
||
|
|
};
|
||
|
|
|
||
|
|
# boot.blacklistedKernelModules = [
|
||
|
|
# "amdgpu"
|
||
|
|
# "radeon"
|
||
|
|
# ];
|
||
|
|
|
||
|
|
environment.systemPackages = [
|
||
|
|
pkgs.looking-glass-client
|
||
|
|
pkgs.pciutils
|
||
|
|
];
|
||
|
|
};
|
||
|
|
};
|
||
|
|
};
|
||
|
|
}
|