Display manager (Français)

From ArchWiki
État de la traduction: Cet article est la version francophone de Display manager. Date de la dernière traduction: 2022-01-12. Vous pouvez aider à synchroniser la traduction s'il y a eu des changements dans la version anglaise.

Un gestionnaire d'affichage, ou gestionnaire de connexion, est typiquement une interface utilisateur graphique qui est affichée à la fin du processus de démarrage à la place du shell par défaut. Il existe différentes implémentations des gestionnaires d'affichage, tout comme il existe différents types de gestionnaires de fenêtres et d'environnements de bureau. Il y a généralement une certaine quantité de personnalisation et de thématisation disponible avec chacun d'eux.

Liste des gestionnaires d'affichage

Console

  • CDM — Gestionnaire de connexion écrit en Bash.
https://github.com/evertiro/cdm || cdmAUR
  • Console TDM — Extension pour xinit écrite en Bash pur.
https://github.com/dopsi/console-tdm || console-tdmAUR
  • nodm — Gestionnaire d'affichage pour les connexions automatiques (non maintenu depuis 2017).
https://github.com/spanezz/nodm || nodm
  • Ly — TUI (ncurses-like) gestionnaire d'affichage pour Linux et BSD. Prend en charge les sessions X et Wayland.
https://github.com/nullgemm/ly || ly
  • tbsm — Un lanceur de session ou d'application Bash. Prend en charge les sessions X et Wayland (non maintenu depuis 2018).
https://loh-tar.github.io/tbsm/ || tbsmAUR
  • emptty — Simple gestionnaire d'affichage CLI sur TTY avec prise en charge de X et Wayland.
https://github.com/tvrzna/emptty/ || emptty-gitAUR

Graphique

https://github.com/Obsidian-StudiosInc/entrance || entrance-gitAUR
  • GDM — Le gestionnaire de connexion de GNOME.
https://wiki.gnome.org/Projects/GDM || gdm
  • LightDM — Gestionnaire d'affichage multi-bureau, peut utiliser divers frontaux écrits dans n'importe quelle boîte à outils.
https://github.com/canonical/lightdm/ || lightdm
  • LXDM — Le gestionnaire de connexion de LXDE. Peut être utilisé indépendamment de l'environnement de bureau LXDE.
https://sourceforge.net/projects/lxdm/ || lxdm
  • SDDM — Gestionnaire d'affichage basé sur QML et successeur de KDM ; recommandé pour KDE et LXQt.
https://github.com/sddm/sddm || sddm
  • XDM — X gestionnaire d'affichage avec prise en charge de XDMCP, sélecteur d'hôte.
xdm(8) || xorg-xdm

Daemons de connexion

  • greetd — Daemon de connexion qui prend en charge des greeters en console et en mode graphique.
https://git.sr.ht/~kennylevinsen/greetd || greetd

Chargement du gestionnaire d'affichage

Pour activer la connexion graphique, activez le service systemd approprié. Par exemple, pour SDDM, activez sddm.service.

Cela devrait fonctionner par défaut. Sinon, vous devrez peut-être réinitialiser un lien symbolique personnalisé default.target pour qu'il pointe vers la graphical.target par défaut. Consultez Systemd (Français)#Changer la cible par défaut pour le démarrage.

Après avoir activé SDDM, un lien symbolique display-manager.service doit être défini dans /etc/systemd/system/. Vous devrez peut-être utiliser --force pour remplacer les anciens liens symboliques.

$ file /etc/systemd/system/display-manager.service
/etc/systemd/system/display-manager.service: symbolic link to /usr/lib/systemd/system/sddm.service

Utilisation de systemd-logind

Afin de vérifier l'état de votre session utilisateur, vous pouvez utiliser loginctl. Toutes les actions polkit comme la suspension du système ou le montage de disques externes fonctionneront d'emblée.

$ loginctl show-session $XDG_SESSION_ID

Configuration de la session

De nombreux gestionnaires d'affichage lisent les sessions disponibles dans le répertoire /usr/share/xsessions/. Ce répertoire contient les desktop entry files standard pour chaque environnement de bureau ou gestionnaire de fenêtres. Certains gestionnaires d'affichage utilisent un répertoire séparé /usr/share/wayland-sessions/ pour lister les sessions spécifiques à Wayland.

Pour ajouter/supprimer des entrées dans la liste de sessions de votre gestionnaire d'affichage, créez/supprimez les fichiers .desktop dans /usr/share/xsessions/ comme vous le souhaitez. Un fichier .desktop typique ressemblera à quelque chose comme :

[Desktop Entry]
Name=Openbox
Comment=Log in using the Openbox window manager (without a session manager)
Exec=/usr/bin/openbox-session
TryExec=/usr/bin/openbox-session
Icon=openbox.png
Type=Application

Exécuter ~/.xinitrc en tant que session

L'installation de xinit-xsessionAUR fournira une option pour exécuter votre xinitrc en tant que session. Il suffit de définir xinitrc comme session dans les paramètres de votre gestionnaire d'affichage et de s'assurer que le fichier ~/.xinitrc est exécutable.

Lancement d'applications sans gestionnaire de fenêtres

Vous pouvez également lancer une application sans aucune décoration, ni bureau, ni gestion de fenêtre. Par exemple, pour lancer google-chromeAUR, créez un fichier web-browser.desktop dans /usr/share/xsessions/ comme ceci :

[Desktop Entry]
Name=Web Browser
Comment=Use a web browser as your session
Exec=/usr/bin/google-chrome --auto-launch-at-startup
TryExec=/usr/bin/google-chrome --auto-launch-at-startup
Icon=google-chrome
Type=Application

Dans ce cas, lorsque vous vous connectez, l'application définie avec Exec sera lancée immédiatement. Lorsque vous fermez l'application, vous revenez au gestionnaire de connexion (comme lorsque vous vous déconnectez d'un environnement de bureau normal ou d'un gestionnaire de fenêtres).

Il est important de se rappeler que la plupart des applications graphiques n'ont pas été conçues pour être lancées de cette manière et qu'il se peut que vous ayez des ajustements manuels à faire ou des limitations avec lesquelles vivre (il n'y a pas de gestionnaire de fenêtres, donc ne vous attendez pas à pouvoir déplacer ou redimensionner aucune fenêtre, y compris les boîtes de dialogue ; néanmoins, vous pourrez peut-être définir la géométrie des fenêtres dans les fichiers de configuration de l'application).

Consultez également Xinit (Français)#Démarrer des applications sans gestionnaire de fenêtres.

Trucs et astuces

Démarrage automatique

La plupart des gestionnaires d'affichage ont pour source /etc/xprofile, ~/.xprofile et /etc/X11/xinit/xinitrc.d/. Pour plus de détails, consultez xprofile.

Définir la langue de la session utilisateur

Pour les gestionnaires d'affichage qui utilisent AccountsService, la locale de la session utilisateur peut être définie en modifiant:

/var/lib/AccountsService/users/$USER
[User]
Language=your_locale

your_locale est une valeur telle que en_GB.UTF-8.

Vous pouvez également réaliser cette opération en utilisant D-Bus : busctl call org.freedesktop.Accounts /org/freedesktop/Accounts/User$UID org.freedesktop.Accounts.User SetLanguage s your_locale

Déconnectez-vous et reconnectez-vous pour que les changements prennent effet.