aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/pkgs/os-specific/linux/nvidia-x11
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/os-specific/linux/nvidia-x11')
-rwxr-xr-xnixpkgs/pkgs/os-specific/linux/nvidia-x11/builder.sh21
-rw-r--r--nixpkgs/pkgs/os-specific/linux/nvidia-x11/default.nix12
2 files changed, 15 insertions, 18 deletions
diff --git a/nixpkgs/pkgs/os-specific/linux/nvidia-x11/builder.sh b/nixpkgs/pkgs/os-specific/linux/nvidia-x11/builder.sh
index 2b1b37db344..b4c6952d44d 100755
--- a/nixpkgs/pkgs/os-specific/linux/nvidia-x11/builder.sh
+++ b/nixpkgs/pkgs/os-specific/linux/nvidia-x11/builder.sh
@@ -59,15 +59,24 @@ installPhase() {
mv $i/lib/libvdpau* $i/lib/vdpau
# Install ICDs, make absolute paths.
+ # Be careful not to modify any original files because this runs twice.
+
+ # OpenCL
sed -E "s#(libnvidia-opencl)#$i/lib/\\1#" nvidia.icd > nvidia.icd.fixed
install -Dm644 nvidia.icd.fixed $i/etc/OpenCL/vendors/nvidia.icd
- if [ -e nvidia_icd.json.template ]; then
- # template patching for version < 435
- sed "s#__NV_VK_ICD__#$i/lib/libGLX_nvidia.so#" nvidia_icd.json.template > nvidia_icd.json
- fi
- if [ -e nvidia_icd.json ]; then
- install -Dm644 nvidia_icd.json $i/share/vulkan/icd.d/nvidia.json
+
+ # Vulkan
+ if [ -e nvidia_icd.json.template ] || [ -e nvidia_icd.json ]; then
+ if [ -e nvidia_icd.json.template ]; then
+ # template patching for version < 435
+ sed "s#__NV_VK_ICD__#$i/lib/libGLX_nvidia.so#" nvidia_icd.json.template > nvidia_icd.json.fixed
+ else
+ sed -E "s#(libGLX_nvidia)#$i/lib/\\1#" nvidia_icd.json > nvidia_icd.json.fixed
+ fi
+ install -Dm644 nvidia_icd.json.fixed $i/share/vulkan/icd.d/nvidia.json
fi
+
+ # EGL
if [ "$useGLVND" = "1" ]; then
sed -E "s#(libEGL_nvidia)#$i/lib/\\1#" 10_nvidia.json > 10_nvidia.json.fixed
install -Dm644 10_nvidia.json.fixed $i/share/glvnd/egl_vendor.d/nvidia.json
diff --git a/nixpkgs/pkgs/os-specific/linux/nvidia-x11/default.nix b/nixpkgs/pkgs/os-specific/linux/nvidia-x11/default.nix
index c41ce5994a1..e3affca1220 100644
--- a/nixpkgs/pkgs/os-specific/linux/nvidia-x11/default.nix
+++ b/nixpkgs/pkgs/os-specific/linux/nvidia-x11/default.nix
@@ -39,18 +39,6 @@ rec {
sha256_64bit = "0h0jcckqpd63vaj95lvdgj2sbbn9y1ri1xx7r2snxfx0plhwz46n";
settingsSha256 = "1w5nkxs7a40mq0qf97nhfazdqhfn1bvr54v50s8p0ggixb6vdm3l";
persistencedSha256 = "02v76202qcnh8hvg4y9wmk9swdlv7z39ppfd1c850nlv158vn5nf";
-
- patches = [
- (fetchurl {
- url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/kernel-4.16.patch?h=2ad07241ea525a6b6b555b6cb96a97634a4b2cb0";
- sha256 = "11b3dp0na496rn13v5q4k66bf61174800g36rcwj42r0xj9cfak2";
- })
-
- (fetchurl {
- url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/kernel-5.1.patch?h=42d50ef8d6048608d18bdf2c296dd335260c5a1a";
- sha256 = "03v46ym2bcckg9q2xrilkg21hfiwypr6gl4jmly2q3m4yza9ja6r";
- })
- ];
};
legacy_340 = generic {