aboutsummaryrefslogtreecommitdiff
path: root/nvidia.nix
blob: c6f08a937643b9fb70d24bb1ea0fc621de5621f7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
{ config, pkgs, ... }:
let unstable = import <nixos-unstable> { config.allowUnfree = true; };
in {
  hardware.graphics.enable = true;
  hardware.nvidia = {
    modesetting.enable = true;
    package = config.boot.kernelPackages.nvidiaPackages.stable;
    nvidiaSettings = true;
    open = true;
  };
  boot.kernelParams = [ "acpi_backlight=video" ];
  boot.initrd.kernelModules = [ "nvidia" "hp_wmi" ];
  services.xserver.videoDrivers = [ "nvidia" ];
  nixpkgs.config.cudaSupport = true;

  environment.systemPackages = with pkgs; [
    linuxPackages.nvidia_x11
    unstable.cudaPackages.cuda_cudart
    unstable.cudaPackages.cudatoolkit
  ];
  environment.sessionVariables = {
    CUDA_HOME = "${pkgs.cudatoolkit}";
    CUDA_PATH = "${pkgs.cudatoolkit}";
    LD_LIBRARY_PATH = "${pkgs.linuxPackages.nvidia_x11}/lib";
  };
}