This commit is contained in:
Manuel 2013-05-01 17:30:32 +00:00
parent e42cb73e4b
commit 57ee578694
5 changed files with 0 additions and 239 deletions

View File

@ -1,70 +0,0 @@
#
# Chakra Packages for Chakra, part of chakra-project.org
#
# maintainer (i686): Phil Miller <philm[at]chakra-project[dog]org>
# maintainer (x86_64): Manuel Tortosa <manutortosa[at]chakra-project[dot]org>
pkgname=nvidia-96xx-utils
pkgver=96.43.20
pkgrel=2
pkgdesc="NVIDIA drivers utilities and libraries, 96xx branch."
arch=('i686' 'x86_64')
[ "$CARCH" = "i686" ] && ARCH=x86
[ "$CARCH" = "x86_64" ] && ARCH=x86_64
url="http://www.nvidia.com/"
depends=('xorg-server')
optdepends=('gtk2: nvidia-settings' 'pkgconfig: nvidia-xconfig')
conflicts=('libgl')
provides=('libgl')
license=('custom')
install=nvidia.install
options=(!strip)
source=("http://download.nvidia.com/XFree86/Linux-${ARCH}/${pkgver}/NVIDIA-Linux-${ARCH}-${pkgver}-pkg0.run")
md5sums=('875cc011385ea26ab5edd54a9b65a003')
[ "$CARCH" = "x86_64" ] && md5sums=('df3c87005487bdf54a6c5b783ff373db')
build() {
cd $srcdir
sh NVIDIA-Linux-${ARCH}-${pkgver}-pkg0.run --extract-only
cd NVIDIA-Linux-${ARCH}-${pkgver}-pkg0/usr/
mkdir -p $pkgdir/usr/{lib,bin,share/applications,share/pixmaps,share/man/man1}
mkdir -p $pkgdir/usr/lib/xorg/modules/{extensions,drivers}
mkdir -p $pkgdir/usr/share/licenses/nvidia-96xx/
install lib/{libGLcore,libGL,libnvidia-cfg,tls/libnvidia-tls}.so.${pkgver} \
$pkgdir/usr/lib/
install -m644 share/man/man1/* $pkgdir/usr/share/man/man1/
rm $pkgdir/usr/share/man/man1/nvidia-installer.1.gz
install X11R6/lib/libXv* $pkgdir/usr/lib/
install -m644 share/applications/nvidia-settings.desktop $pkgdir/usr/share/applications/
# fix nvidia .desktop file
sed -e 's:__UTILS_PATH__:/usr/bin:' -e 's:__PIXMAP_PATH__:/usr/share/pixmaps:' -i $pkgdir/usr/share/applications/nvidia-settings.desktop
install -m644 share/pixmaps/nvidia-settings.png $pkgdir/usr/share/pixmaps/
install X11R6/lib/modules/drivers/nvidia_drv.so $pkgdir/usr/lib/xorg/modules/drivers
install X11R6/lib/modules/extensions/libglx.so.$pkgver $pkgdir/usr/lib/xorg/modules/extensions
install -m755 bin/nvidia-{settings,xconfig,bug-report.sh} $pkgdir/usr/bin/
cd $pkgdir/usr/lib/
ln -s libGL.so.$pkgver libGL.so
ln -s libGL.so.$pkgver libGL.so.1
ln -s libGLcore.so.$pkgver libGLcore.so.1
ln -s libnvidia-cfg.so.$pkgver libnvidia-cfg.so.1
ln -s libnvidia-tls.so.$pkgver libnvidia-tls.so.1
ln -s libXvMCNVIDIA.so.$pkgver libXvMCNVIDIA_dynamic.so.1
cd $pkgdir/usr/lib/xorg/modules/extensions
ln -s libglx.so.$pkgver libglx.so
install -m644 $srcdir/NVIDIA-Linux-${ARCH}-${pkgver}-pkg0/LICENSE $pkgdir/usr/share/licenses/nvidia-96xx/
ln -s nvidia-96xx $startdir/pkg/usr/share/licenses/nvidia-96xx-utils
install -D -m644 $srcdir/NVIDIA-Linux-${ARCH}-${pkgver}-pkg0/usr/share/doc/README.txt $pkgdir/usr/share/doc/nvidia-96xx/README
find $pkgdir/usr -type d -exec chmod 755 {} \;
# Blacklist nouveau since 2.6.33
#mkdir -p $pkgdir/etc/modprobe.d/ || return 1
#echo "blacklist nouveau" >> $pkgdir/etc/modprobe.d/nouveau_blacklist.conf || return 1
}

View File

@ -1,6 +0,0 @@
post_install() {
echo By using this package you accept the NVIDIA license,
echo which has been installed in /usr/share/licenses/nvidia/LICENSE
echo If you do not accept this license, you must remove the package immediately.
echo Dont forget to update your /etc/X11/xorg.conf
}

View File

@ -1,57 +0,0 @@
#
# Chakra Packages for Chakra, part of chakra-project.org
#
# maintainer (i686): Phil Miller <philm[at]chakra-project[dog]org>
# maintainer (x86_64): Manuel Tortosa <manutortosa[at]chakra-project[dot]org>
# Find the kernel name inside the chroot
_extramodules=extramodules-`pacman -Q linux | cut -c7-9 | sed 's/linux //g'`-CHAKRA
_kver="$(cat /lib/modules/${_extramodules}/version)"
pkgname=(nvidia-96xx chd-nvidia-96xx)
pkgver=96.43.20
pkgrel=9
arch=('i686' 'x86_64')
[ "$CARCH" = "i686" ] && ARCH=x86
[ "$CARCH" = "x86_64" ] && ARCH=x86_64
url="http://www.nvidia.com/"
makedepends=('linux-headers')
license=('custom')
install=nvidia.install
source=("http://download.nvidia.com/XFree86/Linux-$ARCH/${pkgver}/NVIDIA-Linux-$ARCH-${pkgver}-pkg0.run"
"nvidia_supported")
md5sums=('875cc011385ea26ab5edd54a9b65a003')
[ "$CARCH" = "x86_64" ] && md5sums=('df3c87005487bdf54a6c5b783ff373db')
md5sums+=('62d0cdb856cfae64753c0f3acf729d47')
build() {
sh "NVIDIA-Linux-$ARCH-${pkgver}-pkg0.run" --extract-only
cd "NVIDIA-Linux-$ARCH-${pkgver}-pkg0/usr/src/nv/"
ln -s Makefile.kbuild Makefile
make SYSSRC=/lib/modules/${_kver}/build module
}
package_nvidia-96xx() {
pkgdesc="NVIDIA drivers for kernel26, 96xx branch."
depends=('linux>=3.2' 'linux<3.3' 'nvidia-96xx-utils')
conflicts=('nvidia' 'nvidia-173xx')
cd "NVIDIA-Linux-$ARCH-${pkgver}-pkg0/usr/src/nv/"
mkdir -p $pkgdir//lib/modules/${_extramodules}
install -m644 nvidia.ko $pkgdir/lib/modules/${_extramodules}
install -d -m755 "${pkgdir}/etc/modprobe.d"
echo "blacklist nouveau" >> "${pkgdir}/etc/modprobe.d/nouveau_blacklist.conf"
sed -i -e "s/EXTRAMODULES='.*'/EXTRAMODULES='${_extramodules}'/" "${startdir}/nvidia.install"
gzip "${pkgdir}/lib/modules/${_extramodules}/nvidia.ko"
}
package_chd-nvidia-96xx() {
pkgdesc="CHD ids for nvidia $pkgver"
arch=('any')
cd "${srcdir}/NVIDIA-Linux-$ARCH-${pkgver}-pkg0/usr/src/nv/"
install -dm755 "${pkgdir}/opt/chakra/hwdb"
sh -e "${srcdir}/nvidia_supported" ../../share/doc/README.txt nv-kernel.o \
> "${pkgdir}/opt/chakra/hwdb/hw_nvidia173xx_hwdb"
}

View File

@ -1,15 +0,0 @@
post_install() {
EXTRAMODULES='extramodules-3.2-CHAKRA'
depmod $(cat /lib/modules/$EXTRAMODULES/version)
echo 'In order to use nvidia module, reboot the system.'
}
post_upgrade() {
EXTRAMODULES='extramodules-3.2-CHAKRA'
depmod $(cat /lib/modules/$EXTRAMODULES/version)
}
post_remove() {
EXTRAMODULES='extramodules-3.2-CHAKRA'
depmod $(cat /lib/modules/$EXTRAMODULES/version)
}

View File

@ -1,91 +0,0 @@
#!/bin/sh
set -e
# This is a nasty kluge, but it seems to work. Better check the output when
# upgrading to a new release of the nvidia driver, though.
# To make it somehwat work, until someone knows a better way, copy /usr/share/doc/nvidia/README
# to the same dir as this script, then run.
if [ "$#" -ne 2 ]; then
>&2 printf 'USAGE: %s README.txt nv-kernel.o\n' "$0"
exit 1
fi
device_ids() {
local readme="$1"; shift
local object="$1"; shift
local ret=1
local symbols="$(mktemp)"
local readme_list="$(mktemp)"
local object_list="$(mktemp)"
local diff="$(mktemp)"
sed -nr '/^Appendix .\. Supported NVIDIA /,/legacy/ {
s/.* 0x([0-9a-fA-F]{4})( .*|$)/\1/p
}' "$readme" | tr A-F a-f | sort | uniq >"$readme_list"
local readme_length="$(grep -Ec . "$readme_list")"
objdump --section=.rodata --syms "$object" |
sed -nr '/SYMBOL TABLE/,/^$/ {
s/^([0-9a-f]+)\s+l\s+O\s+\S+\s+([0-9a-f]+)\s+\S+.*/\2 \1/p
}' |
sort -nr >"$symbols" # The list is probably among the larger symbols.
while read length start; do
[ "$((0x$length))" -gt 0 ] || continue
objdump --section=.rodata --full-contents \
--start-address="0x$start" \
--stop-address="$((0x$start+0x$length))" "$object" |
sed -nr 's/^ [0-9a-f]+ ([0-9a-f]{2})([0-9a-f]{2}).*/\2\1/p' |
sort | uniq | (grep -vx 0000 || :) >"$object_list"
local object_length="$(grep -Ec . "$object_list")"
diff -u "$readme_list" "$object_list" | tail -n +3 >"$diff"
local num_deletions="$(grep -Ec '^-' "$diff")"
local num_additions="$(grep -Ec '^\+' "$diff")"
# Some thresholds for now.
if [ "$num_deletions" -eq 0 ] &&
[ "$num_additions" -le "$(($readme_length*3/2))" ]; then
>&2 printf 'DEBUG: readme:%d object:%d deletions:%d additions:%d\n' \
"$readme_length" "$object_length" "$num_deletions" "$num_additions"
ret=0
break
fi
done <"$symbols"
if [ "$ret" -eq 0 ]; then
printf '%s\n' '# List generated by nvidia_supported. Do not edit manually.'
while read id; do
printf '%s\n' \
"0x$id"
done <"$object_list"
else
>&2 printf '%s\n' 'Failed to find the list. Using README.txt to get the list'
# We failed to extract the ids from the blob. Use the ones in README.txt
# as a fallback
printf '%s\n' '# List generated by nvidia_supported. Do not edit manually.'
while read id; do
printf '%s\n' \
"0x$id"
done <"$readme_list"
ret=0
fi
rm -f "$symbols" "$readme_list" "$object_list" "$diff"
return "$ret"
}
device_ids "$@"
# vim:set et sw=2 sts=2: