# Manuel de &kdm;

Neal
Crook

    nac@forth.org

Steffen
Hansen

    stefh@dit.ou.dk

Développeur
Lauri
Watts

    lauri@kde.org

Relecteur

&traducteurGillesThioliere;

2000
Neal Crook
2000-12-12
0.05.02

Ce document décrit le fonctionnement &kdm;, le &kde; Display Manager (gestionnaire d'environnements graphiques de &kde;), plus communément appelé Gestionnaire de connexion.

KDE
kdm
xdm
Gestionnaire d'environnement
Gestionnaire de connexion

## Introduction

&kdm; fournit une interface permettant de se connecter au système. Après avoir invité l'utilisateur à saisir son login (nom d'utilisateur) et mot de passe, &kdm; procède à son authentification et, le cas échéant, lance une nouvelle session. &kdm; est issu de Xdm (X Display Manager), qu'il remplace avantageusement sur de nombreux points.

L'interface de &kdm; nous présente 2 boîtes de dialogue. La composition de la boîte de dialogue principale est la suivante :

- une zone de saisie Utilisateur où vous pourrez saisir votre nom d'utilisateur ;

- juste en dessous, une seconde zone de saisie Mot de passe où vous pourrez saisir... votre mot de passe ;

- sur la gauche de ces dernières, une zone de forme carrée où il est possible d'afficher soit une image de son choix, soit une horloge analogique (à aiguilles) ;

- (en option) une représentation graphique de chaque utilisateur (par exemple, une photo numérisée) ; nous les appellerons icônes-utilisateur. Lorsque l'on clique sur une icône, le nom le l'utilisateur associé s'inscrit automatiquement dans la zone Utilisateur (l'idée a été reprise à la boîte de connexions d'IRIX) ;

- un menu déroulant Type de session permettant de choisir, compte tenu de ce qui est installé sur votre système, l'environnement de bureau ou gestionnaire de fenêtre à utiliser (&kde;, &kde; 2, Gnome, &etc;).

- un bouton Entrer permettant de lancer la session qui correspond à vos choix ;

- un bouton Annuler dont l'usage vide les zones Utilisateur et Mot de passe de leur contenu ;

- (en option) un bouton Arrêter... permettant d'ouvrir la seconde boîte de dialogue, dont le titre est Arrêter le système et redémarrer ?.

La boîte de dialogue Arrêter... regroupe 4 boutons radio permettant de faire UN des choix suivants :

Arrêter le système

  Arrête le système en respectant la procédure nécessaire à la mise hors tension de l'ordinateur.

Redémarrer

  Arrête le système puis le redémarre dans le foulée. Pour les systèmes utilisant Lilo, une boîte de dialogue supplémentaire apparaît, vous permettant de choisir l'image du noyau (kernel) à utiliser lors du redémarrage.

Redémarrer le serveur X

  Arrête et redémarre le serveur X. La plupart du temps, on utilise cette fonction après avoir changé la configuration de X 11.

Mode Console

  Arrête le serveur X et bascule le système en mode console. Ceci vous ramène au niveau d'exécution (runlevel) 3. On procède en général de la sorte lorsqu'on veut reconfigurer ou mettre à jour une application X 11.

Vous pouvez ensuite cliquez sur OK pour valider votre choix ou bien sur Annuler, ce qui vous renvoie à la boîte de dialogue principale.

Le chapitre qui suit détaille la manière de configurer &kdm;. Les chapitres qui viennent ensuite vous expliqueront comment configurer votre système pour y intégrer &kdm;, comment le compiler et l'installer à partir du code source, et enfin comment en savoir plus à propos de &kdm; et, plus largement, du projet &kde;.

## Configuration de &kdm;

Pour ce chapitre, nous admettrons que &kdm; fonctionne déjà correctement sur votre système et que vous souhaitez simplement changer son apparence et son comportement. Si ce n'est pas le cas, sautez directement aux chapitres suivants.

