linuxPackages.nvidia_x11_legacy173: drop
There's no kernel in nixpkgs suitable for this old driver -- tested with 4.4.
This commit is contained in:
parent
f396dd1dcb
commit
25ac79647c
@ -16,8 +16,6 @@ let
|
|||||||
kernelPackages.nvidia_x11
|
kernelPackages.nvidia_x11
|
||||||
else if elem "nvidiaBeta" drivers then
|
else if elem "nvidiaBeta" drivers then
|
||||||
kernelPackages.nvidia_x11_beta
|
kernelPackages.nvidia_x11_beta
|
||||||
else if elem "nvidiaLegacy173" drivers then
|
|
||||||
kernelPackages.nvidia_x11_legacy173
|
|
||||||
else if elem "nvidiaLegacy304" drivers then
|
else if elem "nvidiaLegacy304" drivers then
|
||||||
kernelPackages.nvidia_x11_legacy304
|
kernelPackages.nvidia_x11_legacy304
|
||||||
else if elem "nvidiaLegacy340" drivers then
|
else if elem "nvidiaLegacy340" drivers then
|
||||||
|
@ -1,99 +0,0 @@
|
|||||||
source $stdenv/setup
|
|
||||||
|
|
||||||
dontPatchELF=1 # must keep libXv, $out in RPATH
|
|
||||||
|
|
||||||
|
|
||||||
unpackFile() {
|
|
||||||
sh $src -x
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
buildPhase() {
|
|
||||||
if test -z "$libsOnly"; then
|
|
||||||
echo "Building linux driver against kernel: " $kernel;
|
|
||||||
|
|
||||||
cd usr/src/nv/
|
|
||||||
|
|
||||||
shopt -s nullglob
|
|
||||||
|
|
||||||
for a in $kpatches; do
|
|
||||||
patch -p1 < $a
|
|
||||||
done
|
|
||||||
|
|
||||||
# Workaround: get it to build on kernels that have CONFIG_XEN
|
|
||||||
# set. Disable the test, apply a patch to disable the Xen
|
|
||||||
# functionality.
|
|
||||||
|
|
||||||
#substituteInPlace Makefile.kbuild --replace xen_sanity_check fnord
|
|
||||||
#patch -p1 < $xenPatch
|
|
||||||
|
|
||||||
# Create the module.
|
|
||||||
kernelVersion=$(cd $kernel/lib/modules && ls)
|
|
||||||
sysSource=$(echo $kernel/lib/modules/$kernelVersion/source)
|
|
||||||
sysOut=$(echo $kernel/lib/modules/$kernelVersion/build)
|
|
||||||
unset src # used by the nv makefile
|
|
||||||
make SYSSRC=$sysSource SYSOUT=$sysOut module
|
|
||||||
cd ../../..
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
installPhase() {
|
|
||||||
|
|
||||||
# Install libGL and friends.
|
|
||||||
mkdir -p $out/lib
|
|
||||||
cp -prd usr/lib/* usr/X11R6/lib/libXv* $out/lib/
|
|
||||||
|
|
||||||
ln -snf libGLcore.so.$versionNumber $out/lib/libGLcore.so
|
|
||||||
ln -snf libGLcore.so.$versionNumber $out/lib/libGLcore.so.1
|
|
||||||
ln -snf libGL.so.$versionNumber $out/lib/libGL.so
|
|
||||||
ln -snf libGL.so.$versionNumber $out/lib/libGL.so.1
|
|
||||||
ln -snf libnvidia-cfg.so.$versionNumber $out/lib/libnvidia-cfg.so.1
|
|
||||||
ln -snf libnvidia-tls.so.$versionNumber $out/lib/libnvidia-tls.so.1
|
|
||||||
ln -snf libnvidia-tls.so.$versionNumber $out/lib/tls/libnvidia-tls.so.1
|
|
||||||
ln -snf libXvMCNVIDIA.so.$versionNumber $out/lib/libXvMCNVIDIA_dynamic.so.1
|
|
||||||
ln -snf libcuda.so.$versionNumber $out/lib/libcuda.so.1
|
|
||||||
|
|
||||||
patchelf --set-rpath $out/lib:$glPath $out/lib/libGL.so.*.*
|
|
||||||
patchelf --set-rpath $out/lib:$glPath $out/lib/libXvMCNVIDIA.so.*.*
|
|
||||||
set +e
|
|
||||||
# Legacy nvidia doesn't have cuda
|
|
||||||
patchelf --set-rpath $cudaPath $out/lib/libcuda.so.*.*
|
|
||||||
set -e
|
|
||||||
|
|
||||||
if test -z "$libsOnly"; then
|
|
||||||
|
|
||||||
# Install the kernel module.
|
|
||||||
mkdir -p $out/lib/modules/$kernelVersion/misc
|
|
||||||
cp usr/src/nv/nvidia.ko $out/lib/modules/$kernelVersion/misc
|
|
||||||
|
|
||||||
# Install the X driver.
|
|
||||||
mkdir -p $out/lib/xorg/modules
|
|
||||||
cp -prd usr/X11R6/lib/modules/* $out/lib/xorg/modules/
|
|
||||||
|
|
||||||
ln -snf libnvidia-wfb.so.$versionNumber $out/lib/xorg/modules/libnvidia-wfb.so.1
|
|
||||||
ln -snf libglx.so.$versionNumber $out/lib/xorg/modules/extensions/libglx.so
|
|
||||||
|
|
||||||
patchelf --set-rpath $out/lib $out/lib/xorg/modules/extensions/libglx.so.*.*
|
|
||||||
|
|
||||||
# Install the programs.
|
|
||||||
mkdir -p $out/bin
|
|
||||||
|
|
||||||
for i in nvidia-settings nvidia-xconfig; do
|
|
||||||
cp usr/bin/$i $out/bin/$i
|
|
||||||
patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
|
||||||
--set-rpath $out/lib:$programPath:$glPath $out/bin/$i
|
|
||||||
done
|
|
||||||
|
|
||||||
# Header files etc.
|
|
||||||
cp -prd usr/include usr/share $out
|
|
||||||
|
|
||||||
# Patch the `nvidia-settings.desktop' file.
|
|
||||||
substituteInPlace $out/share/applications/nvidia-settings.desktop \
|
|
||||||
--replace '__UTILS_PATH__' $out/bin \
|
|
||||||
--replace '__PIXMAP_PATH__' $out/share/pixmaps
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
genericBuild
|
|
@ -63,6 +63,4 @@ rec {
|
|||||||
in applyPatches [ "fix-typos" ];
|
in applyPatches [ "fix-typos" ];
|
||||||
patches = maybePatch_drm_legacy;
|
patches = maybePatch_drm_legacy;
|
||||||
};
|
};
|
||||||
|
|
||||||
legacy_173 = callPackage ./legacy173.nix { };
|
|
||||||
}
|
}
|
||||||
|
@ -1,53 +0,0 @@
|
|||||||
{stdenv, fetchurl, kernel, xorg, zlib, gtk2, atk, pango, glib, gdk_pixbuf}:
|
|
||||||
|
|
||||||
let
|
|
||||||
|
|
||||||
versionNumber = "173.14.39";
|
|
||||||
|
|
||||||
in
|
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
|
||||||
name = "nvidia-x11-${versionNumber}-${kernel.version}";
|
|
||||||
|
|
||||||
builder = ./builder-legacy173.sh;
|
|
||||||
|
|
||||||
src =
|
|
||||||
if stdenv.system == "i686-linux" then
|
|
||||||
fetchurl {
|
|
||||||
url = "https://download.nvidia.com/XFree86/Linux-x86/${versionNumber}/NVIDIA-Linux-x86-${versionNumber}-pkg0.run";
|
|
||||||
sha256 = "08xb7s7cxmj4zv4i3645kjhlhhwxiq6km9ixmsw3vv91f7rkb6d0";
|
|
||||||
}
|
|
||||||
else if stdenv.system == "x86_64-linux" then
|
|
||||||
fetchurl {
|
|
||||||
url = "https://download.nvidia.com/XFree86/Linux-x86_64/${versionNumber}/NVIDIA-Linux-x86_64-${versionNumber}-pkg0.run";
|
|
||||||
sha256 = "1p2ls0xj81l8v4n6dbjj3p5wlw1iyhgzyvqcv4h5fdxhhs2cb3md";
|
|
||||||
}
|
|
||||||
else throw "nvidia-x11 does not support platform ${stdenv.system}";
|
|
||||||
|
|
||||||
kernel = kernel.dev;
|
|
||||||
|
|
||||||
hardeningDisable = [ "pic" "format" ];
|
|
||||||
|
|
||||||
inherit versionNumber;
|
|
||||||
|
|
||||||
dontStrip = true;
|
|
||||||
|
|
||||||
glPath = stdenv.lib.makeLibraryPath [xorg.libXext xorg.libX11 xorg.libXrandr];
|
|
||||||
|
|
||||||
cudaPath = stdenv.lib.makeLibraryPath [zlib stdenv.cc.cc];
|
|
||||||
|
|
||||||
programPath = stdenv.lib.makeLibraryPath [ gtk2 atk pango glib gdk_pixbuf xorg.libXv ];
|
|
||||||
|
|
||||||
passthru = {
|
|
||||||
settings = null;
|
|
||||||
persistenced = null;
|
|
||||||
useGLVND = false;
|
|
||||||
useProfiles = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
homepage = http://www.nvidia.com/object/unix.html;
|
|
||||||
description = "X.org driver and kernel module for Legacy NVIDIA graphics cards";
|
|
||||||
license = stdenv.lib.licenses.unfree;
|
|
||||||
};
|
|
||||||
}
|
|
Loading…
x
Reference in New Issue
Block a user