diff --git a/flake.nix b/flake.nix index 0542f4c..e279b0c 100644 --- a/flake.nix +++ b/flake.nix @@ -285,8 +285,9 @@ modules = linuxOfflineGuiModules [ ./nixos/hosts/valere ./nixos/configs/steam.nix - ./nixos/configs/virtualbox.nix + ./nixos/configs/virt-host.nix ./nixos/configs/power-saving.nix + ./nixos/configs/looking-glass.nix ]; }; diff --git a/looking-glass-contrib/IddSampleDriver/iddsampledriver.cat b/looking-glass-contrib/IddSampleDriver/iddsampledriver.cat new file mode 100644 index 0000000..be4a316 Binary files /dev/null and b/looking-glass-contrib/IddSampleDriver/iddsampledriver.cat differ diff --git a/looking-glass-contrib/IddSampleDriver/iddsampledriver.cer b/looking-glass-contrib/IddSampleDriver/iddsampledriver.cer new file mode 100644 index 0000000..4924563 Binary files /dev/null and b/looking-glass-contrib/IddSampleDriver/iddsampledriver.cer differ diff --git a/looking-glass-contrib/IddSampleDriver/iddsampledriver.dll b/looking-glass-contrib/IddSampleDriver/iddsampledriver.dll new file mode 100644 index 0000000..927694d Binary files /dev/null and b/looking-glass-contrib/IddSampleDriver/iddsampledriver.dll differ diff --git a/looking-glass-contrib/IddSampleDriver/iddsampledriver.inf b/looking-glass-contrib/IddSampleDriver/iddsampledriver.inf new file mode 100644 index 0000000..9a41d73 Binary files /dev/null and b/looking-glass-contrib/IddSampleDriver/iddsampledriver.inf differ diff --git a/looking-glass-contrib/IddSampleDriver/installCert.bat b/looking-glass-contrib/IddSampleDriver/installCert.bat new file mode 100644 index 0000000..efeaeb0 --- /dev/null +++ b/looking-glass-contrib/IddSampleDriver/installCert.bat @@ -0,0 +1,7 @@ +@echo off + +set CERTIFICATE="%~dp0IddSampleDriver.cer" + +certutil -addstore -f root %CERTIFICATE% +certutil -addstore -f TrustedPublisher %CERTIFICATE% +pause diff --git a/looking-glass-contrib/IddSampleDriver/option.txt b/looking-glass-contrib/IddSampleDriver/option.txt new file mode 100644 index 0000000..9dbd711 --- /dev/null +++ b/looking-glass-contrib/IddSampleDriver/option.txt @@ -0,0 +1,40 @@ +1 +#lines beginning with "#" are ignored (comment) +#the first line must be a positive integer (small number (<5) is recommended)), NOT comment +#(currently) the location of this file must be "C:\IddSampleDriver\option.txt" (hard-coded) +#numbers should be separated by comma +#spaces before number are allowed + 640, 480, 60 + 800, 600, 60 +1024, 768, 60 +1152, 864, 60 +1280, 600, 60 +1280, 720, 60 +1280, 768, 60 +1280, 800, 60 +1280, 960, 60 +1280, 1024, 60 +1360, 768, 60 +1366, 768, 60 +1400, 1050, 60 +1440, 900, 60 +1600, 900, 60 +1680, 1050, 60 +1600, 1024, 60 +1920, 1080, 60 +1920, 1200, 60 +1920, 1440, 60 +2560, 1440, 60 +2560, 1600, 60 +2880, 1620, 60 +2880, 1800, 60 +3008, 1692, 60 +3200, 1800, 60 +3200, 2400, 60 +3840, 2160, 60 +3840, 2400, 60 +4096, 2304, 60 +4096, 2560, 60 +5120, 2880, 60 +6016, 3384, 60 +7680, 4320, 60 diff --git a/nixos/configs/looking-glass.nix b/nixos/configs/looking-glass.nix index aab9c51..2f2f648 100644 --- a/nixos/configs/looking-glass.nix +++ b/nixos/configs/looking-glass.nix @@ -5,6 +5,7 @@ # vim: et:ts=2:sw=2: { pkgs, + config, ... }: { @@ -33,10 +34,20 @@ # NixOS configuration. # - # Create the SHM file we'll use for display. - systemd.tmpfiles.rules = [ - "f /dev/shm/looking-glass 0660 deprekages kvm -" - ]; + # Set up KVMFR as the shared memory between us and the guest. + boot.extraModulePackages = [ config.boot.kernelPackages.kvmfr ]; + boot.extraModprobeConfig = '' + options kvmfr static_size_mb=128 + ''; + boot.kernelModules = [ "kvmfr" ]; + services.udev.extraRules = '' + SUBSYSTEM=="kvmfr", OWNER="deprekated", GROUP="kvm", MODE="0660" + ''; + + virtualisation.libvirtd.qemu.verbatimConfig = '' + namespaces = [] + cgroup_controllers = [] + ''; # Provide the looking-glass client. environment.systemPackages = [ diff --git a/nixos/configs/virt-host.nix b/nixos/configs/virt-host.nix index e8a2ec2..21cb07d 100644 --- a/nixos/configs/virt-host.nix +++ b/nixos/configs/virt-host.nix @@ -16,4 +16,9 @@ virt-manager spice-gtk ]; + + boot.kernelModules = [ + "kvm-amd" + "kvm-intel" + ]; } diff --git a/nixos/hosts/valere/default.nix b/nixos/hosts/valere/default.nix index fba2c24..5dd7884 100644 --- a/nixos/hosts/valere/default.nix +++ b/nixos/hosts/valere/default.nix @@ -56,7 +56,8 @@ system.nixos.tags = [ "Intel" ]; # Disable the NVIDIA GPU unless we explicitly request it. - hardware.nvidiaOptimus.disable = true; + #hardware.nvidiaOptimus.disable = true; + boot.blacklistedKernelModules = [ "nouveau" ]; specialisation.optimus.configuration = { system.nixos.tags = [ "NVIDIA" ]; @@ -97,7 +98,6 @@ # # Hardware config. # - # Use the latest kernel, and our patches, until the Dell+Alienware stuff makes it into # more mainline kernels. We'll include ccache so we can iterate sanely. boot.kernelPackages = pkgs.linuxPackages_latest;