Lorsque &kdm; démarre, il lit le fichier `kdmrc` où sont inscrites les informations de configuration. Tant que &kdm; fonctionne alors qu'aucun compte utilisateur n'existe, il ne peut, de fait, être associé à un de ceux-ci. Dans ce cas, il n'existe pas de fichier `$HOME/share/config/kdmrc` spécifique à chaque utilisateur, tous les utilisateurs partagent une version commune de `kdmrc`, qui se situe dans `$KDEDIR/share/config/kdmrc` qui sera utilisé pour toute connexion. Une des conséquences à ceci est que la configuration de &kdm; ne peut être modifiée que par un utilisateur ayant les droits d'accès et d'écriture sur le fichier `$KDEDIR/share/config/kdmrc` (c'est-à-dire l'administrateur système, connecté en tant que root).

En modifiant le fichier `kdmrc` (par défaut, `$KDEDIR/share/config/kdmrc`), vous pourrez connaître et changer la configuration de &kdm;. Il est aussi possible d'utiliser l'interface de configuration graphique disponible dans le Centre de configuration de &kde; (Applications Système Gestionnaire de connexion) et dont vous trouverez la description dans le fichier d'aide de KControl.

La fin de ce chapitre détaille le contenu du fichier `kdmrc`. Si l'interface graphique de configuration vous satisfait, il ne vous est pas nécessaire de lire ce passage.

Le fichier `kdmrc` est composé de 4 sections :

### KDM

Dans cette section, nous trouvons les clefs suivantes :

    StdFont
    FailFont
    GreetFont
    GreetString
    SessionTypes
    LogoArea
    LogoPixmap
    ShutdownButton
    Shutdown
    Restart
    ConsoleMode
    UserView
    Users
    NoUsers
    SortUsers
    GUIStyle

Petites descriptions des clefs :

`*Font`

  Chaîne désignant une police de caractère. La forme est la suivante : Courier,12,5,iso-8859-1,50,0.

`GreetString`

  Titre de la boîte de dialogue principale de &kdm;.

`SessionTypes`

  On énumère ici, en séparant par des virgules, les différents gestionnaires de fenêtres/environnements de bureau présents dans la liste de choix. Par défaut : `SessionTypes=kde,failsafe`.

`LogoArea`

  Contrôle ce qui est affiché dans l'espace situé à gauche de la fenêtre de connexion. La valeur peut être : soit `KdmLogo` (auquel cas c'est l'image définie dans `LogoPixMap` qui est affichée), soit `KdmClock` (auquel cas c'est une horloge qui est affichée).

`LogoPixmap`

  Comme il vient d'être précisé, cette clef sert à définir l'image qui sera affichée, dans la zone dédiée, lorsque LogoArea=KdmLogo.

`Autoriser l'arrêt du système`

  On peut ici définir les autorisations liées au bouton d'arrêt. La valeur peut être une des quatre suivantes : `All`, `None`, `RootOnly` et `ConsoleOnly`. Les valeurs `All` et `None` (respectivement tous et aucun) parlent d'elles-même. Si vous choisissez `ConsoleOnly`, il ne sera pas possible d'arrêter le système via l'interface de &kdm; (mais seulement en mode console). Enfin, si vous choisissez `RootOnly`, la saisie du mot de passe root sera nécessaire à l'arrêt du système.

`Shutdown et Restart`

  Ce sont les commandes qui sont respectivement lancées lors de l'arrêt et du redémarrage du système (Par défaut : `/sbin/halt` pour l'arrêt et `/sbin/reboot` pour le redémarrage).

`ConsoleMode`

  Cette fois, c'est la commande lancée lorsque l'on choisit le mode console, dans la boîte de dialogue du bouton Arrêter (Par défaut : `/sbin/init`3``). Cette option n'est pas disponible sous BSD.

`UserView`

  Si la valeur de cette clef est `1`, les icônes-utilisateur seront affichées dans la fenêtre de &kdm;.

