Bon, je viens annoncer quelques bonnes nouvelles :
1. on peut utiliser le comportement de switch au reboot complet avec un petit paramètre au boot. Il s'agit du même procédé qu'utilisé dans le hack acpi, donc il s'agit de définir la valeur de la clé osi en ajoutant le paramètre :
acpi_osi="!Windows 2006"
Il faut l'ajouter à la ligne du kernel lors du boot (dans grub.conf, par exemple, ou en éditant la ligne en appuyant sur a / e dans le menu grub).
Ensuite, redémarrer une ou deux fois (selon l'état du switch au premier démarrage avec le paramètre) et on peut désormais switcher d'un mode à l'autre en redémarrant sans avoir besoin de passer par windows xp ni DSL ! :-D
Maintenant, il faut faire attention aux librairies graphiques partagées car il faut avoir un fichier de switching software installé dans son /etc/init.d. Il doit être appelé aux différents changements d'état.
Voici mon fichier, appelé hybrid_gfx_switch.sh :
#!/bin/bash
# on récupère la carte active
VIDEO=`/sbin/lspci | /bin/grep -i vga | /usr/bin/head -l | /usr/bin/awk {'print $5'}`
if [ $VIDEO = nVidia ]; then
echo "Nvidia X Configuration switch"
cp -f /etc/X11/xorg.conf.nvidia /etc/X11/xorg.conf
ln -sf /usr/lib/libGL.so.180.51 /usr/lib/libGL.so.1
ln -sf /usr/lib/xorg/modules/extensions/libglx.so.180.51 /usr/lib/xorg/modules/extensions/libglx.so
else
echo "Intel X Configuration switch"
cp -f /etc/X11/xorg.conf.intel /etc/X11/xorg.conf
ln -sf /usr/lib/libGL.so.intel /usr/lib/libGL.so.1
ln -sf /usr/lib/xorg/modules/extensions/libglx.so.intel /usr/lib/xorg/modules/extensions/libglx.so
fi
Ainsi, si la carte nvidia est disponible, on utilise les fichiers nvidia pour libGL.so.1 et libglx.so.
Sinon, on est sur la carte intel et on utilise les fichiers intel par défaut. A noter qu'il faut copier ces fichiers avant d'installer le driver nvidia. Si vous l'avez déjà installer, désinstallez-le, faite une copie protégée des fichiers libGL.so.1 et libglx.so (les fichiers réels, par les liens symboliques !), gardez-les bien protéger car l'installation du driver nvidia enlève les fichiers qui peuvent gêner (et ces deux fichiers particulièrement, il en fait une copie, je ne sais où pour les remettre lorsqu'on désinstalle, mais justement, je ne sais pas où...).
Dans mon cas, j'ai copié les deux fichiers, les ai placé dans un tar.gz, puis ai installé le driver nvidia. Puis j'ai récupérer mes fichiers par défaut et les ai renommé avec l'extension .intel.
Dans mon cas, ça marche impécablement. J'ai encore des problèmes, mais je peux utiliser les deux cartes (moyennant un reboot, mais c'est déjà bien mieux que de ne pas pouvoir utiliser les cartes... et qui plus est, l'acpi est fonctionnel ! donc c'est super :-D).
Les problèmes restants :
1. Carte intel :
- la résolution est même plus grande qu'avec la carte nvidia (allez comprendre), bien que ça m'affiche un screenSize max de 1024/768 alors que je devrais être en 1380/768 !
- compiz ne peut pas être utilisé ! Les effets de bureau ne fonctionnent pas ! Que faire pour installer correctement le driver intel ? C'est une carte Intel gma4500
2. Carte nvidia :
- l'applet gnome pour la luminosité ne fonctionne pas du tout... je suis contraint à utiliser l'utilitaire nvclock pour modifier en ligne de commande la luminosité de l'écran (nvclock -S value)
- system-config-display ne fonctionne pas, j'ai une erreur à l'utilisation, qui fait que rien ne s'affiche (que je n'ai pas avec la carte intel) :
Traceback (most recent call last):
File "/usr/share/system-config-display/xconf.py", line 312, in <module>
hardware_state = XF86HardwareState(xconfig)
File "/usr/lib/python2.5/site-packages/rhpxl/xhwstate.py", line 174, in __init__
self.init_from_xconfig(xconfig)
File "/usr/lib/python2.5/site-packages/rhpxl/xhwstate.py", line 260, in init_from_xconfig
if screen.device:
AttributeError: 'NoneType' object has no attribute 'device'
A la place, je peux utiliser le nvidia display panel, mais c'est bête d'utiliser vingt outils différents :-?
- la résolution est indiquée comme du 1380/768, mais je doute que ce soit vrai vu que sous intel, j'ai une plus grande résolution !
Edit : 1366/768 et non 1380/768 😉
Ajout : ENFIN ! suspend to ram et suspend to disk marchent les deux ! C'est la première fois que je peux l'utiliser correctement avec l'acpi activée. :-D
Le premier fonctionne très rapidement, superbe.
Le second est un peu plus lent, mais surtout, il faut redémarrer l'ordi, donc passer le screen du bios. Mais j'imagine que ça permet de ne pas utiliser du tout de courant et donc garder la batterie au chaud.