SDDM (Français)
Le Simple Desktop Display Manager (SDDM) est un gestionnaire d'affichage. Il est recommandé pour les environnements de bureau KDE Plasma et LXQt.
Selon Wikipedia:Simple Desktop Display Manager :
- Simple Desktop Display Manager (SDDM) est un gestionnaire d'affichage (un programme de connexion graphique et un gestionnaire de session) pour les systèmes de fenêtrage X11 et Wayland. SDDM a été écrit à partir de zéro en C++11 et prend en charge les thèmes via QML.
Installation
Installez le paquet sddm. En option, installez sddm-kcm pour le KConfig Module.
Suivez Display manager (Français)#Chargement du gestionnaire d'affichage pour lancer SDDM au démarrage.
Configuration
Le fichier de configuration par défaut pour SDDM est /usr/lib/sddm/sddm.conf.d/default.conf
. Pour toute modification, créez un ou plusieurs fichiers de configuration dans /etc/sddm.conf.d/
. Consultez sddm.conf(5) pour toutes les options.
Le paquet sddm-kcm (inclus dans le groupe plasma) fournit une interface graphique pour configurer SDDM dans les paramètres système de Plasma. Il y a également une sddm-config-editor-gitAUR[broken link: package not found] basée sur Qt disponible dans l'AUR.
Tout devrait fonctionner dès le départ, car Arch Linux utilise systemd et SDDM utilise par défaut systemd-logind
pour la gestion des sessions.
Autologin
SDDM prend en charge la connexion automatique via son fichier de configuration, par exemple :
/etc/sddm.conf.d/autologin.conf
[Autologin] User=john Session=plasma
Cette configuration permet de démarrer une session KDE Plasma pour l'utilisateur john
au démarrage du système. Les types de session disponibles se trouvent dans /usr/share/xsessions/
pour X et dans /usr/share/wayland-sessions/
pour Wayland.
Une option permettant de se connecter automatiquement à KDE Plasma tout en verrouillant simultanément la session n'est pas disponible [2].
Vous pouvez ajouter un script qui active l'économiseur d'écran de KDE au démarrage automatique comme solution de contournement :
#!/bin/sh /usr/bin/dbus-send --session --type=method_call --dest=org.freedesktop.ScreenSaver /ScreenSaver org.freedesktop.ScreenSaver.Lock &
Déverrouiller KDE Wallet automatiquement à la connexion
Consultez KDE Wallet#Unlock KDE Wallet automatically on login.
Paramètres du thème
Les paramètres du thème peuvent être modifiés dans la section [Theme]
. Si vous utilisez les paramètres système de Plasma, les thèmes peuvent afficher des aperçus.
Réglez-les sur breeze
pour obtenir le thème Plasma par défaut.
Certains thèmes sont disponibles dans l'AUR, par exemple archlinux-themes-sddmAUR.
Thème actuel
Définissez le thème actuel grâce à la valeur Current
, par exemple Current=archlinux-simplyblack
.
Modification des thèmes
Le répertoire par défaut des thèmes SDDM est /usr/share/sddm/themes/
. Vous pouvez ajouter vos thèmes personnalisés à ce répertoire dans un sous-répertoire séparé. Notez que SDDM exige que les noms de ces sous-répertoires soient les mêmes que ceux des thèmes. Étudiez les fichiers installés pour modifier ou créer votre propre thème.
Personnalisation d'un thème
Pour remplacer les paramètres du fichier de configuration theme.conf
, créez un fichier personnalisé theme.conf.user
dans le même répertoire. Par exemple, pour modifier l'arrière-plan du thème :
/usr/share/sddm/themes/name/theme.conf.user
[General] background=/path/to/background.png.
Tester (prévisualiser) un thème
Vous pouvez prévisualiser un thème SDDM si nécessaire. Ceci est particulièrement utile si vous n'êtes pas sûr de l'aspect du thème s'il est sélectionné ou si vous venez de modifier un thème et que vous voulez consulter son aspect sans vous déconnecter. Vous pouvez exécuter quelque chose comme ceci :
$ sddm-greeter --test-mode --theme /usr/share/sddm/themes/breeze
Cela devrait ouvrir une nouvelle fenêtre pour chaque moniteur que vous avez connecté et afficher un aperçu du thème.
Curseur de la souris
Pour définir le thème du curseur de la souris, définissez CursorTheme
sur votre thème de curseur préféré.
Les noms de thèmes de curseur de souris Plasma valides sont breeze_cursors
, Breeze_Snow
et breeze-dark
.
Icône de l'utilisateur (avatar)
SDDM lit l'icône de l'utilisateur (alias "avatar") sous forme d'image PNG à partir de ~/.face.icon
pour chaque utilisateur, ou de l'emplacement commun à tous les utilisateurs spécifié par FacesDir
dans un fichier de configuration SDDM. Le paramètre de configuration peut être placé soit directement dans /etc/sddm.conf
, soit, mieux encore, dans un fichier sous /etc/sddm.conf.d/
tel que /etc/sddm.conf.d/avatar.conf
.
Pour utiliser l'option d'emplacement FacesDir
, placez une image PNG pour chaque utilisateur nommée username.face.icon
à l'emplacement spécifié par la clé FacesDir
dans le fichier de configuration. L'emplacement par défaut de FacesDir
est /usr/share/sddm/faces/
. Vous pouvez modifier l'emplacement par défaut de FacesDir
en fonction de vos besoins. Voici un exemple :
/etc/sddm.conf.d/avatar.conf
[Theme] FacesDir=/var/lib/AccountsService/icons/
L'autre option consiste à placer une image PNG nommée .face.icon
à la racine de votre répertoire personnel. Dans ce cas, aucune modification du fichier de configuration SDDM n'est nécessaire. Cependant, vous devez vous assurer que l'utilisateur sddm
peut lire le(s) fichier(s) image(s) PNG pour les icônes de l'utilisateur.
~/.face
et ~/.face.icon
est un lien symbolique vers ce fichier. Si les images de l'icône de l'utilisateur sont des liens symboliques, vous devez définir des autorisations de fichiers appropriées pour les fichiers cibles.Pour définir les autorisations appropriées, exécutez :
$ setfacl -m u:sddm:x ~/ $ setfacl -m u:sddm:r ~/.face.icon
Vous pouvez vérifier les permissions avec :
$ getfacl ~/ $ getfacl ~/.face.icon
Consultez SDDM README : No User Icon.
Numlock
Si vous voulez imposer l'activation de Numlock, définissez Numlock=on
dans la section [General]
.
Rotation de l'affichage
Consultez Xrandr#Configuration.
Paramètres DPI
Il est parfois utile de configurer les paramètres PPI corrects du moniteur au niveau du "Display Manager". [3] Pour ce faire, vous devez ajouter à ServerArguments
le paramètre -dpi your_dpi
à la fin de la chaîne. Par exemple :
/etc/sddm.conf.d/dpi.conf
[X11] ServerArguments=-nolisten tcp -dpi 94
Activer HiDPI
Créez le fichier suivant :
/etc/sddm.conf.d/hidpi.conf
[Wayland] EnableHiDPI=true [X11] EnableHiDPI=true
Activer le clavier virtuel
Installez qt5-virtualkeyboard.
Créez le fichier suivant :
/etc/sddm.conf.d/virtualkbd.conf
[General] InputMethod=qtvirtualkeyboard
SDDM affiche maintenant un bouton dans le coin inférieur gauche de l'écran de connexion pour ouvrir le clavier virtuel.
Utilisation d'un lecteur d'empreintes digitales
SDDM fonctionne avec un lecteur d'empreintes digitales lorsque vous utilisez fprint. Après avoir installé fprint et ajouté des signatures d'empreintes digitales, ajoutez ce qui suit en haut de /etc/pam.d/sddm
:
/etc/pam.d/sddm
auth sufficient pam_fprintd.so
Afin d'utiliser un mot de passe ou une empreinte digitale, vous pouvez ajouter ce qui suit en haut du fichier :
/etc/pam.d/sddm
auth [success=1 new_authtok_reqd=1 default=ignore] pam_unix.so try_first_pass likeauth nullok auth sufficient pam_fprintd.so
Notez que KWallet ne peut pas être déverrouillé à l'aide d'un lecteur d'empreintes digitales (consultez KDE Wallet#Unlock KDE Wallet automatically on login), mais la première ligne garantit qu'une connexion par mot de passe déverrouillera automatiquement KWallet.
/etc/pam.d/kde
.
Pour utiliser soit un mot de passe, soit une empreinte digitale, vous pouvez ajouter ce qui suit en haut du fichier :
/etc/pam.d/kde
auth sufficient pam_unix.so try_first_pass likeauth nullok auth sufficient pam_fprintd.so
La première ligne est différente de la configuration correspondante /etc/pam.d/sddm
car l'écran de verrouillage KDE n'a pas besoin d'exécuter le module pam KWallet.
Si vous appuyez maintenant sur entrée dans le champ vide du mot de passe, le lecteur d'empreintes digitales devrait commencer à fonctionner.
Exécution sous Wayland
SDDM peut fonctionner sans root sous Wayland, mais actuellement seulement en utilisant le paquet sddm-gitAUR.
Créez un nouveau fichier de configuration dans le répertoire /etc/sddm.conf.d/
, nommez-le comme /etc/sddm.conf.d/10-wayland.conf
.
Ajoutez ce qui suit au nouveau fichier :
/etc/sddm.conf.d/10-wayland.conf
[General] DisplayServer=wayland GreeterEnvironment=QT_WAYLAND_SHELL_INTEGRATION=layer-shell [Wayland] CompositorCommand=
Ensuite, vous aurez besoin d'un compositeur Wayland (tel que le compositeur KWin de KDE) pour rendre SDDM, et entrer le programme et les arguments pertinents comme paramètre de CompositorCommand
.
KDE / KWin
Ajoutez ce qui suit comme paramètre à CompositorCommand
dans le fichier de configuration SDDM créé ci-dessus (par exemple /etc/sddm.conf.d/10-wayland.conf
) :
/etc/sddm.conf.d/10-wayland.conf
[Wayland] CompositorCommand=kwin_wayland --no-lockscreen
Pour activer la prise en charge des claviers virtuels (par exemple, en utilisant qt5-virtualkeyboard ou maliit-keyboard), ajoutez l'option --inputmethod
avec le clavier approprié à la commande kwin_wayland
, comme suit (en remplaçant maliit-keyboard
par qtvirtualkeyboard
si nécessaire) :
/etc/sddm.conf.d/10-wayland.conf
[Wayland] CompositorCommand=kwin_wayland --no-lockscreen --inputmethod maliit-keyboard
Dépannage
Écran vide avec curseur, mais aucun greeter ne s'affiche
Le greeter se bloque s'il n'y a pas d'espace disque disponible. Vérifiez votre espace disque avec df -h
.
Si l'espace disque n'est pas le problème, cela peut être dû à un bug. Passez à un autre TTY, puis essayez loginctl unlock-session session_id
ou redémarrez SDDM.
Long temps de chargement avant que SDDM n'affiche le greeter
Un pool d'entropie faible peut causer un long temps de chargement de SDDM (rapport de bug). Consultez Random number generation pour des suggestions afin d'augmenter le pool d'entropie.
Blocage après la connexion
Essayez de supprimer ~/.Xauthority
et de vous connecter à nouveau sans redémarrer. Si vous redémarrez sans vous connecter, le fichier sera recréé et le problème persistera.
SDDM démarre sur tty1 au lieu de tty7
SDDM suit la convention de systemd de démarrer la première session graphique sur tty1. Si vous préférez l'ancienne convention où tty1 à tty6 sont réservés aux consoles texte, changez la valeur par défaut de la variable MinimumVT
, qui se trouve dans la section [X11]
:
/etc/sddm.conf.d/tty.conf
[X11] MinimumVT=7
Un ou plusieurs utilisateurs ne s'affichent pas sur le greeter
Par défaut, SDDM est configuré pour afficher uniquement les utilisateurs dont l'UID est compris entre 1000 et 60513. Si les UID des utilisateurs souhaités sont en dehors de cette plage, vous devrez modifier la plage.
Par exemple, pour un UID de 501, définissez MinimumUid
et masquez ceux dont les shells sont utilisés par les utilisateurs du système :
/etc/sddm.conf.d/uid.conf
[Utilisateurs] HideShells=/usr/bin/nologin,/sbin/nologin,/bin/false,/usr/bin/git-shell MinimumUid=500
Pour les utilisateurs ayant un UID supérieur, définissez MaximumUid
à la valeur appropriée.
Les avatars des utilisateurs ne s'affichent pas sur le greeter
Les avatars des utilisateurs ne s'affichent pas sur le greeter si le nombre d'utilisateurs dépasse le paramètre DisableAvatarsThreshold
ou si les avatars ne sont pas du tout activés comme le contrôle le paramètre EnableAvatars
. Pour contourner ce problème, ajoutez les lignes suivantes à votre configuration sddm :
/etc/sddm.conf.d/avatars.conf
[Theme] EnableAvatars=true # activer les avatars DisableAvatarsThreshold=7 # définit le seuil pour le nombre d'utilisateurs. Les avatars ne sont pas affichés si ce seuil est dépassé.
SDDM charge uniquement la disposition de clavier américaine
SDDM charge la disposition du clavier spécifiée dans /etc/X11/xorg.conf.d/00-keyboard.conf
. Vous pouvez générer ce fichier de configuration par la commande localectl set-x11-keymap
. Consultez Configuration du clavier dans Xorg pour plus d'informations.
Une autre façon de définir la disposition du clavier qui ne sera définie que dans SDDM et non dans les sessions suivantes est d'invoquer une commande setxkbmap dans le script de démarrage de SDDM, situé à /usr/share/sddm/scripts/Xsetup
. Consultez Xorg (Français)/Keyboard configuration (Français)#Utilisation de setxkbmap pour des exemples.
SDDM peut également afficher de manière incorrecte la disposition US mais passera immédiatement à la disposition correcte dès que vous commencerez à taper votre mot de passe [4]. Cela ne semble pas être un bogue dans SDDM mais dans le serveur X. [5]
La résolution de l'écran est trop faible
Le problème peut être causé par l'utilisation de HiDPI pour les moniteurs avec des EDID corrompus. [6]. Si vous avez #Activer HiDPI|activé HiDPI]], essayez de le désactiver.
Si même ce qui précède échoue, vous pouvez essayer de définir la taille de votre écran dans un fichier de configuration Xorg :
/etc/X11/xorg.conf.d/90-monitor.conf
Section "Monitor" (Moniteur) Identifiant "<moniteur par défaut>" DisplaySize 345 194 # en millimètres EndSection
Temps de chargement long sur le répertoire personnel d'autofs
SDDM essaie par défaut d'afficher les avatars des utilisateurs en accédant au fichier ~/.face.icon
. Si votre répertoire personnel est un autofs, par exemple si vous utilisez dm-crypt, cela le fera attendre pendant 60 secondes, jusqu'à ce qu'autofs signale que le répertoire ne peut pas être monté.
Vous pouvez désactiver les avatars en créant le fichier de configuration suivant :
/etc/sddm.conf.d/avatar.conf
[Theme] EnableAvatars=false
Fichier d'autorité X (aka MIT-MAGIC-COOKIE)
SDDM utilise un nouvel UUID aléatoire pour le fichier d'authentification, comme décrit en détail sur [7]. Ainsi, afin de trouver ce fichier, on peut utiliser un script :
# find /var/run/sddm/ -type f
Cela peut être nécessaire si l'on a besoin de lancer x11vnc alors qu'aucun utilisateur n'est connecté. Par exemple :
# x11vnc -display :0 -auth "$( find /var/run/sddm/ -type f )"
Chevauchement des greeters sur une configuration multi-écrans
Il arrive que la disposition du moniteur X ne soit pas configurée correctement sur une configuration multi-écrans, ce qui entraîne un chevauchement des greeters. Pour résoudre ce problème, ajoutez les lignes suivantes pour ordonner la disposition de votre greeter sddm de gauche à droite :
/usr/share/sddm/scripts/Xsetup
for next in $(xrandr --listmonitors | grep -E " *[0-9]+ :.*" | cut -d" " -f6) ; do [ -z "$current" ] && current=$next && continuer xrandr --output $current --auto --output $next --auto --right-of $current current=$next done