`Users`

  C'est la liste des utilisateurs (les noms seront séparés par des virgules) dont l'icône sera affichée. Si la valeur de `UserView` est 1 mais que l'entrée `Users` n'est pas définie, &kdm; se base sur le fichier `/etc/passwd` pour créer la liste des utilisateurs. Seuls seront pris en compte les utilisateurs enregistrés avec un nom réel (en plus du nom d'utilisateur, le login), et auxquels sont assignés un dossier personnel et un interpréteur de commande par défaut. Tous le reste sera ignoré. &kdm; explore ensuite le dossier `$KDEDIR/share/apps/kdm/pics/users/` à la recherche des icônes-utilisateur. S'il existe une icône nommée `jeandupont.png`, elle sera utilisée pour l'utilisateur jeandupont. Dans le cas contraire, &kdm; utilisera l'icône par défaut nommée `default.png`.

  &kdm; est capable de gérer l'affichage simultané d'icônes de tailles différentes ; cependant, ce type d'opération donne un résultat que l'on pourrait poliment qualifier de confus. Pour éviter ceci, il serait bon d'avoir recours à un programme de traîtement d'image tel que Pixie (&kde;), Gimp (GNU Image Manipulation Program) ou encore XV de John Bradley afin d'obtenir des images de taille identique. Des icônes de 64x64 pixels offrent une résolution tout à fait convenable ; c'est en outre la taille de l'icône par défaut. Les programmes cités ci-dessus peuvent aussi servir à la conversions de vos images au format png.

`NoUsers`

  Cette liste désigne les utilisateurs qui ne seront pas affichés dans &kdm;. Ici encore, les noms doivent être séparés par des virgules. Ceci peut être utilisé comme filtre afin d'exclure les pseudo-utilisateur, tels que `sync` ou `shutdown`, de la zone d'affichage des icônes.

`SortUsers`

  Si vous donnez à cette clef la valeur `0`, la liste des utilisateurs sera affichée suivant l'ordre dans lequel elle est écrite. Par défaut, l'affichage se fait par ordre alphabétique.

`GUIStyle`

  La valeur de cette entrée peut être soit `Motif`, soit `Windows`.

### KDMDESKTOP

Les fonctions attachées à cette section ne sont plus d'actualité. Dans les versions antérieures de &kdm;, on l'utilisait pour définir l'image d'arrière plan (de la boîte de dialogue principale). Il se peut que l'utilitaire de configuration graphique de &kdm; continue de la générer ; elle sera quoi qu'il en soit ignorée.

### Locale

Cette section est gérée par une librairie standard de &kde;. Les seules entrées dont la modification est susceptible d'avoir un effet sont les suivantes :

    Country
    Language
    Charset

Petites descriptions des clefs :

`Country`

  Spécifie le pays d'utilisation. &kdm; inspecte le fichier `$KDEDIR/share/locale/l10n` où figure, sous forme de codes (code_pays), la liste complète des pays pris en charge par votre système. Le code_pays est ensuite utilisé afin de trouver le fichier `$KDEDIR/share/locale/l10n/code_pays/entry.desktop` nécessaire à l'affichage d'informations spécifiques à votre situation géographique : heure, forme de la date ou encore caractères spéciaux.

`Language`

  Indique la langue à utiliser dans &kdm; (par défaut, la valeur est `C`, ce qui correspond à l'américain). Cependant, cette valeur peut être ignorée dès lors que la variable d'environnement `KDE_LANG` précise une autre langue (celle-ci faisant autorité en la matière).

`Charset`

  Indique l'encodage à utiliser pour le jeu de caractères (par défaut : `iso-8859-1`).

Si, après avoir modifié ces entrées, le texte présent dans &kdm; reste en Anglais, c'est certainement que les fichiers de traductions nécessaires ne sont pas présents sur votre système.

### Lilo

Lilo (Linux Loader) est un gestionnaire d'initialisation souvent utilisé sur les systèmes GNU/Linux. Lilo est accompagné d'une documentation très complète (voir man lilo pour un premier aperçu). Cette section est consacrée à la configuration de la procédure de redémarrage via Lilo. Les clefs de cette section sont les suivantes :

    Lilo
    LiloCommand
    LiloMap

Petites descriptions des clefs :

`Lilo`

  Cette clefs sert à vérifier si votre système utilise effectivement Lilo lors d'un redémarrage (par défaut : `FALSE`). Lorsque la valeur de cette clefs est `TRUE`, des options supplémentaires apparaîtront alors dans la boîte de dialogue, sous la forme d'un menu déroulant, juste à côté du bouton "Redémarrer". Ce menu vous permet de choisir l'image du noyau (kernel) à utiliser lors du rédémarrage. La création de cette liste de noyaux s'appuie sur le contenu du fichier Lilo map.

`LiloCommand`

  Cette clef précise l'emplacement de Lilo - en tant que fichier exécutable. (Par défaut : `/sbin/lilo`).

`LiloMap`

  C'est l'emplacement du fichier LiloMap. Ce fichier est géré par Lilo et contient la liste des noyaux (version du système d'exploitation) disponibles à l'initialisation (par défaut `/boot/map`).

## Configuration de votre système pour l'utilisation de &kdm;

Pour ce chapitre, nous admettrons cette fois que le système d'affichage X window fonctionne parfaitement et que vous désirez seulement le configurer pour y intégrer un gestionnaire de connexion à interface graphique.

### Configurer &kdm;

L'élément fondamental qui oriente le terme de la séquence d'initialisation - soit vers un terminal (mode console), soit vers un gestionnaire de connexion graphique - est le niveau d'exécution (runlevel) par défaut de votre système. Le niveau d'exécution est défini par l'application /sbin/init qui dépend elle-même du fichier `/etc/inittab`. Il peut être différent d'un systèmes Unix/distribution Linux à un(e) autre ; mais si vous jetez un oeil au fichier `/etc/inittab`, il devrait invariablement commencer par quelque chose comme :

    # Default runlevel. The runlevels used by RHS are:
    # 0 - halt (Do NOT set initdefault to this)
    # 1 - Single user mode
    # 2 - Multiuser, without NFS
    # 3 - Full multiuser mode
    # 4 - unused
    # 5 - X11
    # 6 - reboot (Do NOT set initdefault to this)

    id:3:initdefault:

L'ensemble des lignes, exceptée la dernière, sont des commentaire (précédé de #). Ces commentaires nous indiquent que le niveau d'exécution (runlevel) 5 est utilisé pour X11 ou que le mode multiutilisateurs sans X11 (mode console uniquement) utilise, quant à lui, le niveau 3. La dernière ligne spécifie que le niveau d'exécution par défaut du système est 3 (mode console). Si vous utilisez déjà un gestionnaire de connexion en mode graphique (par exemple Xdm), le niveau d'exécution par défaut correspondra à celui qui est défini pour X11.

Sur les distributions Linux les plus courantes, les différents niveaux d'exécution pour une connexion en mode graphique (Xdm) sont les suivants :

- 5 pour les distributions Red Hat (depuis la version 3.x) et Mandrake ;

- 4 pour les distributions Slackware ;

- 3 pour les distributions S.u.S.E. versions 4.x et 5.x.

Avant toute chose, assurez-vous de pouvoir lancer &kdm; en ligne de commande. Une fois cette certitude acquise, vous pouvez modifier la configuration du système de manière à ce que &kdm; soit lancé automatiquement à chaque démarrage.

Pour tester le fonctionnement de &kdm;, vous devez porter votre système à un niveau d'exécution différent de celui utilisé pour Xdm. Pour ceci, tapez la commande :

    /sbin/init 3

Bien entendu, le chiffre `3` est à remplacer, le cas échéant, par le niveau d'exécution qui correspond au fonctionnement du mode console sur votre système.

Il faut ensuite trouver l'emplacement du dossier de configuration de Xdm ; celui-ci devrait être `/etc/X11/xdm/` ou `/usr/X11R6/lib/X11/xdm/`. Ce dossier contient un fichier `Xsetup_0` ; si vous installez &kdm; depuis les codes sources et que le processus d'installation ne trouve pas ce fichier au moment de lancer `configure`, un nouveau fichier `Xsetup_0` sera créé à partir du modèle présent dans l'arborescence de &kdm; Vous pouvez inclure la ligne suivante :

    kdmdesktop

à votre fichier afin d'avoir un bel arrière-plan (images et couleurs d'arrière-plan) (je ne suis pas certain que ceci fonctionne toujours ce n'est certainement pas indispensable). Si votre variable d'environnement `KDEDIR` n'est pas `/opt/kde`, il vous faudra peut être changer le chemin en `kdmdesktop`.

Si votre système utilise les Pluggable Authentication Modules (PAM), ce qui devrait être le cas sur les distributions Red Hat et Mandrake récentes, vérifiez que la configuration des PAM autorise la connexion via le service nommé `Xdm`. Si vous utilisiez déjà Xdm auparavant, vous n'aurez certainement pas besoin de toucher à la configuration de PAM pour passer à &kdm;. Voir dans `/etc/pam.conf` ou `/etc/pam.d/xdm`. Les informations concernant la configuration des PAM sortent du cadre de ce manuel ; ceux-ci sont cependant accompagnés d'une documentation très bien faite (essayez quelque chose comme`/usr/doc/pam*/html`).

Le moment est venu de tester &kdm;, en saisissant la ligne suivante :

    kdm -nodaemon

Si la boîte de connexion de &kdm; s'affiche et que vous pouvez vous connecter, c'est que tout se passe bien. Le principal problème que l'on pourrait rencontrer à ce stade serait que l'exécuteur de liens ne trouve pas les librairies partagées Qt ou &kde;. Si vous avez installé les bibliothèques &kde; depuis les codes sources, assurez vous qu'elles sont installées là ou &kde; les attend (en général, dans `/opt/kde/bin`) ou essayez de faire pointer les variables d'environnement concernées vers l'emplacement réel de ces librairies (&kde; et Qt). Par exemple :

    export
    KDEDIR=/opt/kde
    export
    QTDIR=/usr/lib/qt2
    export
    PATH=$KDEDIR/bin:$QTDIR/bin:$PATH
    export
    LD_LIBRARY_PATH=$KDEDIR/lib:$QTDIR/lib

Si cela ne fonctionne toujours pas, essayer de lancer Xdm à la place de &kdm; pour vérifier que la source du dysfonctionnement n'est pas un problème plus grave dans la configuration de X.

Une fois que aurez réussi à lancer &kdm; sans problème, vous pouvez le mettre à la place de Xdm. Une fois de plus, la façon de faire est spécifique à la distribution employée.

- Avec une RedHat, il faut éditer le fichier `/etc/inittab`, trouver la ligne contenant la chaîne xdm et la remplacer par &kdm; (en n'oubliant pas de changer aussi les chemins).

- Sur une Mandrake, une ligne du fichier `/etc/inittab` appelle le script de configuration `/etc/X11/prefdm` dès que le niveau d'exécution (runlevel) correspondant au fonctionnement de X11 est atteint. C'est ce script qui permet de choisir un des différents gestionnaires de connexion graphiques du système, dont &kdm;. Là encore, assurez-vous bien que tous les chemins sont corrects

- Sur une S.u.S.E., modifiez le fichier `/sbin/init.d/xdm` et ajoutez, en premières lignes :

      . /etc/rc.config
      DISPLAYMANAGER=kdm
      export DISPLAYMANAGER

- Pour la plupart des distributions, la méthode s'apparente à une des trois qui viennent d'être décrites.

Cependant, si la méthode consistant à modifier le fichier `inittab` ne vous convient pas, vous pouvez très bien renommer `xdm` en `xdm.bak` puis créer ensuite un lien symbolique nommé `xdm`, pointant vers &kdm;.

Arrivé à ce stade, vous pouvez à nouveau tester le fonctionnement de &kdm; en amenant le système au niveau d'exécution correspondant. Pour ceci, saisissez la commande :

    /sbin/init 5

Comme précédemment, il vous faudra peut-être remplacer le chiffre `5` par le niveau d'exécution correspondant au fonctionnement de X11 sur VOTRE système.

La dernière étape consiste à éditer l'entrée `initdefault` du fichier `/etc/inittab` pour y préciser le niveau d'exécution approprié au fonctionnement de X11.

Avant d'effectuer ce changement et dans l'éventualité d'un problème, assurez-vous que vous disposez d'un moyen alternatif pour démarrer votre système. Ce peut être la disquette de démarrage fournie par votre distribution (créée pendant l'installation, par exemple) ou encore une disquette spécialement conçue telle que `tomsrtbt`. Ignorez ces consignes à vos risques et périls !

Lorsque vous redémarrer votre système, la séquence d'initialisation devrait s'achever par l'affichage de l'interface de connexion graphique de &kdm;.

Si cette étape se solde par un échec, c'est très certainement que l'environnement système de la séquence d'initialisation est différent de celui de vos tests en lignes de commande. Vérifiez le contenu de fichiers tels que `/etc/X11/xdm/Xsetup_0` (et des éventuels scripts qu'il appelle) pour être sûr que votre chemin n'a pas été changé sans que vous le sachiez. Si vous tentez de faire cohabiter 2 versions différentes de &kde; soyez particulièrement attentif à la viabilité de vos variables d'environnement `PATH` et `LD_LIBRARY_PATH` et au fait qu'un script de démarrage puisse en court-circuiter l'usage d'une manière ou d'une autre.

### Prise en charge de plusieurs gestionnaires de fenêtre

La boîte de dialogue principale de &kdm; comporte un menu déroulant Type de session permettant de choisir le gestionnaire de fenêtres pour la session à venir. Ce chapitre détaille les modifications de configuration nécessaires à la prise en charge de cette fonction.

Les options visibles dans le menu déroulant Type de session sont définies par les entrées de la section `KDM` du fichier `kdmrc`.

Lorsque vous vous connectez par l'intermédiaire de &kdm;, le script `Xsession` est exécuté (`Xsession` se trouve dans `/etc/X11/xdm/` sur distributions Redhat et Mandrake, et dans `/usr/X11R6/lib/X11/xdm/` sur distribution S.u.S.E.). Le type de session choisi est passé comme argument d'une ligne de commande. Au moment de dépanner, il peut être très utile d'ajouter cette ligne au fichier `Xsession` :

    echo "$0 || $1 || $2"
    > $HOME/.Xsession_args

La manière de procéder dépend maintenant de la façon dont votre système démarre le gestionnaire de fenêtres. Voici deux approches différentes, accompagnées d'exemples quant aux changements à effectuer :

- Le gestionnaire de fenêtre est lancé par une ligne de commande inscrite dans le fichier `Xsession`. Dans ce cas, vous pouvez ajouter une déclaration case pour démarrer le gestionnaire de fenêtre désiré. C'est cette méthode qui est utilisée sur les distributions Linux-Mandrake ; voici le contenu du fichier (Mandrake) `Xsession` :

      # now, we see if xdm/gdm/kdm has asked for a specific environment
      case $# in
      1)
          case $1 in
              kde)
              source /opt/kde2/bin/kde1
              exec startkde
              ;;
              kde2)
              source /opt/kde2/bin/kde2
              exec startkde
              ;;
          	failsafe)
      	exec xterm -geometry 80x24-0-0
      	;;
      	default)
      	;;
      	*)
      	exec /bin/sh -c "$(/usr/sbin/chksession -x=$1)"
      	;;
           esac
      esac

