SLiM (Français)

From ArchWiki
État de la traduction: Cet article est la version francophone de SLiM. Date de la dernière traduction: 2022-10-18. Vous pouvez aider à synchroniser la traduction s'il y a eu des changements dans la version anglaise.
Attention: Le projet SliM a été abandonné (la dernière version date de 2013), et n'est pas entièrement compatible avec systemd, dont les sessions logind. Envisagez un autre gestionnaire de connexions ou startx.

SLiM est un acronyme pour Simple Login Manager. Léger et facilement configurable, SLiM nécessite un minimum de dépendances, et aucun des environnements de bureau GNOME ou KDE. Il contribue donc à un système léger pour les utilisateurs qui aiment aussi utiliser des bureaux légers tels que Xfce, Openbox, et Fluxbox.

Installation

Installez le paquet slim.

Configuration

Note: SLiM ne prend plus en charge une session 'par défaut' lorsque plusieurs sessions ont été activées. Ceci est particulièrement visible lorsque l'on tente de se déconnecter et de se reconnecter à la même session.

SLiM peut détecter automatiquement les environnements de bureau et les gestionnaires de fenêtres installés grâce à l'utilisation de sessiondir /usr/share/xsessions/ dans /etc/slim.conf. Ceux qui effectuent une mise à jour à partir d'une version antérieure à 1.3.6-2 doivent modifier /etc/slim.conf et xinitrc en conséquence. Consultez ci-dessous.

Activation de SLiM

Activez slim.service. Cela suppose qu'un gestionnaire d'affichage précédemment activé a d'abord été désactivé. Sinon, changez la cible par défaut.

Environnements

Note: Les sessions disponibles pour la sélection peuvent être parcourues en appuyant sur la touche F1.

Pour configurer SLiM 1.3.6-2 (ou une version ultérieure) afin de charger un environnement, modifiez à la fois /etc/slim.conf et ~/.xinitrc.

Commencez par éditer /etc/slim.conf : Si vous n'utilisez qu'un seul environnement, vous pouvez commenter sessiondir /usr/share/xsessions/. Ceci désactivera la détection automatique des environnements installés :

# Définir le répertoire qui contient les xsessions.
# slim lit xsession depuis ce répertoire, et sera capable de sélectionner.
# sessiondir /usr/share/xsessions/

Si vous souhaitez détecter automatiquement les environnements de bureau installés, laissez la ligne non commentée.

Ensuite, éditez xinitrc :

$HOME/.xinitrc
#!/bin/sh
if [ -d /etc/X11/xinit/xinitrc.d ] ; then
 for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
  [ -x "$f" ] && . "$f"
 done
 unset f
fi
exec $1

Définir le nom d'utilisateur par défaut

SLiM peut être configuré pour définir automatiquement un nom d'utilisateur souhaité, qui sera donc déjà complété. Le champ du mot de passe sera également déjà ciblé par défaut. Modifiez la ligne suivante dans /etc/slim.conf :

# default_user simone

Décommentez cette ligne, et remplacez "simone" par le nom d'utilisateur de votre choix :

default_user votre_nom_d'utilisateur

Enable Autologin

