Re: Plantage X nvidia plus d'acceleration
Alors,
1) J'ai peut-etre des reste d'un .run mais la aussi, je ne sais pas les
virer s'ils existent...
2) voila le contenu du fichier
#!/bin/sh
set -e
# A trigger that handles the alternatives for /usr/lib/libGL.so and
# /usr/lib/libGL.so.1.
if [ "$1" = "triggered" ]; then
if [ -L /usr/lib/nvidia/diversions/libGL.so.1 ]; then
update-alternatives --install /usr/lib/libGL.so.1 libGL.so.1
/usr/lib/nvidia/diversions/libGL.so.1 5
else
update-alternatives --remove libGL.so.1
/usr/lib/nvidia/diversions/libGL.so.1
fi
if [ -L /usr/lib/nvidia/diversions/libGL.so ]; then
# libgl-mesa-dev was installed, create libGL.so
update-alternatives --install /usr/lib/libGL.so libGL.so
/usr/lib/nvidia/diversions/libGL.so 9995
else
# libgl-mesa-dev was removed, drop libGL.so
update-alternatives --remove libGL.so /usr/lib/nvidia/diversions/libGL.so
fi
fi
#DIVERT_QUIET="--quiet"
# <target: squeeze>
exists()
{
test -e "$1" || test -L "$1"
}
if [ "$1" = "configure" ]
then
# dpkg-reconfigure does not set DPKG_MAINTSCRIPT_PACKAGE (#560317)
if [ -z "$DPKG_MAINTSCRIPT_PACKAGE" ]
then
echo "ERROR: DPKG_MAINTSCRIPT_PACKAGE is not set, usually a bug in
dpkg-reconfigure"
exit 1
fi
# <target: squeeze>
# remove libGL.so created by obsolete nvidia-glx* init script
# otherwise we dpkg-divert --rename an unowned file
if [ -L /usr/lib/libGL.so ] && \
[ "$(readlink /usr/lib/libGL.so)" != "/etc/alternatives/libGL.so" ] && \
[ "$(readlink /usr/lib/libGL.so)" != "libGL.so.1" ]
then
echo "Removing /usr/lib/libGL.so symlink from unknown origin."
rm -f /usr/lib/libGL.so
fi
# </target: squeeze>
# <target: squeeze>
# take over diversions from nvidia-glx{,-legacy-*xx}
for file in libGL.so.1.2 libGL.so.1 libGL.so
do
file_orig="/usr/lib/$file"
file_old_divert="/usr/lib/nvidia/$file.xlibmesa"
file_new_divert="/usr/lib/nvidia/diversions/$file"
old_diverter="`dpkg-divert --listpackage $file_orig`"
if [ -n "$old_diverter" ] \
&& [ "$old_diverter" != "$DPKG_MAINTSCRIPT_PACKAGE" ]
then
if ! exists "$file_orig" || ! exists "$file_old_divert"
then
dpkg-divert --remove --rename --package $old_diverter --divert \
"$file_old_divert" \
"$file_orig"
else
dpkg-divert --remove --package $old_diverter --divert \
"$file_old_divert" \
"$file_orig"
echo "Moving $file_old_divert to $file_new_divert"
mv "$file_old_divert" "$file_new_divert"
dpkg-divert --add --package $DPKG_MAINTSCRIPT_PACKAGE --divert \
"$file_new_divert" \
"$file_orig"
fi
fi
if exists "$file_old_divert"
then
echo "ERROR: $file_old_divert does still exist. Aborting."
exit 1
fi
done
# </target: squeeze>
fi
# </target: squeeze>
if [ "$1" = "configure" ]
then
# <target: squeeze>
# The old nvidia-glx postrm would delete /usr/lib/nvidia/diversions
# out from under us, so create it if it doesn't exist.
test -d /usr/lib/nvidia/diversions || \
mkdir -p /usr/lib/nvidia/diversions
# </target: squeeze>
# make new diversions
dpkg-divert $DIVERT_QUIET --add --rename --package
$DPKG_MAINTSCRIPT_PACKAGE --divert \
/usr/lib/nvidia/diversions/libGL.so \
/usr/lib/libGL.so
dpkg-divert $DIVERT_QUIET --add --rename --package
$DPKG_MAINTSCRIPT_PACKAGE --divert \
/usr/lib/nvidia/diversions/libGL.so.1 \
/usr/lib/libGL.so.1
dpkg-divert $DIVERT_QUIET --add --rename --package
$DPKG_MAINTSCRIPT_PACKAGE --divert \
/usr/lib/nvidia/diversions/libGL.so.1.2 \
/usr/lib/libGL.so.1.2
fi
# <target: squeeze>
if [ "$1" = "configure" ]
then
# <target: squeeze>
# do some validation of the diverted libGL.so
# check ownership of the original libGL.so
libGLso="$(dpkg-query -S /usr/lib/libGL.so 2>/dev/null | grep -v
'^diversion by' || true)"
if [ -L /usr/lib/nvidia/diversions/libGL.so ] && \
[ -z "$libGLso" ]
then
echo "Removing diverted libGL.so symlink owned by no package."
rm /usr/lib/nvidia/diversions/libGL.so
fi
if [ -L /usr/lib/nvidia/diversions/libGL.so ] && \
[ "`readlink /usr/lib/nvidia/diversions/libGL.so`" != "libGL.so.1" ]
then
echo "Removing diverted libGL.so symlink with unexpected target."
rm /usr/lib/nvidia/diversions/libGL.so
fi
if [ ! -L /usr/lib/nvidia/diversions/libGL.so ] && \
[ -n "$libGLso" ]
then
echo "Restoring diverted libGL.so symlink."
ln -s libGL.so.1 /usr/lib/nvidia/diversions/libGL.so
fi
# </target: squeeze>
# <target: squeeze>
# do some validation of the diverted libGL.so.1
# check ownership of the original libGL.so.1
libGLso1="$(dpkg-query -S /usr/lib/libGL.so.1 2>/dev/null | grep -v
'^diversion by' || true)"
if [ -L /usr/lib/nvidia/diversions/libGL.so.1 ] && \
[ -z "$libGLso1" ]
then
echo "Removing diverted libGL.so.1 symlink owned by no package."
rm /usr/lib/nvidia/diversions/libGL.so.1
fi
if [ -L /usr/lib/nvidia/diversions/libGL.so.1 ] && \
[ "`readlink /usr/lib/nvidia/diversions/libGL.so.1`" != "libGL.so.1.2" ]
then
echo "Removing diverted libGL.so.1 symlink with unexpected target."
rm /usr/lib/nvidia/diversions/libGL.so.1
fi
if [ ! -L /usr/lib/nvidia/diversions/libGL.so.1 ] && \
[ -n "$libGLso1" ]
then
echo "Restoring diverted libGL.so.1 symlink."
ln -s libGL.so.1.2 /usr/lib/nvidia/diversions/libGL.so.1
fi
# </target: squeeze>
fi
# </target: squeeze>
if [ "$1" = "configure" ]; then
# activate our trigger
dpkg-trigger /usr/lib/libGL.so.1
dpkg-trigger /usr/lib/libGL.so
fi
exit 0
Jmarc
L'erreur initiale provient du script de post installation de
libgl1-nvidia-alternatives (d'après le message d'erreur que tu obtiens :
"E: libgl1-nvidia-alternatives: le sous-processus
script post-installation installé a retourné une
erreur de sortie d'état 2").
Tu peux essayer de lire ce script et voir ce qui peut clocher, ou de
manière "musclée" le mettre de côté, purger les paquets relatifs à
nvidia, et réinstaller seulement le nécessaire.
Le script qui t'intéresse est
/var/lib/dpkg/info/libgl1-nvidia-alternatives.postinst
Tu n'aurais pas des restes d'une installation du pilote NVidia via le
".run" fourni sur leur site ?
Reply to: