35 lines
892 B
Nix
35 lines
892 B
Nix
{
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}:
|
|
{
|
|
options.my.services.nvidia.enable = lib.mkEnableOption "enable";
|
|
config = lib.mkIf config.my.services.nvidia.enable {
|
|
boot.kernelParams = lib.mkIf (config.networking.hostName == "workstation") [ "nvidia-drm.fbdev=1" ];
|
|
services.xserver.videoDrivers = [ "nvidia" ];
|
|
hardware = {
|
|
opengl = {
|
|
enable = true;
|
|
driSupport = true;
|
|
driSupport32Bit = true;
|
|
extraPackages = with pkgs; [
|
|
nvidia-vaapi-driver
|
|
vaapiVdpau
|
|
libvdpau-va-gl
|
|
vulkan-loader
|
|
mesa
|
|
];
|
|
};
|
|
nvidia = {
|
|
open = (config.networking.hostName == "workstation");
|
|
package = config.boot.kernelPackages.nvidiaPackages.stable;
|
|
modesetting.enable = true;
|
|
powerManagement.enable = true;
|
|
powerManagement.finegrained = false;
|
|
};
|
|
};
|
|
};
|
|
}
|