refactor(systemModules): move hardware --> device/hardware, add function option

This commit is contained in:
ooks-io 2024-04-24 23:44:06 +12:00
parent 34ad7d3d61
commit 7679a227ac
17 changed files with 23 additions and 7 deletions

View file

@ -0,0 +1,51 @@
{ config, lib, pkgs, ... }:
let
gpu = config.systemModules.hardware.gpu;
inherit (lib) mkIf mkDefault;
inherit (builtins) elem;
production = config.boot.kernelPackages.nvidiaPackages.production;
# beta = config.boot.kernelPackages.nvidiaPackages.beta;
in
{
# TODO: make option to choose nvidia package
config = mkIf (elem gpu.type ["nvidia"]) {
hardware = {
nvidia = {
open = mkDefault true;
package = production;
forceFullCompositionPipeline = true;
nvidiaSettings = false;
nvidiaPersistenced = true;
modesetting.enable = true;
powerManagement = {
enable = mkDefault true;
finegrained = mkDefault false;
};
};
opengl = {
extraPackages = with pkgs; [ nvidia-vaapi-driver ];
extraPackages32 = with pkgs.pkgsi686Linux; [ nvidia-vaapi-driver ];
};
};
environment.systemPackages = with pkgs; [
libva
libva-utils
vulkan-loader
vulkan-validation-layers
vulkan-tools
vulkan-extension-layer
mesa
nvtopPackages.nvidia
];
environment.sessionVariables = {
LIBVA_DRIVER_NAME = "nvidia";
NVD_BACKEND = "direct";
};
};
}