{ den, ... }: { den.aspects.desktop-specific.nixos = { config, pkgs, ... }: { imports = [ ./_hardware/desktop-hardware.nix ]; hardware = { graphics = { enable = true; enable32Bit = true; extraPackages = with pkgs; [ nvidia-vaapi-driver libva-vdpau-driver libvdpau-va-gl ]; }; nvidia = { # Required by Wayland modesetting.enable = true; open = false; nvidiaSettings = true; powerManagement.enable = false; powerManagement.finegrained = false; package = config.boot.kernelPackages.nvidiaPackages.stable; }; }; services.xserver.videoDrivers = [ "nvidia" ]; boot = { initrd.kernelModules = [ "nvidia" "nvidia_modeset" "nvidia_uvm" "nvidia_drm" ]; kernelParams = [ "nvidia.NVreg_PreserveVideoMemoryAllocations=1" ]; loader = { grub = { enable = true; device = "nodev"; efiSupport = true; }; efi.canTouchEfiVariables = true; }; }; environment.sessionVariables = { NIXOS_OZONE_WL = "1"; GBM_BACKEND = "nvidia-drm"; __GLX_VENDOR_LIBRARY_NAME = "nvidia"; MOZ_ENABLE_WAYLAND = "1"; MOZ_USE_XINPUT2 = "1"; }; }; }