- Le gestionnaire de fenêtre est lancé par un script, lui-même appelé par `Xsession`. Dans ce cas, il faut vous assurer que l'argument passé à `Xsession` est aussi passé au script en question. Par exemple, si le gestionnaire de fenêtre est lancé comme ceci :

      exec $startup

  vous devrez modifier le ligne de cette manière :

      exec $startup $@

  Une fois ce changement effectué, il vous faudra retrouver d'où est lancé le gestionnaire de fenêtre à travers la séquence de démarrage. Une méthode consiste à lancer le gestionnaire de fenêtre grâce au fichier `xinitrc` qui peut être soit le fichier générique `/etc/X11/xinit/xinitrc`, soit le fichier spécifique `$HOME/.xinitrc`. Si c'est le fichier `$HOME/.xinitrc` que vous éditez, vous pourrez en faire une copie dans `/etc/skel`, ce qui aura pour effet de le générer automatiquement dans tous les comptes utilisateurs que vous créerez par la suite. Voici un exemple de ce que l'on trouve dans `xinitrc` sur un système utilisant cette méthode :

      #!/bin/bash
      #
      # .xsession/.xinitrc
      #
      # choose a window manager
      #

      defaultwm=kde
      #set the window manager to $1 if it was supplied
      windowmgr=${1:-$defaultwm}

      #start the respective window managers
      case ${windowmgr} in
        kde|kwm|kdestart)
      	WINDOWMANAGER=startkde
      	;;
        fvwm|fvwm2)
      	WINDOWMANAGER=fvwm2
      	;;

        fvwm95)
      	WINDOWMANAGER=fvwm95
      	;;

        *)    WINDOWMANAGER=windowmgr   # default for unknown wm's

      esac

      #
      # load resources
      #

      if [ -f /usr/X11R6/lib/X11/Xmodmap ]; then
          xmodmap /usr/X11R6/lib/X11/Xmodmap
      fi

      if [ -f ~/.Xmodmap ]; then
          xmodmap ~/.Xmodmap
      fi

      if [ -f ~/.Xdefaults ]; then
          xrdb -merge ~/.Xdefaults
      fi

      if [ -f ~/.Xresources ]; then
          xrdb -merge ~/.Xresources
      fi
      #
      # finally start the window manager
      #
      exec $WINDOWMANAGER

