On Wed, Jul 11, 2001 at 10:38:34PM +0200, Jean-Marie Lambert wrote:
> > La config de la carte vid?o, c'est pour X ?
> Exactement.
> En fait je me demandais s'il y avait une possibilit? d'avoir 2
> configurations du serveur X qui pourraient ?tre choisies au
> d?marrage par une configuration "sp?ciale" de Lilo.
Par lilo, je ne sais pas, mais il y a surement moyen de bricoler un petit
script qui choisit une config ou l'autre suivant la carte vid�o en usage.
C'est juste une piste, hein, il y a surement mieux, je fais avec mes moyens :) :
- tu cr�es les deux fichiers XF86Config qu'il te faut en fonction de tes
cartes ;
- tu les places dans le r�pertoire ad hoc (/etc/X11 ou /etc selon,
respectivement, que tu as ou n'as pas un XFree >= 4.0), en les renommant p.ex.
XF86Config_NVidia et XF86Config_ATI ;
- tu �cris / adapte un script comme celui en annexe qui va checker le mod�le de
carte et faire un symlink d�nomm� 'XF86Config' sur le bon fichier de config, en
fonction du check ;
- X sera en kke sorte 'couillonn�' par le symlink et devrait d�marrer avec la
bonne config pour la bonne carte :)
J'ai test� le script sans faire imploser ma machine, et �a marche (je n'ai
qu'une carte).
Maintenant, fais qd m�me gaffe en l'ex�cutant (c'est sous root ...),
et en modifiant les noms de fichier pour tes ordis.
Tu dois aussi r�cup�rer le type de ta carte (sur une des deux machines) en
lan�ant le grep dans une console et en faisant un copy/paste � la place de
la d�nomination de la mienne (entre ""). 'Tention, la cha�ne doit �tre
pr�cise.
Pour �tre sur que �a marche, tu pourrais commenter les commandes
'dangeureuses' (rm -f et ln -s) et mettre � la place un echo "Ca marche :-)" /
echo "Ca merde :-(" dans le second if.
Ah oui, aussi, j'ai toujours un kernel 2.2.* (pour /proc, est-ce qu'il n'a
pas disparu sous 2.4.* ? Faudrait adapter aucazou :)
Prends *au moins* une copie de s�cu de tes fichiers de config de X et fais
tr�s tr�s gaffe aux rm -f, sous root, dans /etc. C'est trois d�tails pour mettre
un beau boxon en cas de distraction :-p
--
J.-F. STRAETEN
---
Mutt 1.3.7i.
Powered by SuSE Linux 6.4
#!/bin/bash
#
# script permettant de d�marrer X avec la bonne config.
# Tu l'apelles appeler kke part au boot, p.ex. dans /sbin/init.d/boot.local (SuSE)
# ou bien tu pourrais m�me ajouter un 'startx &' � la fin et l'utiliser pour d�marrer
X.
# (Il faudra cependant changer les permissions des fichiers XF86Config_* pour pouvoir
# effacer le symlink en user. Je ne sais pas si c'est une bonne id�e (?)
# ---------------
# on vire XF86Config (symlink sur le vrai fichier de config)
# (adaptes le chemin si XFree >= 4.0)
if [ -L /etc/XF86Config ]; then
rm -f /etc/XF86Config
else
# on sort si XF86Config n'est pas un symlink, pr ne rien bouziller
exit 1
fi
# on r�cup�re le mod�le de carte dans une variable
card=$(grep 'VGA compatible controller' /proc/pci | cut -c 32-)
# on teste le contenu de la variable pour voir � quel carte on
# a affaire selon le principe empirique "Si c'est pas une, c'est l'autre" :)
if [ "$card" = "NVidia Unknown device (rev 21)." ]; then
# fait le lien sur le fichier de config de la carte NVidia
ln -s /etc/XF86Config_NVidia /etc/XF86Config
else
# sinon, fait le sur le fichier de config de l'ATI
ln -s /etc/XF86Config_ATI /etc/XF86Config
fi