Note: Il sera nécessaire d'avoir d'abord configuré SLiM pour utiliser un environnement de bureau unique, ainsi qu'un nom d'utilisateur par défaut.
Attention:
  • Ne définissez pas cette option pour le compte root.
  • Si la connexion automatique est activée, le trousseau de clés GNOME ne sera pas déverrouillé automatiquement à la connexion. Cela entraînera un mauvais comportement des applications qui en dépendent, telles que Chrome/Chromium et NetworkManager (consultez https://bbs.archlinux.org/viewtopic.php?id=167579).

Modifiez /etc/slim.conf pour décommenter la commande auto_login et remplacer no par yes :

auto_login yes

Thèmes

Installez le paquet slim-themes. Le paquet archlinux-themes-slim contient plusieurs thèmes différents (slimthemes.png). Consultez le répertoire /usr/share/slim/themes pour consulter les thèmes disponibles. Entrez le nom du thème sur la ligne current_theme dans /etc/slim.conf :

#current_theme default
current_theme archlinux-simplyblack

Vous pouvez prévisualiser un thème pendant que Xorg fonctionne avec :

$ slim -p /usr/share/slim/themes/<nom du thème>

Pour fermer, tapez "exit" dans la ligne de connexion et appuyez sur Entrée.

Des paquets de thèmes supplémentaires peuvent être trouvés dans l'AUR. Consultez la [documentation du thème https://github.com/iwamatsu/slim/blob/master/THEMES] pour savoir comment personnaliser votre thème ou créer le vôtre. SLiM ne prend pas en charge les répertoires de thèmes alternatifs, il est donc recommandé de créer un paquet pour votre thème personnalisé afin que pacman en soit informé.

Fond d'écran personnalisé

SLiM est codé en dur pour charger background.png ou background.jpg (dans cet ordre) à partir du répertoire de votre thème. Il suffit d'écraser le fichier approprié

# cp /path/to/new_background.jpg /usr/share/slim/themes/<theme_name>/background.jpg

Configuration du double écran

Vous pouvez personnaliser le thème slim dans /usr/share/slim/themes/<votre-theme>/slim.theme pour modifier ces valeurs en pourcentage. La boîte elle-même fait 450 pixels par 250 pixels :

input_panel_x 50
input_panel_y 50

en valeurs de pixels :

# Ces paramètres placent le panneau "archlinux-simplyblack" au centre d'un écran 1440x900
input_panel_x 495
input_panel_y 325
# Ces paramètres placent le panneau "archlinux-retro" au centre d'un écran 1680x1050
input_panel_x 615
input_panel_y 400

Si votre thème comporte une image d'arrière-plan, vous devez utiliser le paramètre background_style (stretch, tile, center ou color) pour qu'elle s'affiche correctement.

Trucs et astuces

Changer le curseur

Après l'installation, éditez /etc/slim.conf et décommentez la ligne :

cursor   left_ptr

Cela vous donnera une flèche normale à la place. Ce paramètre est transmis à xsetroot -cursor_name. Vous pouvez consulter les noms de curseurs possibles ou dans /usr/share/icons/<votre-cursor-theme>/cursors/.

Pour changer le thème de curseur utilisé à l'écran de connexion, consultez Cursor themes#XDG specification.

Faire correspondre le fond d'écran de SLiM et celui du bureau

Pour partager un fond d'écran entre SLiM et votre bureau, renommez le fond d'écran du thème utilisé, puis créez un lien du fichier de fond d'écran de votre bureau vers le thème SLiM par défaut :

# mv /usr/share/slim/themes/default/background.jpg{,.bck}
# ln -s /path/to/mywallpaper.jpg /usr/share/slim/themes/default/background.jpg

Arrêter, redémarrer, suspendre, quitter, lancer un terminal à partir de SLiM

Vous pouvez arrêter, redémarrer, suspendre, quitter ou même lancer un terminal à partir de l'écran de connexion SLiM. Pour ce faire, utilisez les valeurs dans le champ nom d'utilisateur, et le mot de passe root dans le champ mot de passe :

  • Pour lancer un terminal, entrez console comme nom d'utilisateur (par défaut, xterm qui doit être installé séparément... éditez /etc/slim.conf pour changer la préférence du terminal).
  • Pour l'arrêt, entrez halt comme nom d'utilisateur.
  • Pour rebooter, entrez reboot comme nom d'utilisateur.
  • Pour sortir de bash, entrez exit comme nom d'utilisateur.
  • Pour suspendre, entrez suspend comme nom d'utilisateur. La suspension est désactivée par défaut, éditez /etc/slim.conf en tant que root pour décommenter la ligne suspend_cmd et, si nécessaire, modifiez la commande suspend elle-même (en changeant par exemple /usr/sbin/suspend en sudo /usr/sbin/pm-suspend).

Erreur de mise hors tension avec Splashy

Si vous utilisez Splashy et SLiM, il arrive que vous ne puissiez pas vous éteindre ou redémarrer à partir du menu dans GNOME, Xfce, LXDE ou autres. Vérifiez vos /etc/slim.conf et /etc/splash.conf ; définissez le DEFAULT_TTY=7 comme xserver_arguments vt07.

L'icône de la barre d'état système ne fonctionne pas

Si l'icône de la zone de notification lors de la mise hors tension échoue, cela peut être dû au fait que vous n'avez pas les privilèges root. Pour lancer une icône de la barre d'état avec les privilèges de l'utilisateur root, assurez-vous que SLiM lance le programme. Modifiez /etc/slim.conf comme suit :

sessionstart_cmd /path/to/tray/icon/program &

Informations de connexion avec SLiM

Par défaut, SLiM ne parvient pas à enregistrer les connexions à utmp et wtmp, ce qui entraîne des erreurs dans les informations de connexion de who, last, etc. Pour corriger cela, modifiez votre slim.conf comme suit :

 sessionstart_cmd /usr/bin/sessreg -a -l $DISPLAY %user
 sessionstop_cmd /usr/bin/sessreg -d -l $DISPLAY %user

Commandes de connexion SLiM personnalisées

Vous pouvez également utiliser les commandes sessionstart_cmd/sessionstop_cmd dans /etc/slim.conf pour enregistrer des informations spécifiques, telles que la session, l'utilisateur ou le thème utilisé par slim :

 sessionstop_cmd /usr/bin/logger -i -t ASKAPACHE "(sessionstop_cmd : u:%user s:%session t:%theme)"
 sessionstart_cmd /usr/bin/logger -i -t ASKAPACHE "(sessionstart_cmd : u:%user s:%session t:%theme)"

Ou si vous voulez jouer une chanson au chargement de slim (et que vous avez installé le programme beep)

 sessionstart_cmd /usr/bin/beep -f 659 -l 460 -n -f 784 -l 340 -n -f 659 -l 230 -n -f 659 -l 110

Porte-clés GNOME

Attention: Si la connexion automatique est activée, le trousseau de clés GNOME ne sera pas déverrouillé automatiquement lors de la connexion. Cela entraînera un mauvais comportement des applications dépendantes, telles que Chrome/Chromium et NetworkManager (consultez https://bbs.archlinux.org/viewtopic.php?id=167579).

Consultez GNOME/Keyring#Using the keyring pour utiliser GNOME Keyring dans une session personnalisée.

Réglage du DPI avec SLiM

Le serveur Xorg récupère généralement le DPI mais s'il ne le fait pas, vous pouvez le spécifier à SLiM. Si vous définissez la DPI avec l'argument -dpi 96 dans /etc/X11/xinit/xserverrc, cela ne fonctionnera pas avec SLiM. Pour corriger cela, changez votre slim.conf de :

 xserver_arguments -nolisten tcp vt07 

en

 xserver_arguments -nolisten tcp vt07 -dpi 96

Utiliser un thème aléatoire

Utilisez la variable current_theme comme une liste séparée par des virgules pour spécifier un ensemble parmi lequel choisir. La sélection est aléatoire.

Déplacer la session entière vers un autre VT

Si les terminaux tty 3-6 ne sont pas utilisés et sont commentés (Vous pouvez utiliser screen et donc n'avoir besoin que d'un seul terminal), modifiez /etc/slim.conf pour déplacer le serveur X :

xserver_arguments -nolisten tcp vt07

Changez simplement le vt07 en vt03 par exemple car aucun agetty n'est lancé à cet endroit.

Monter automatiquement votre /home chiffré à la connexion

Pour monter automatiquement une partition chiffrée à la connexion de l'utilisateur avec SLiM, configurez pam_mount comme suit :

/etc/pam.d/slim
auth            requisite       pam_nologin.so
auth            required        pam_env.so
auth            required        pam_unix.so
auth            optional        pam_mount.so
account         required        pam_unix.so
password        required        pam_unix.so
password        optional        pam_mount.so
session         required        pam_limits.so
session         required        pam_unix.so
session         optional        pam_mount.so
session         optional        pam_loginuid.so
session         optional        pam_ck_connector.so

Changer la disposition du clavier

Éditez /etc/X11/xorg.conf.d/10-evdev.conf, trouvez la section suivante, ajoutez les deux lignes en gras, et remplacez dvorak par votre clavier préféré :

Section  "InputClass"
          Identifier "evdev keyboard catchall"
          MatchIsKeyboard "on"
          MatchDevicePath "/dev/input/event*"
          Driver "evdev"
       
          # Keyboard layouts
          Option "XkbLayout" "dvorak"
EndSection

Verrouillage d'écran

Slim inclut slimlock, une fonction de verrouillage d'écran. Pour l'utiliser, il suffit d'exécuter slimlock.

Slimlock lit certaines configurations à partir de /etc/slim.conf et de son propre fichier de configuration /etc/slimlock.conf.

Pour empêcher la commutation VT pendant le verrouillage, mettez tty_lock à 1 dans slimlock.conf. Cela nécessite également que vous ayez un accès en écriture sur /dev/console et que slimlock ait la capacité sys_sys_tty_config. Une façon d'y parvenir est de définir slimlock comme suid root :

 chmod +4000 slimlock
 chown root : slimlock

Une alternative est de setcap et de permettre à votre uid d'écrire sur /dev/console.

 sudo setcap cap_sys_tty_config+ep /usr/bin/slimlock
 sudo chmod o+rw /dev/console

Vous pouvez utiliser xss-lock pour verrouiller l'écran automatiquement :

 xss-lock -- /usr/bin/slimlock &

Problèmes connus

Arrêt ou redémarrage bloqué

Il y a un bogue ou un problème connu avec la combinaison de SLiM, Xfce et systemd qui ne permet pas au système de s'éteindre correctement et systemd attend que le service SLiM se termine, mais finit par se terminer.

Pour accélérer le processus d'arrêt, ces lignes peuvent aider lors de l'édition de slim.service :

[Service]
ExecStart=/usr/bin/slim -nodaemon
Restart=on-failure
TimeoutStopSec=5s
IgnoreSIGPIPE=no
ExecStop=/bin/kill -TERM -${MAINPID}

Consultez le FS#32380.

Problème d'identification

Si votre mot de passe contient des caractères non ASCII (é, è, ç, à, etc.) et que la locale de votre système est en Unicode (fr_FR.UTF-8 par exemple), vous ne pourrez pas vous connecter à votre session avec le paquet du dépôt officiel (bugs chez Debian, bug#532060 et chez NixOS, bug#29802.

Une version corrigée disponible sur AUR prend en charge Unicode et résout ce problème : slim-unicodeAUR.

Astuce: En outre, toujours en Unicode, ce patch vous permet d'afficher correctement les messages si vous prévoyez de localiser votre gestionnaire de connexion dans /etc/slim.conf ou des thèmes, par exemple "Reboot system..." pour reboot_msg.

Voir aussi