Nvidia: Difference between revisions
imported>Delan m clarify that some laptops need modesetting omitted in sync mode too |
imported>Mic92 fix indentation |
||
Line 121: | Line 121: | ||
{{file|/etc/nixos/configuration.nix|nix|<nowiki> | {{file|/etc/nixos/configuration.nix|nix|<nowiki> | ||
{ | { | ||
services.xserver.videoDrivers = [ "modesetting" "nvidia" ]; | services.xserver.videoDrivers = [ "modesetting" "nvidia" ]; | ||
hardware.nvidia.optimus_prime = { | hardware.nvidia.optimus_prime = { | ||
enable = true; | enable = true; | ||
Line 176: | Line 173: | ||
{ pkgs ? import <nixpkgs> {} }: | { pkgs ? import <nixpkgs> {} }: | ||
let fhs = pkgs.buildFHSUserEnv { | let | ||
fhs = pkgs.buildFHSUserEnv { | |||
name = "cuda-env"; | |||
targetPkgs = pkgs: with pkgs; [ | |||
git | |||
gitRepo | |||
gnupg | |||
autoconf | |||
curl | |||
procps | |||
gnumake | |||
utillinux | |||
m4 | |||
gperf | |||
unzip | |||
cudatoolkit | |||
linuxPackages.nvidia_x11 | |||
libGLU libGL | |||
xorg.libXi xorg.libXmu freeglut | |||
xorg.libXext xorg.libX11 xorg.libXv xorg.libXrandr zlib | |||
ncurses5 | |||
stdenv.cc | |||
binutils | |||
]; | |||
multiPkgs = pkgs: with pkgs; [ zlib ]; | |||
runScript = "bash"; | |||
profile = '' | |||
export CUDA_PATH=${pkgs.cudatoolkit} | |||
# export LD_LIBRARY_PATH=${pkgs.linuxPackages.nvidia_x11}/lib | |||
export EXTRA_LDFLAGS="-L/lib -L${pkgs.linuxPackages.nvidia_x11}/lib" | |||
export EXTRA_CCFLAGS="-I/usr/include" | |||
''; | |||
}; | |||
in pkgs.stdenv.mkDerivation { | in pkgs.stdenv.mkDerivation { | ||
name = "cuda-env-shell"; | name = "cuda-env-shell"; | ||
Line 222: | Line 220: | ||
pkgs.stdenv.mkDerivation { | pkgs.stdenv.mkDerivation { | ||
name = "cuda-env-shell"; | name = "cuda-env-shell"; | ||
buildInputs = with pkgs; | buildInputs = with pkgs; [ | ||
git gitRepo gnupg autoconf curl | |||
procps gnumake utillinux m4 gperf unzip | |||
cudatoolkit linuxPackages.nvidia_x11 | |||
libGLU libGL | |||
xorg.libXi xorg.libXmu freeglut | |||
xorg.libXext xorg.libX11 xorg.libXv xorg.libXrandr zlib | |||
ncurses5 stdenv.cc binutils | |||
]; | |||
shellHook = '' | shellHook = '' | ||
export CUDA_PATH=${pkgs.cudatoolkit} | export CUDA_PATH=${pkgs.cudatoolkit} | ||
# export LD_LIBRARY_PATH=${pkgs.linuxPackages.nvidia_x11}/lib:${pkgs.ncurses5}/lib | # export LD_LIBRARY_PATH=${pkgs.linuxPackages.nvidia_x11}/lib:${pkgs.ncurses5}/lib | ||
export EXTRA_LDFLAGS="-L/lib -L${pkgs.linuxPackages.nvidia_x11}/lib" | |||
export EXTRA_CCFLAGS="-I/usr/include" | |||
''; | ''; | ||
} | } |