refactor: complete rewrite
This commit is contained in:
parent
19a4bbda3c
commit
8e81943cf9
399 changed files with 3396 additions and 8042 deletions
32
modules/nixos/hardware/gpu/amd.nix
Normal file
32
modules/nixos/hardware/gpu/amd.nix
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
inherit (config.ooknet.hardware) gpu;
|
||||
inherit (lib) mkIf mkDefault;
|
||||
inherit (builtins) attrValues;
|
||||
in {
|
||||
config = mkIf (gpu.type == "amd") {
|
||||
hardware.graphics = {
|
||||
extraPackages = attrValues {
|
||||
inherit
|
||||
(pkgs)
|
||||
vulkan-tools
|
||||
vulkan-loader
|
||||
vulkan-extension-layer
|
||||
vulkan-validation-layers
|
||||
mesa
|
||||
;
|
||||
};
|
||||
extraPackages32 = [pkgs.driversi686Linux.amdvlk];
|
||||
};
|
||||
boot = {
|
||||
initrd.kernelModules = ["amdgpu"];
|
||||
kernelModules = ["amdgpu"];
|
||||
};
|
||||
environment.systemPackages = [pkgs.nvtopPackages.amd];
|
||||
services.xserver.videoDrivers = mkDefault ["modesetting" "amdgpu"];
|
||||
};
|
||||
}
|
||||
7
modules/nixos/hardware/gpu/default.nix
Normal file
7
modules/nixos/hardware/gpu/default.nix
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
imports = [
|
||||
./amd.nix
|
||||
./intel.nix
|
||||
./nvidia.nix
|
||||
];
|
||||
}
|
||||
39
modules/nixos/hardware/gpu/intel.nix
Normal file
39
modules/nixos/hardware/gpu/intel.nix
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
inherit (config.ooknet.hardware) gpu;
|
||||
inherit (lib) mkIf;
|
||||
inherit (builtins) attrValues;
|
||||
in {
|
||||
config = mkIf (gpu.type == "intel") {
|
||||
services.xserver.videoDrivers = ["modesetting"];
|
||||
hardware.graphics = {
|
||||
extraPackages = attrValues {
|
||||
inherit
|
||||
(pkgs)
|
||||
vaapiIntel
|
||||
vaapiVdpau
|
||||
libvdpau-va-gl
|
||||
intel-compute-runtime
|
||||
intel-media-driver
|
||||
;
|
||||
};
|
||||
extraPackages32 = attrValues {
|
||||
inherit
|
||||
(pkgs.pkgsi686Linux)
|
||||
vaapiIntel
|
||||
vaapiVdpau
|
||||
libvdpau-va-gl
|
||||
intel-media-driver
|
||||
;
|
||||
};
|
||||
};
|
||||
boot.initrd.kernelModules = ["i915"];
|
||||
environment.variables = mkIf config.hardware.graphics.enable {
|
||||
VDPAU_DRIVER = "va_gl";
|
||||
};
|
||||
};
|
||||
}
|
||||
64
modules/nixos/hardware/gpu/nvidia.nix
Normal file
64
modules/nixos/hardware/gpu/nvidia.nix
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
inherit (config.ooknet.hardware) gpu;
|
||||
inherit (lib) mkIf mkDefault;
|
||||
inherit (builtins) attrValues;
|
||||
# production = config.boot.kernelPackages.nvidiaPackages.production;
|
||||
inherit (config.boot.kernelPackages.nvidiaPackages) beta;
|
||||
in {
|
||||
config = mkIf (gpu.type == "nvidia") {
|
||||
# need this even if using wayland
|
||||
services.xserver.videoDrivers = ["nvidia"];
|
||||
hardware = {
|
||||
nvidia = {
|
||||
open = false;
|
||||
package = beta;
|
||||
forceFullCompositionPipeline = true;
|
||||
nvidiaSettings = false;
|
||||
nvidiaPersistenced = true;
|
||||
modesetting.enable = true;
|
||||
powerManagement = {
|
||||
enable = mkDefault false;
|
||||
finegrained = mkDefault false;
|
||||
};
|
||||
};
|
||||
graphics = {
|
||||
extraPackages = [pkgs.nvidia-vaapi-driver];
|
||||
extraPackages32 = [pkgs.pkgsi686Linux.nvidia-vaapi-driver];
|
||||
};
|
||||
};
|
||||
environment.systemPackages = attrValues {
|
||||
inherit
|
||||
(pkgs)
|
||||
libva
|
||||
libva-utils
|
||||
vulkan-loader
|
||||
vulkan-validation-layers
|
||||
vulkan-tools
|
||||
vulkan-extension-layer
|
||||
mesa
|
||||
;
|
||||
inherit (pkgs.nvtopPackages) nvidia;
|
||||
};
|
||||
environment.sessionVariables = {
|
||||
LIBVA_DRIVER_NAME = "nvidia";
|
||||
NVD_BACKEND = "direct";
|
||||
};
|
||||
|
||||
# https://github.com/ventureoo/nvidia-tweaks
|
||||
services.udev.extraRules = ''
|
||||
ACTION=="bind", SUBSYSTEM=="pci", DRIVERS=="nvidia", ATTR{vendor}=="0x10de", ATTR{class}=="0x03[0-9]*", TEST=="power/control", ATTR{power/control}="auto"
|
||||
ACTION=="unbind", SUBSYSTEM=="pci", DRIVERS=="nvidia", ATTR{vendor}=="0x10de", ATTR{class}=="0x03[0-9]*", TEST=="power/control", ATTR{power/control}="on"
|
||||
'';
|
||||
boot.kernelParams = [
|
||||
"nvidia.NVreg_UsePageAttributeTable=1"
|
||||
"nvidia.NVreg_InitializeSystemMemoryAllocations=0"
|
||||
"nvidia.NVreg_EnableStreamMemOPs=1"
|
||||
"nvidia.NVreg_RegistryDwords=__REGISTRYDWORDS"
|
||||
];
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue