diff options
author | Nikolay Amiantov <ab@fmap.me> | 2017-02-11 17:11:18 +0300 |
---|---|---|
committer | Nikolay Amiantov <ab@fmap.me> | 2017-02-19 19:46:01 +0300 |
commit | 22750b36fdd96f0b88a8048e00e6ef4c31106f81 (patch) | |
tree | d83cd4c1988cc876661812bee3a796610250481a /pkgs/os-specific | |
parent | f6eedf08674769a0bf12ec0ce8e3e7d6a8dc3c1b (diff) |
nvidia: support application profiles
Closes #22666.
Diffstat (limited to 'pkgs/os-specific')
-rwxr-xr-x | pkgs/os-specific/linux/nvidia-x11/builder.sh | 7 | ||||
-rw-r--r-- | pkgs/os-specific/linux/nvidia-x11/default.nix | 1 | ||||
-rw-r--r-- | pkgs/os-specific/linux/nvidia-x11/generic.nix | 3 | ||||
-rw-r--r-- | pkgs/os-specific/linux/nvidia-x11/legacy173.nix | 1 | ||||
-rw-r--r-- | pkgs/os-specific/linux/nvidia-x11/settings.nix | 4 |
5 files changed, 15 insertions, 1 deletions
diff --git a/pkgs/os-specific/linux/nvidia-x11/builder.sh b/pkgs/os-specific/linux/nvidia-x11/builder.sh index 7dee6b4776c1..24a2e2cf06ff 100755 --- a/pkgs/os-specific/linux/nvidia-x11/builder.sh +++ b/pkgs/os-specific/linux/nvidia-x11/builder.sh @@ -68,6 +68,13 @@ installPhase() { nuke-refs $i cp $i $bin/lib/modules/$kernelVersion/misc/ done + + # Install application profiles. + if [ "$useProfiles" = "1" ]; then + mkdir -p $bin/share/nvidia + cp nvidia-application-profiles-*-rc $bin/share/nvidia/nvidia-application-profiles-rc + cp nvidia-application-profiles-*-key-documentation $bin/share/nvidia/nvidia-application-profiles-key-documentation + fi fi # All libs except GUI-only are installed now, so fixup them. diff --git a/pkgs/os-specific/linux/nvidia-x11/default.nix b/pkgs/os-specific/linux/nvidia-x11/default.nix index 204ef62138a1..5e26fef6e19d 100644 --- a/pkgs/os-specific/linux/nvidia-x11/default.nix +++ b/pkgs/os-specific/linux/nvidia-x11/default.nix @@ -37,6 +37,7 @@ in settingsSha256 = "0q92xw4fr9p5nbhj1plynm50d32881861daxfwrisywszqijhmlf"; persistencedSha256 = null; useGLVND = false; + useProfiles = false; }; legacy_173 = callPackage ./legacy173.nix { }; diff --git a/pkgs/os-specific/linux/nvidia-x11/generic.nix b/pkgs/os-specific/linux/nvidia-x11/generic.nix index 1398dae0e64f..9e39a6df09c1 100644 --- a/pkgs/os-specific/linux/nvidia-x11/generic.nix +++ b/pkgs/os-specific/linux/nvidia-x11/generic.nix @@ -4,6 +4,7 @@ , settingsSha256 , persistencedSha256 , useGLVND ? true +, useProfiles ? true , preferGtk2 ? false }: @@ -41,7 +42,7 @@ let } else throw "nvidia-x11 does not support platform ${stdenv.system}"; - inherit version useGLVND; + inherit version useGLVND useProfiles; inherit (stdenv) system; outputs = [ "out" ] ++ optional (!libsOnly) "bin"; diff --git a/pkgs/os-specific/linux/nvidia-x11/legacy173.nix b/pkgs/os-specific/linux/nvidia-x11/legacy173.nix index 19199579e77f..6e5b412a9b8f 100644 --- a/pkgs/os-specific/linux/nvidia-x11/legacy173.nix +++ b/pkgs/os-specific/linux/nvidia-x11/legacy173.nix @@ -42,6 +42,7 @@ stdenv.mkDerivation { settings = null; persistenced = null; useGLVND = false; + useProfiles = false; }; meta = { diff --git a/pkgs/os-specific/linux/nvidia-x11/settings.nix b/pkgs/os-specific/linux/nvidia-x11/settings.nix index abf208cff93b..f89997441649 100644 --- a/pkgs/os-specific/linux/nvidia-x11/settings.nix +++ b/pkgs/os-specific/linux/nvidia-x11/settings.nix @@ -24,6 +24,10 @@ stdenv.mkDerivation rec { makeFlags = [ "NV_USE_BUNDLED_LIBJANSSON=0" ]; installFlags = [ "PREFIX=$(out)" ]; + postPatch = lib.optionalString nvidia_x11.useProfiles '' + sed -i 's,/usr/share/nvidia/,${nvidia_x11.bin}/share/nvidia/,g' src/gtk+-2.x/ctkappprofile.c + ''; + preBuild = '' if [ -e src/libXNVCtrl/libXNVCtrl.a ]; then ( cd src/libXNVCtrl |