## Compilation et installation de &kdm;

&kdm; fait partie du projet &kde;. Les différents éléments composant le projet &kde; sont scindés en sections appelées paquetages. Vous trouverez &kdm; dans le paquetage nommé kdebase. Les codes sources de &kde; sont disponibles sur certaines distributions Linux/BSD ou au téléchargement, sur www.kde.org (ou un miroir). Si vous êtes en possession de code source provenant d'une branche obsolète, il vous est possible d'utiliser les serveurs cvsup de &kde; afin de les mettre à jour sans pour autant monopoliser toute votre bande passante réseau.

Avant de compiler kdebase, vous devrez avoir installé (dans l'ordre) : la version 2 des bibliothèques QT, les paquetages &kde; kde-qt-addon, kdesupport et enfin kdelibs.

Pour être en mesure de compiler tout ce qui vient d'être cité, votre système devra être pourvu de X Window, d'un compilateur C++ et des outils de configuration GNU configure, automake et autoconf

S'il vous apparaît que les derniers paragraphes sont écrits dans un incompréhensible et mystérieux dialecte, c'est que : soit vous vous êtes égaré dans une partie de ce manuel qui ne correspond pas à vos attentes ; soit vous êtes sur le point de partir dans une aventure très enrichissante pour votre culture informatique.

Si vous avez respecté tous les pré-requis, la compilation et l'installation de kdebase ne devrait poser aucun problème. &kdm; sera installé dans votre dossier `$KDEDIR/bin`.

La commande `make `install`` écrasera le fichier `kdmrc` courant.

## Autres sources d'information

&kdm; étant dérivé de Xdm, le manuel de xdm peut être une source globale d'informations très utile. Pour les problèmes relatifs à X, essayez donc les pages de manuel de X et startx. S'il subsiste en vous des questions auxquelles ce manuel ne répond pas, profitez du fait que &kdm; est distribué selon les termes de la Licence Publique GNU : allez faire un tour dans le code source !

## Remerciements et licences

&kdm; est dérivé de Xdm dont il reprend une partie du code.

La version 0.1 de &kdm; fut réalisée par Matthias Ettrich. Toutes les versions ultérieures à 0.1 sont l'oeuvre de Steffen Hansen.

Les droits d'auteur (copyrights) de Xdm appartiennent au X Consortium depuis 1990.

Les droits d'auteurs pour le reste du code de &kdm; appartiennent aux différents auteurs et sont soumis aux termes de la licence GNU GPL. Chacun est libre d'apporter des modification à &kdm; et de le redistribuer tant que le nom des auteurs est précisé.

Le fonctionnement de &kdm; nécessite l'utilisation des bibliothèques QT, dont les droits d'auteur appartiennent à Troll Tech SA.

Contribution de documentation :

- La documentation fut écrite par Steffen Hansen stefh@dit.ou.dk.

- Elle fut complétée par Gregor Zumstein zumstein@ssd.ethz.ch. Dernière mise à jour : 09/07/1998.

- Et mise à jour pour &kde; 2 par Neal Crook nac@forth.org. Dernière mise à jour : 06/07/2000.

Les droits d'auteurs attachés à la documentation appartiennent à Steffen Hansen, Gregor Zumstein et Neal Crook.

Traduction française par &GillesThioliere;.

&underFDL; &underGPL;