Files
LillyOS/modules/core/nvidia.nix

37 lines
1.3 KiB
Nix

{ config, pkgs, lib, ... }:
let
cfg = config.my;
in
{
config = lib.mkIf cfg.nvidia.enable {
services.xserver.videoDrivers = lib.optionals cfg.nvidia.enable ["nvidia"];
hardware.nvidia = {
modesetting.enable = true;
powerManagement.enable = true;
powerManagement.finegrained = false;
open = true;
nvidiaSettings = false;
# Optionally, you may need to select the appropriate driver version for your specific GPU.
#package = config.boot.kernelPackages.nvidiaPackages.beta;
package =
(config.boot.kernelPackages.nvidiaPackages.mkDriver {
version = "590.48.01";
sha256_64bit = "sha256-ueL4BpN4FDHMh/TNKRCeEz3Oy1ClDWto1LO/LWlr1ok=";
sha256_aarch64 = "sha256-xctt4TPRlOJ6r5S54h5W6PT6/3Zy2R4ASNFPu8TSHKM=";
openSha256 = "sha256-ZpuVZybW6CFN/gz9rx+UJvQ715FZnAOYfHn5jt5Z2C8=";
settingsSha256 = "sha256-ZpuVZybW6CFN/gz9rx+UJvQ715FZnAOYfHn5jt5Z2C8=";
persistencedSha256 = lib.fakeSha256;
});
};
hardware.nvidia-container-toolkit.enable = config.virtualisation.docker.enable;
environment.systemPackages = with pkgs; [
nvidia_oc
nvidia-vaapi-driver
]
++ lib.optionals config.virtualisation.docker.enable [
nvidia-docker
nvidia-container-toolkit
];
};
}