4. Ajouter une sélection de nouveaux gestionnaires de fenêtres à une liste déroulante

[Avertissement]Avertissement

Les procédures décrites dans ce guide pratique implique d'apporter des changements aux fichiers de configuration du système ; si vous n'étes pas coutumier de ce type de manipulation, quelques précautions sont nécessaires. Introduire des erreurs dans ce type de fichier peut rendre instable votre système, ou l'arrêter brutalement. Les procédures décrites dans ce guide pratique ont été testées et ne doivent pas causer de problème si elles sont utilisés correctement.

Si vous avez la version 2.2 de KDE ou une version ultérieure et que vous n'êtes pas à l'aise avec l'édition manuel de fichier système, vous pouvez ouvrir une fenêtre de terminal (xterm ou konsole) en tant qu'utilisateur non privilégié et saisir :

su -c 'kcontrol'

Validez avec la touche « Enter ».

Entrer le mot de passe de l'utilisateur root à l'invite de la commande et faites les changements à partir du « KDE Control Center » qui apparaît. Aller par les menus Applications / Login Manager. Choisissez l'onglet de configuration appropriée ; vous pouvez facilement configurer chaque aspect de l'écran de connexion à partir d'ici. Dans les premières versions de KDE, kcontrol peut modifier kdmrc mais ne peut pas modifier Xsession ; jetez un œil aux notes ci-dessous sur les changements de la version KDE 2.2 et ultérieures.

Pour comprendre comment configurer manuellement certains d'entre eux et voir ce que ces fichiers de configuration font, procédez comme suit.

[Note]Note

Précaution : quelques fichiers de configuration ont changés depuis la version de kdm que j'utilise, particuliérement depuis les versions supérieures à la 2.0 :

L'extrait suivant est tiré du FreeBSD Handbook-X11.

« Note: In KDE 2.2 this has changed: kdm now uses its own configuration files. Please see the KDE 2.2 documentation for details. »

[Note]Note

KDE 3.1 a inclus la documentation de kdm, voir Le manuel de kdm

La plupart du contenu dans ce nouveau manuel s'applique aux anciennes versions ; les nouvelles caractéristiques y sont aussi décrites.

Si vous voulez éditer les fichiers de configuration ou juste comprendre leur fonctionnement, consultez la documentation de votre version.

N'utilisez pas de traitement de texte pour éditer les fichiers de configuration systèmes ; de tels programmes introduisent des caractères de formatage spéciaux qui corrompent les fichiers. Utiliser un éditeur de texte, et plus particuliérement un qui peut manipuler de longues lignes sans introduire de retour chariot supplémentaire dans le code existant. Les éditeurs appropriés sont vim (vi improved), vi et emacs. Il en existe d'autres mais ils sont habituellement installé par défaut dans les installations de station de travail Linux ; ils ont chacun des caractéristiques qui les rendent particulièrement adéquat pour écrire et éditer du code informatique. Jetez un œil à la section bibliographie à la fin de ce guide pratique pour plus d'informations.

[Avertissement]Avertissement

Avant de faire la moindre modification des fichiers de configuration système, vous devez faire des copies de sauvegarde des originaux, de façon à pouvoir les restaurer en cas d'erreur critique !

Les fichiers qui vont être modifiés ici sont /usr/share/config/kdmrc, fichier où nous ajoutons les labels de sélection à la liste déroulante sur l'écran de connexion, et /etc/X11/xdm/Xsession, fichier où nous ajoutons le chemin des exécutables pour nos labels (si vous utilisez une distribution différente, les chemins menant à ces fichiers peuvent être différent) ; Saisissez juste locate kdmrc et locate Xsession dans un shell [c'est-à-dire dans un émulateur de terminal tel qu'un xterm ou la konsole de KDE pour les trouver).

La ligne par défaut à changer dans kdmrc ressemble à ceci :

SessionTypes=kde;gnome;anotherlevel;default;failsafe;

Après avoir ajouter des labels de sélection pour deux nouveaux gestionnaires de fenêtre, windowmaker et blackbox, la ligne ressemble à ceci :

SessionTypes=kde;gnome;windowmaker;blackbox;anotherlevel;default;failsafe;

Notez l'ordre dans lequel j'ai ajouté les labels des nouveaux gestionnaires de fenêtres ; tous les enregistrements apparaîtront dans la liste déroulante dans le même ordre qu'ils apparaissent dans la liste « SessionTypes ». Ensuite, il faut ajouter les mêmes entrées dans le fichier /etc/X11/xdm/Xsession. Voici à quoi ressemble la section appropriée de Xsession avant d'ajouter de nouvelles entrées :

# maintenant, nous savons si xdm/gdm/kdm a demandé un
# environnement spécifique
#
case $# in
1)
case $1 in
failsafe)
	exec xterm -geometry 80x24-0-0
	;;
gnome)
	exec gnome-session
	;;
kde)
	exec startkde
	;;
anotherlevel)
	# we assume that switchdesk is installed.
	exec /usr/share/apps/switchdesk/Xclients.anotherlevel
	;;
esac
esac

Voici à quoi ressemble cette section du fichier Xsession après avoir ajouté les nouvelles entrées (notez que les étiquettes de sélection doivent être exactement les mêmes que dans Xsession et prefdm, c'est-à-dire que la syntaxe et la casse doivent être identique) :

# maintenant, nous savons si xdm/gdm/kdm a demandé un
# environnement spécifique
#
case $# in
  1) case $1 in
       failsafe)
           exec xterm -geometry 80x24-0-0
           ;;
       gnome)
           exec gnome-session
           ;;
       kde)
           exec startkde
           ;;
       windowmaker)
           exec wmaker
           ;;
       blackbox)
           exec blackbox
           ;;
       anotherlevel)
           # we assume that switchdesk is installed.
           exec /usr/share/apps/switchdesk/Xclients.anotherlevel
           ;;
     esac
esac

Notez que quand les exécutables sont installés dans un des chemins indiqués ci-dessous, seul le nom des exécutables est requis après « exec » ; sinon le chemin absolu doit être inclus comme indiqué dans « Xclients.anotherlevel » (ci-dessus) :

Ces exemples doivent être suffisants pour que vous puissiez ajouter votre gestionnaire de fenêtres favori au gestionnaire de connexion graphique de KDE, ou tout au moins, vous donnez un point de départ pour trouver comment l'adapter a votre installation.