summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--system/nvidia-driver/README1
-rw-r--r--system/nvidia-driver/nvidia-driver.SlackBuild89
-rw-r--r--system/nvidia-driver/nvidia-driver.info22
-rw-r--r--system/nvidia-driver/nvidia-switch70
4 files changed, 97 insertions, 85 deletions
diff --git a/system/nvidia-driver/README b/system/nvidia-driver/README
index a7800896ff..ad76586bd5 100644
--- a/system/nvidia-driver/README
+++ b/system/nvidia-driver/README
@@ -33,7 +33,6 @@ and remove all links created by nvidia-switch before.
If you forget to do this, you'll have to do the switch manually, or xorg
won't work on next startup. Here are the affected files:
/usr/lib/libGL.so.1.2
- /usr/include/GL/{gl.h glx.h glxext.h glext.h}
/usr/lib/xorg/modules/extensions/{libglx.so libglx.la}
This also requires the nvidia-kernel and libvdpau package from SlackBuilds.org.
diff --git a/system/nvidia-driver/nvidia-driver.SlackBuild b/system/nvidia-driver/nvidia-driver.SlackBuild
index b711add41d..c063fa2340 100644
--- a/system/nvidia-driver/nvidia-driver.SlackBuild
+++ b/system/nvidia-driver/nvidia-driver.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for nvidia-driver
-# Copyright 2007-2010 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2007-2011 Heinz Wiesinger, Amsterdam, The Netherlands
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
# Thanks to Robby Workman for suggestions to improve this script.
PRGNAM=nvidia-driver
-VERSION=256.44
+VERSION=260.19.29
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -43,14 +43,17 @@ PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
TARGET="x86"
SRCSUFFIX=""
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
TARGET="x86"
SRCSUFFIX=""
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
TARGET="x86_64"
SRCSUFFIX="-no-compat32"
LIBDIRSUFFIX="64"
@@ -67,6 +70,12 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
+rm -rf nvidia-installer-$VERSION
+tar xvf $CWD/nvidia-installer-$VERSION.tar.bz2
+rm -rf nvidia-settings-$VERSION
+tar xvf $CWD/nvidia-settings-$VERSION.tar.bz2
+rm -rf nvidia-xconfig-$VERSION
+tar xvf $CWD/nvidia-xconfig-$VERSION.tar.bz2
rm -rf $SRCNAM
sh $CWD/$SRCNAM.run --extract-only
cd $SRCNAM
@@ -74,9 +83,8 @@ chown -R root:root .
chmod -R u+w,go+r-w,a-s .
mkdir -p $PKG/usr/lib$LIBDIRSUFFIX/xorg/modules/{drivers,extensions} \
- $PKG/usr/include/{CL,cuda,GL} $PKG/etc/OpenCL/vendors/ \
- $PKG/usr/lib$LIBDIRSUFFIX/{tls,vdpau} $PKG/usr/{bin,man/man1,sbin} \
- $PKG/usr/share/{applications,pixmaps}
+ $PKG/etc/OpenCL/vendors/ $PKG/usr/lib$LIBDIRSUFFIX/{tls,vdpau} \
+ $PKG/usr/{bin,man/man1,sbin} $PKG/usr/share/{applications,pixmaps}
install -m 755 nvidia_drv.so $PKG/usr/lib$LIBDIRSUFFIX/xorg/modules/drivers/
install -m 755 libglx.so.$VERSION \
@@ -94,32 +102,14 @@ install -m 755 libOpenCL.so.1.0.0 $PKG/usr/lib$LIBDIRSUFFIX/
install -m 755 libnvidia-cfg.so.$VERSION $PKG/usr/lib$LIBDIRSUFFIX/
install -m 755 libnvidia-compiler.so.$VERSION $PKG/usr/lib$LIBDIRSUFFIX/
-for i in glxext.h glext.h gl.h glx.h; do
- install -m 644 $i $PKG/usr/include/GL/$i-nvidia
-done
-
-for i in cuda.h cudaGL.h cudaVDPAU.h; do
- install -m 644 $i $PKG/usr/include/cuda/$i
-done
-
-for i in cl.h cl_gl.h cl_platform.h; do
- install -m 644 $i $PKG/usr/include/CL/$i
-done
-
install -m 644 nvidia.icd $PKG/etc/OpenCL/vendors/
# # Next come the apps
-for i in nvidia-installer nvidia-xconfig nvidia-settings \
- nvidia-smi nvidia-bug-report.sh; do
+for i in nvidia-smi nvidia-bug-report.sh; do
install -m 755 $i $PKG/usr/bin/
done
-install -m 644 nvidia-settings.desktop $PKG/usr/share/applications/
-install -m 644 nvidia-settings.png $PKG/usr/share/pixmaps/
-
-for i in *.1.gz; do
- install -m 644 $i $PKG/usr/man/man1/$i
-done
+install -m 644 nvidia-smi.1.gz $PKG/usr/man/man1/
# symlinks
cd $PKG/usr/lib$LIBDIRSUFFIX
@@ -144,6 +134,52 @@ cd $PKG/usr/lib$LIBDIRSUFFIX/xorg/modules
ln -sf libnvidia-wfb.so.$VERSION libnvidia-wfb.so.1
cd -
+# Compiling nvidia-installer from source
+cd $TMP/nvidia-installer-$VERSION
+ chown -R root:root .
+ chmod -R u+w,go+r-w,a-s .
+
+ CFLAGS="$SLKCFLAGS" \
+ LDFLAGS="-lz" \
+ make
+
+ install -m 755 _out/Linux_$TARGET/nvidia-installer $PKG/usr/bin/
+ install -m 644 _out/Linux_$TARGET/nvidia-installer.1.gz $PKG/usr/man/man1/
+cd -
+
+# Compiling nvidia-settings from source
+cd $TMP/nvidia-settings-$VERSION
+ chown -R root:root .
+ chmod -R u+w,go+r-w,a-s .
+
+ cd src/libXNVCtrl
+ make clean
+ CFLAGS="$SLKCFLAGS" \
+ make
+ cd ../../
+
+ CFLAGS="$SLKCFLAGS" \
+ make
+
+ install -m 755 _out/Linux_$TARGET/nvidia-settings $PKG/usr/bin/
+ install -m 644 _out/Linux_$TARGET/nvidia-settings.1.gz $PKG/usr/man/man1/
+ install -m 644 doc/nvidia-settings.desktop $PKG/usr/share/applications/
+ install -m 644 doc/nvidia-settings.png $PKG/usr/share/pixmaps/
+cd ../
+
+# Compiling nvidia-xconfig from source
+cd $TMP/nvidia-xconfig-$VERSION
+ chown -R root:root .
+ chmod -R u+w,go+r-w,a-s .
+
+ CFLAGS="$SLKCFLAGS" \
+ make
+
+ install -m 755 _out/Linux_$TARGET/nvidia-xconfig $PKG/usr/bin/
+ install -m 644 _out/Linux_$TARGET/nvidia-xconfig.1.gz $PKG/usr/man/man1/
+cd -
+
+
# Self written bash script which I use to switch between nvidia and nv.
# It is now also used by doinst.sh to switch to the nvidia-driver right
# after installation.
@@ -158,8 +194,11 @@ sed -i "s|__UTILS_PATH__|/usr/bin|" \
$PKG/usr/share/applications/nvidia-settings.desktop
sed -i "s|__PIXMAP_PATH__|/usr/share/pixmaps|" \
$PKG/usr/share/applications/nvidia-settings.desktop
+sed -i "s|__NVIDIA_SETTINGS_DESKTOP_CATEGORIES__|Application;Settings;|" \
+ $PKG/usr/share/applications/nvidia-settings.desktop
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cd $TMP/$SRCNAM
cp -a LICENSE NVIDIA_Changelog README.txt html $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README.Slackware
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/system/nvidia-driver/nvidia-driver.info b/system/nvidia-driver/nvidia-driver.info
index b92d3b87d3..97257a208d 100644
--- a/system/nvidia-driver/nvidia-driver.info
+++ b/system/nvidia-driver/nvidia-driver.info
@@ -1,10 +1,22 @@
PRGNAM="nvidia-driver"
-VERSION="256.44"
+VERSION="260.19.29"
HOMEPAGE="http://www.nvidia.com"
-DOWNLOAD="ftp://download.nvidia.com/XFree86/Linux-x86/256.44/NVIDIA-Linux-x86-256.44.run"
-MD5SUM="cb61b75a305e78291db313dae39c625b"
-DOWNLOAD_x86_64="ftp://download.nvidia.com/XFree86/Linux-x86_64/256.44/NVIDIA-Linux-x86_64-256.44-no-compat32.run"
-MD5SUM_x86_64="19fdd60520df7f50ae7dbb24e473872b"
+DOWNLOAD="ftp://download.nvidia.com/XFree86/Linux-x86/260.19.29/NVIDIA-Linux-x86-260.19.29.run \
+ ftp://download.nvidia.com/XFree86/nvidia-installer/nvidia-installer-260.19.29.tar.bz2 \
+ ftp://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-260.19.29.tar.bz2 \
+ ftp://download.nvidia.com/XFree86/nvidia-xconfig/nvidia-xconfig-260.19.29.tar.bz2"
+MD5SUM="e982a05a85c68130acfe1d48086250e3 \
+ 743cdfc95507f19ad71b80dbfe7826e9 \
+ 39e66889a185c220ac582b38e05dfb6b \
+ 4417c24d1187abec65ed42812f16a505"
+DOWNLOAD_x86_64="ftp://download.nvidia.com/XFree86/Linux-x86_64/260.19.29/NVIDIA-Linux-x86_64-260.19.29-no-compat32.run \
+ ftp://download.nvidia.com/XFree86/nvidia-installer/nvidia-installer-260.19.29.tar.bz2 \
+ ftp://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-260.19.29.tar.bz2 \
+ ftp://download.nvidia.com/XFree86/nvidia-xconfig/nvidia-xconfig-260.19.29.tar.bz2"
+MD5SUM_x86_64="0583668d86f7318d99def3ed3e1cc4bc \
+ 743cdfc95507f19ad71b80dbfe7826e9 \
+ 39e66889a185c220ac582b38e05dfb6b \
+ 4417c24d1187abec65ed42812f16a505"
MAINTAINER="Heinz Wiesinger"
EMAIL="pprkut@liwjatan.at"
APPROVED="dsomero"
diff --git a/system/nvidia-driver/nvidia-switch b/system/nvidia-driver/nvidia-switch
index 41c9c23857..e88534c40a 100644
--- a/system/nvidia-driver/nvidia-switch
+++ b/system/nvidia-driver/nvidia-switch
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2007-2009 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2007-2011 Heinz Wiesinger, Amsterdam, The Netherlands
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,7 +20,7 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# nvidia-switch utility 0.9.0
+# nvidia-switch utility 0.9.1
#
# A tool to switch between nvidia-binary-driver and stock xorg-driver
# if both are installed in parallel.
@@ -70,27 +70,18 @@ setup_link(){
incs(){
cd "$INC"
-if [ "$2" = "cleanup" ]; then
- CMD="mv"
- THREE="$1"
-else
- CMD="ln -s"
- THREE="$2"
-fi
-
for i in glxext.h glext.h glx.h gl.h; do
if [ -L "$i" ]; then
rm -f "$i"
- $CMD "$i-$THREE" "$i"
+ mv "$i-xorg" "$i"
elif [ -e "$i" ]; then
- if [ "$2" = "cleanup" ]; then
- rm -f "$i-$1"
- else
- mv "$i" "$i-$1"
- ln -s "$i-$THREE" "$i"
+ if [ -e "$i-xorg" ]; then
+ rm -f "$i-xorg"
fi
else
- $CMD "$i-$THREE" "$i"
+ if [ -e "$i-xorg" ]; then
+ mv "$i-xorg" "$i"
+ fi
fi
done
@@ -259,23 +250,6 @@ check(){
fi
}
-check_includes(){
- if [ "$1" = "cleanup" ]; then
- cleanup=""
- cleanup2="exist"
- else
- cleanup="link"
- cleanup2=""
- fi
-
- for i in glext.h glxext.h gl.h glx.h; do
- check $INC $i $cleanup
- check $INC $i-nvidia
- check $INC $i-xorg $cleanup2
- echo ""
- done
-}
-
check_glx(){
if [ "$1" = "xorg" ]; then
xorg="exist"
@@ -350,8 +324,6 @@ check_gl(){
}
nvidia_check(){
- check_includes
-
check_gl "nvidia"
check_glx
@@ -360,8 +332,6 @@ nvidia_check(){
}
xorg_check(){
- check_includes
-
check_gl
check_glx "xorg"
@@ -370,8 +340,6 @@ xorg_check(){
}
cleanup_check(){
- check_includes "cleanup"
-
check_gl
check_glx "cleanup"
@@ -384,7 +352,7 @@ nvidia(){
echo "Make sure the nvidia driver is ENABLED in /etc/X11/xorg.conf."
echo "Otherwise, this may lead to improperly working drivers."
- incs "xorg" "nvidia"
+ incs
lib_nvidia
libgl_nvidia
libs "nvidia"
@@ -402,23 +370,17 @@ xorg(){
echo "Make sure the nvidia driver is DISABLED in /etc/X11/xorg.conf."
echo "Otherwise, this may lead to improperly working drivers."
+ libs_basic
+ libgl_xorg
+ libs ""
if [ "$1" = "cleanup" ]; then
- incs "xorg" "cleanup"
+ libglx_xorg ""
else
- incs "xorg" "xorg"
+ libglx_xorg "xorg"
fi
- libs_basic
- libgl_xorg
- libs ""
- if [ "$1" = "cleanup" ]; then
- libglx_xorg ""
- else
- libglx_xorg "xorg"
- fi
-
- LD_NVIDIA="${LIB}/libGL.so.1.2"
- nvidia_ldconfig $LD_NVIDIA "xorg"
+ LD_NVIDIA="${LIB}/libGL.so.1.2"
+ nvidia_ldconfig $LD_NVIDIA "xorg"
}
usage(){