GDM (Français)

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

Selon GDM - GNOME Display Manager : "Le gestionnaire d'affichage GNOME (GDM) est un programme qui gère les serveurs d'affichage graphique et traite les connexions des utilisateurs graphiques."

Les gestionnaires d'affichage fournissent aux utilisateurs du Système X Window et de Wayland une invite de connexion graphique.

Installation

GDM peut être installé avec le paquet gdm, et est installé en tant que membre du groupe gnome.

Démarrage

Pour exécuter GDM au moment du démarrage, activez gdm.service.

Démarrage automatique des applications

Pour démarrer automatiquement les applications après la connexion, suivez les instructions de Autostarting#On_desktop_environment_startup qui se rapportent à votre environnement de bureau.

Configuration

Image d'arrière-plan de l'écran de connexion

Tango-inaccurate.pngThe factual accuracy of this article or section is disputed.Tango-inaccurate.png

Reason: La configuration n'est pas persistante et les modifications seront annulées après une mise à jour de GNOME Shell. Suggestion : Réécrire pour utiliser l'extension Gnome "User Themes". (Discuss in Talk:GDM)
Note:
  • Depuis GNOME 3.16, les thèmes de GNOME Shell sont désormais stockés sous forme de fichiers binaires (gresource).
  • Cette modification sera écrasée lors des mises à jour ultérieures de gnome-shell.

Tout d'abord, vous devez extraire le thème GNOME Shell existant dans un dossier de votre répertoire personnel. Vous pouvez le faire à l'aide du script suivant :

extractgst.sh
#!/bin/sh
gst=/usr/share/gnome-shell/gnome-shell-theme.gresource
workdir=${HOME}/shell-theme

for r in `gresource list $gst`; do
	r=${r#\/org\/gnome\/shell/}
	if [ ! -d $workdir/${r%/*} ]; then
	  mkdir -p $workdir/${r%/*}
	fi
done

for r in `gresource list $gst`; do
        gresource extract $gst $r >$workdir/${r#\/org\/gnome\/shell/}
done

Naviguez vers le répertoire créé. Vous devriez constater que les fichiers du thème y ont été extraits. Copiez maintenant votre image d'arrière-plan préférée dans ce répertoire.

Ensuite, vous devez créer un fichier dans le répertoire avec le contenu suivant :

gnome-shell-theme.gresource.xml
<?xml version="1.0" encoding="UTF-8"?>
<gresources>
  <gresource prefix="/org/gnome/shell/theme">
    <file alias="icons/scalable/actions/color-pick.svg">color-pick.svg</file>
    <file alias="icons/scalable/actions/pointer-double-click-symbolic.svg">pointer-double-click-symbolic.svg</file>
    <file alias="icons/scalable/actions/pointer-drag-symbolic.svg">pointer-drag-symbolic.svg</file>
    <file alias="icons/scalable/actions/pointer-primary-click-symbolic.svg">pointer-primary-click-symbolic.svg</file>
    <file alias="icons/scalable/actions/pointer-secondary-click-symbolic.svg">pointer-secondary-click-symbolic.svg</file>
    <file alias="icons/scalable/actions/preview-close-symbolic.svg">window-close-24-symbolic.svg</file>
    <file alias="icons/scalable/status/carousel-arrow-next-24-symbolic.svg">carousel-arrow-next-24-symbolic.svg</file>
    <file alias="icons/scalable/status/carousel-arrow-back-24-symbolic.svg">carousel-arrow-back-24-symbolic.svg</file>
    <file alias="icons/scalable/status/eye-open-negative-filled-symbolic.svg">eye-open-negative-filled-symbolic.svg</file>
    <file alias="icons/scalable/status/eye-not-looking-symbolic.svg">eye-not-looking-symbolic.svg</file>
    <file alias="icons/scalable/status/keyboard-caps-lock-filled-symbolic.svg">keyboard-caps-lock-filled-symbolic.svg</file>
    <file alias="icons/scalable/status/keyboard-enter-symbolic.svg">keyboard-enter-symbolic.svg</file>
    <file alias="icons/scalable/status/keyboard-hide-symbolic.svg">keyboard-hide-symbolic.svg</file>
    <file alias="icons/scalable/status/keyboard-layout-filled-symbolic.svg">keyboard-layout-filled-symbolic.svg</file>
    <file alias="icons/scalable/status/keyboard-shift-filled-symbolic.svg">keyboard-shift-filled-symbolic.svg</file>
    <file alias="icons/scalable/status/message-indicator-symbolic.svg">message-indicator-symbolic.svg</file>
    <file>calendar-today.svg</file>
    <file>checkbox-focused.svg</file>
    <file>checkbox-off-focused.svg</file>
    <file>checkbox-off.svg</file>
    <file>checkbox.svg</file>
    <file>filename</file>
    <file>gnome-shell.css</file>
    <file>gnome-shell-high-contrast.css</file>
    <file>gnome-shell-start.svg</file>
    <file>no-events.svg</file>
    <file>no-notifications.svg</file>
    <file>pad-osd.css</file>
    <file>process-working.svg</file>
    <file>toggle-off.svg</file>
    <file>toggle-off-dark.svg</file>
    <file>toggle-off-hc.svg</file>
    <file>toggle-on.svg</file>
    <file>toggle-on-dark.svg</file>
    <file>toggle-on-hc.svg</file>
    <file>workspace-placeholder.svg</file>
  </gresource>
</gresources>

Remplacez filename par le nom de fichier de votre image de fond ou supprimez la ligne pour utiliser une valeur de couleur hexagonale à la place.

Maintenant, ouvrez le fichier gnome-shell.css dans le répertoire et modifiez la définition #lockDialogGroup comme suit :

#lockDialogGroup {
  background: url(filename);
  background-size: widthpx heightpx;
  background-repeat: no-repeat;
}

Définissez background-size à la résolution utilisée par GDM ; il ne s'agit pas nécessairement de la résolution de l'image. Pour une liste des résolutions d'affichage, consultez Définition d'écran. Encore une fois, définissez filename comme étant le nom de l'image d'arrière-plan.

Si vous souhaitez uniquement modifier la couleur de l'arrière-plan, ajustez la définition de #lockDialogGroup comme suit :

#lockDialogGroup {
  background-color: #color;
}

color est la nouvelle couleur d'arrière-plan codée en hexadécimal.

Ensuite, compilez le thème en utilisant la commande suivante :

$ glib-compile-resources gnome-shell-theme.gresource.xml

Copiez ensuite le fichier résultant gnome-shell-theme.gresource dans le répertoire /usr/share/gnome-shell.

Enfin, redémarrez gdm.service (notez que la simple déconnexion n'est pas suffisante) et vous devriez constater qu'il utilise l'image d'arrière-plan de votre choix.

Pour plus d'informations, veuillez consulter le fil de discussion suivant [1]. Un script shell pour automatiser les étapes ci-dessus est disponible sur le dépôt github de DimaZirix.

Configuration par dconf

Certains paramètres de GDM sont stockés dans une base de données [[dconf. Ils peuvent être configurés soit en ajoutant des keyfiles au répertoire /etc/dconf/db/gdm.d puis en recompilant la base de données GDM en exécutant dconf update en tant que root ou en se connectant à l'utilisateur GDM sur le système et en changeant le paramètre directement en utilisant l'outil de ligne de commande gsettings. Notez que pour la première approche, un fichier de profil GDM est nécessaire - il doit être créé manuellement car il n'est plus fourni en amont, voir ci-dessous :

/etc/dconf/profile/gdm
user-db:user
system-db:gdm
file-db:/usr/share/gdm/greeter-dconf-defaults

Pour cette dernière approche, vous pouvez vous connecter à l'utilisateur GDM avec la commande ci-dessous :

# machinectl shell gdm@ /bin/bash

Logo de l'écran de connexion

Créez le fichier de configuration suivant :

/etc/dconf/db/gdm.d/02-logo
[org/gnome/login-screen]
logo='/path/to/logo.png'

Recompilez ensuite la base de données GDM. Alternativement, exécutez la commande suivante pour vous connecter temporairement à l'utilisateur GDM et changer le logo :

$ sudo -u gdm dbus-launch gsettings set org.gnome.login-screen logo '/path/to/logo.png'

Changer le thème du curseur

GDM ne tient pas compte des paramètres du thème du curseur de GNOME et ignore également le thème du curseur défini conformément à la spécification XDG. Pour changer le thème du curseur utilisé dans GDM, créez le fichier de configuration suivant :

/etc/dconf/db/gdm.d/10-cursor-settings
[org/gnome/desktop/interface]
cursor-theme='theme-name'

Puis recompilez la base de données GDM. Alternativement, exécutez ce qui suit pour vous connecter temporairement à l'utilisateur GDM et changer le thème du curseur :

$ sudo -u gdm dbus-launch gsettings set org.gnome.desktop.interface cursor-theme 'theme-name'

Changement du thème de l'icône

Les mêmes méthodes peuvent être utilisées pour changer le thème des icônes. Créez le fichier de configuration suivant :

/etc/dconf/db/gdm.d/11-icon-settings
[org/gnome/desktop/interface]
icon-theme='theme-name'

Ensuite, recompilez la base de données GDM. Sinon, exécutez ce qui suit pour vous connecter temporairement à l'utilisateur GDM et modifier le thème des icônes :

$ sudo -u gdm dbus-launch gsettings set org.gnome.desktop.interface icon-theme 'theme-name'

Police plus grande pour l'écran de connexion

Cliquez sur l'icône d'accessibilité en haut à droite de l'écran (un cercle blanc avec la silhouette d'une personne au centre) et cochez l'option Texte Large.

Pour définir un facteur d'échelle spécifique, créez le fichier de configuration suivant :

/etc/dconf/db/gdm.d/03-scaling
[org/gnome/desktop/interface]
text-scaling-factor='1.25'

Recompilez ensuite la base de données GDM. Alternativement, exécutez ce qui suit pour vous connecter temporairement à l'utilisateur GDM et changer la police :

$ sudo -u gdm dbus-launch gsettings set org.gnome.desktop.interface text-scaling-factor '1.25'

Désactiver le son

Cet ajustement désactive le retour audible entendu lorsque le volume du système est modifié (via le clavier) sur l'écran de connexion.

Créez le fichier de configuration suivant :

/etc/dconf/db/gdm.d/04-sound
[org/gnome/desktop/sound]
event-sounds=false

Puis recompilez la base de données GDM. Alternativement, exécutez ce qui suit pour vous connecter temporairement à l'utilisateur GDM et désactiver le son :

$ sudo -u gdm dbus-launch gsettings set org.gnome.desktop.sound event-sounds 'false'

Configurer le comportement du bouton d'alimentation

Note:
  • Les paramètres logind du bouton d'alimentation sont remplacés par le daemon des paramètres de GNOME. [2]
  • Depuis GDM 3.18, le bouton d'alimentation ne peut pas être réglé sur interactif. [3]
  • Dans certains cas, ce paramètre sera ignoré et des valeurs par défaut codées en dur seront utilisées. [4]
Attention: Veuillez noter que le daemon acpid gère également les événements "bouton d'alimentation" et "bouton de mise en veille prolongée". L'exécution des deux systèmes en même temps peut entraîner un comportement inattendu.

Créez le fichier de configuration suivant :

/etc/dconf/db/gdm.d/05-power
[org/gnome/settings-daemon/plugins/power]
power-button-action='action'

Recompilez ensuite la base de données GDM. Alternativement, exécutez ce qui suit pour vous connecter temporairement à l'utilisateur GDM et configurer le comportement :

$ sudo -u gdm dbus-launch gsettings set org.gnome.settings-daemon.plugins.power power-button-action 'action'

action peut être l'un de nothing, suspend ou hibernate.

Activer la fonction "taper pour cliquer"

L'option «Tap-to-click» est désactivée par défaut dans GDM (et GNOME), mais vous pouvez facilement l'activer avec un paramètre dconf.

Note: Si vous voulez faire cela sous X, vous devez d'abord configurer des autorisations d'accès au serveur X correctes - consultez #Configurer les autorisations d'accès au serveur X.

Pour activer la fonction Tap-to-Click, créez le fichier de configuration suivant :

/etc/dconf/db/gdm.d/06-tap-to-click
[org/gnome/desktop/peripherals/touchpad]
tap-to-click=true

Recompilez ensuite la base de données GDM. Alternativement, exécutez ce qui suit pour vous connecter temporairement à l'utilisateur GDM et activer l'action :

$ sudo -u gdm dbus-launch gsettings set org.gnome.desktop.peripherals.touchpad tap-to-click 'true'

Désactiver/Activer le menu d'accessibilité

Pour désactiver ou activer le menu d'accessibilité, créez le fichier de configuration suivant :

/etc/dconf/db/gdm.d/07-accessibility
[org/gnome/desktop/interface]
toolkit-accessibility='boolean'

Recompilez ensuite la base de données GDM. Sinon, exécutez ce qui suit pour vous connecter temporairement à l'utilisateur GDM et modifier l'état :

$ sudo -u gdm dbus-launch gsettings set org.gnome.desktop.interface toolkit-accessibility 'boolean'

Le menu est désactivé lorsque la clé est false, activé lorsqu'elle est true.

Activer la veilleuse sur GDM

Pour activer la Veilleuse sur GDM, lancez

$ sudo -u gdm dbus-launch gsettings set org.gnome.settings-daemon.plugins.color night-light-enabled true

Disposition du clavier

La disposition du clavier du système sera appliquée à GDM. Consultez Xorg (Français)/Keyboard configuration (Français).

Astuce: Voir Wikipedia:ISO 3166-1 pour une liste de claviers.

Lorsque vous utilisez Wayland, vous devrez peut-être spécifier manuellement la disposition du clavier X avec localectl :

$ localectl set-x11-keymap fr.

Si un système a plusieurs utilisateurs, il est possible de spécifier une disposition de clavier différente de celle du système pour que GDM l'utilise. Tout d'abord, assurez-vous que le paquet gnome-control-center est installé. Ensuite, démarrez gnome-control-center et naviguez jusqu'à Region & Language > Input Sources. Dans la barre d'en-tête, cliquez sur le bouton à bascule Login Screen et choisissez une disposition de clavier dans la liste. Notez que le bouton Login Screen ne sera visible dans la barre d'en-tête que si plusieurs utilisateurs sont présents sur le système [5].

Les utilisateurs de GDM 2.x (anciennement GDM) peuvent avoir besoin de modifier ~/.dmrc comme indiqué ci-dessous :

~/.dmrc
[Desktop]
Language=fr_FR.UTF-8   # à changer pour la langue
Layout=fr   nodeadkeys # à changer pour la disposition du clavier

Changer la langue

La langue du système sera appliquée à GDM. Si un système a plusieurs utilisateurs, il est possible de définir une langue pour GDM différente de la langue du système. Dans ce cas, assurez-vous d'abord que gnome-control-center est installé. Ensuite, lancez gnome-control-center et choisissez Région et langue. Dans la barre d'en-tête, cochez le bouton à bascule Login Screen. Enfin, cliquez sur Language et choisissez votre langue dans la liste. Vous serez invité à saisir votre mot de passe root. Notez que le bouton Login Screen ne sera visible dans la barre d'en-tête que si plusieurs utilisateurs sont présents sur le système [6].

Astuce: En ajoutant 2 langues de saisie différentes, en se déconnectant puis en sélectionnant votre langue par défaut, GDM se souviendra de votre choix une fois la deuxième option supprimée

Utilisateurs et connexion

Connexion automatique

Attention: Ne tentez pas les conseils suivants pour les utilisateurs gérés par systemd-homed. Ceci est actuellement non implémenté et fera planter GDM.

Pour activer la connexion automatique avec GDM, ajoutez ce qui suit à /etc/gdm/custom.conf (remplacez username par le vôtre) :

/etc/gdm/custom.conf
# Activer la connexion automatique pour l'utilisateur
[daemon]
AutomaticLogin=username
AutomaticLoginEnable=True
Astuce: Si GDM échoue après avoir ajouté ces lignes, commentez-les depuis un TTY.

ou pour une connexion automatique avec un délai :

/etc/gdm/custom.conf
[daemon]
TimedLoginEnable=true
TimedLogin=username
TimedLoginDelay=1

Vous pouvez définir la session utilisée pour la connexion automatique (remplacez gnome-xorg par la session souhaitée) :

/var/lib/AccountsService/users/username
XSession=gnome-xorg

Connexion sans mot de passe =

Si vous voulez contourner l'invite de mot de passe dans GDM, ajoutez simplement la ligne suivante sur la première ligne de /etc/pam.d/gdm-password :

auth sufficient pam_succeed_if.so user ingroup nopasswdlogin

Ensuite, ajoutez le groupe nopasswdlogin à votre système. Consultez Groupe d'utilisateurs pour obtenir des descriptions de groupes et des commandes de gestion de groupes.

Maintenant, ajoutez votre utilisateur au groupe nopasswdlogin et vous n'aurez qu'à cliquer sur votre nom d'utilisateur pour vous connecter.

Attention:
  • Ne faites pas cela pour un compte root.
  • Vous ne pourrez plus changer votre type de session à la connexion avec GDM. Si vous voulez changer votre type de session par défaut, vous devrez d'abord retirer votre utilisateur du groupe nopasswdlogin.

Fermeture sans mot de passe pour les sessions multiples

GDM utilise polkit et logind pour obtenir les autorisations d'arrêt. Vous pouvez arrêter le système lorsque plusieurs utilisateurs sont connectés en définissant :

/etc/polkit-1/localauthority.conf.d/org.freedesktop.logind.policy
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE policyconfig PUBLIC
 "-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
 "http://www.freedesktop.org/software/polkit/policyconfig-1.dtd">

<!-- 
Policy definitions for logind
 -->

<policyconfig>

  <action id="org.freedesktop.login1.power-off-multiple-sessions">
    <description>Shutdown the system when multiple users are logged in</description>
    <message>System policy prevents shutting down the system when other users are logged in</message>
    <defaults>
      <allow_inactive>yes</allow_inactive>
      <allow_active>yes</allow_active>
    </defaults>
  </action>

</policyconfig>

Vous pouvez trouver toutes les options logind disponibles (par exemple, reboot-multiple-sessions) dans org.freedesktop.login1(5).

Activer la connexion root dans GDM

Il n'est pas conseillé de se connecter en tant que root, mais si nécessaire vous pouvez éditer /etc/pam.d/gdm-password et ajouter la ligne suivante avant la ligne auth required pam_deny.so :

/etc/pam.d/gdm-password
auth            sufficient      pam_succeed_if.so uid eq 0 quiet

Le fichier devrait ressembler à ceci :

/etc/pam.d/gdm-password
...
auth            sufficient      pam_succeed_if.so uid eq 0 quiet
auth            sufficient      pam_succeed_if.so uid >= 1000 quiet
auth            required        pam_deny.so
...

Vous devriez être en mesure de vous connecter en tant que root après avoir redémarré GDM.

Cacher un utilisateur de la liste de connexion

Les utilisateurs de la liste d'utilisateurs de GDM sont rassemblés par AccountsService. Il cache automatiquement les utilisateurs du système (UID < 1000). Pour cacher les utilisateurs ordinaires de la liste de connexion, créez ou modifiez un fichier portant le nom de l'utilisateur à cacher dans /var/lib/AccountsService/users/ pour qu'il contienne au moins :

/var/lib/AccountsService/users/username
[User]
SystemAccount=true

Configurer les paramètres par défaut du moniteur

Certains environnements de bureau stockent les paramètres d'affichage dans ~/.config/monitors.xml. Les commandes xrandr sont ensuite générées sur la base du contenu du fichier. GDM a un fichier similaire stocké dans /var/lib/gdm/.config/monitors.xml.

Si vous avez configuré vos moniteurs comme vous le souhaitez (résolution, taux de rafraîchissement, orientation, mise à l'échelle, primaire et ainsi de suite) dans ~/.config/monitors.xml et que vous voulez que GDM respecte ces paramètres :

# cp ~/.config/monitors.xml /var/lib/gdm/.config/
# chown gdm:gdm /var/lib/gdm/.config/monitors.xml

Les parties pertinentes de monitors.xml pour la rotation et la mise à l'échelle de l'écran sont :

<monitors version="2">
  <configuration>
    <logicalmonitor>
      ...
      <scale>2</scale>
      ...
      <transform>
        <rotation>right</rotation>
        <flipped>no</flipped>
      </transform>
      ...
    </logicalmonitor>
  </configuration>
</monitors>

Les modifications prendront effet à la déconnexion. Ceci est nécessaire car GDM ne respecte pas xorg.conf.

Note:
  • Si vous utilisez GDM sous Wayland, vous devez également utiliser un monitors.xml qui a été créé sous Wayland. Consultez le bug GDM 224 pour plus d'informations. Alternativement, vous pouvez forcer GDM à #Utiliser Xorg, et utiliser un monitors.xml qui a été créé sous Xorg.
  • Si vous utilisez «fractional scaling», vous devez l'activer pour l'utilisateur gdm.

Configurer l'autorisation d'accès au serveur X

Vous pouvez utiliser la commande xhost pour configurer les autorisations d'accès au serveur X.

Par exemple, pour accorder à GDM le droit d'accéder au serveur X, utilisez la commande suivante :

# xhost +SI:localuser:gdm

Dépannage

Wayland et le pilote propriétaire NVIDIA

Pour utiliser Wayland dans GDM avec le pilote NVIDIA (version 470 ou supérieure), vous devez d'abord activer NVIDIA#DRM kernel mode setting.

GDM a certaines règles pour qu'il utilise Xorg au lieu de Wayland pour certaines configurations Nvidia. [7] Pour forcer l'activation de Wayland, désactivez la règle udev responsable de la désactivation de Wayland dans GDM :

# ln -s /dev/null /etc/udev/rules.d/61-gdm.rules
Note: Cette commande fonctionne car les règles de /etc/udev/rules.d/ remplacent celles de /usr/lib/udev/rules.d/ (consultez udev#About udev rules). Il est également conseillé de modifier les fichiers dans /etc/ plutôt que dans /usr/ car ils sont gérés par pacman.

Si, au lieu de GDM, un écran noir apparaît, essayez de désactiver la carte graphique intégrée dans les paramètres du BIOS de votre ordinateur.

Échec à la déconnexion

Si GDM démarre correctement au démarrage, mais échoue après plusieurs tentatives de déconnexion, essayez d'ajouter cette ligne à la section daemon de /etc/gdm/custom.conf :

GdmXserverTimeout=60

Xorg «rootless»

Consultez Xorg#Rootless Xorg.

Utiliser Xorg

Le backend Wayland est utilisé par défaut, et le backend Xorg n'est utilisé que si le backend Wayland ne peut être lancé. Vous pouvez souhaiter utiliser le backend Xorg à la place si, par exemple :

Pour utiliser le backend Xorg par défaut, décommentez la ligne suivante dans /etc/gdm/custom.conf :

#WaylandEnable=false

GDM ne démarre pas tant qu'une entrée n'est pas fournie

Si, après le démarrage, l'écran reste noir et que GDM ne démarre pas tant que la souris n'est pas déplacée ou que quelque chose n'est pas tapé au clavier, cela peut être dû à un manque d'entropie nécessaire à la génération de nombres aléatoires. Pour confirmer, vérifiez que la ligne suivante apparaît dans le journal de systemd-random-seed (qui peut être lu en exécutant journalctl --unit systemd-random-seed avec les privilèges de root) :

Kernel entropy pool is not initialized yet, waiting until it is.

Pour corriger cela, vous pouvez passer le random.trust_cpu=on paramètre du noyau si votre CPU prend en charge l'instruction RDRAND, ou vous pouvez utiliser haveged qui fournit également de l'entropie, bien qu'elle soit de qualité prétendument faible. Consultez l'article de Debian sur le sujet pour d'autres solutions.

GDM ne démarre pas avant de changer de TTY et de revenir

Tango-edit-cut.pngThis section is being considered for removal.Tango-edit-cut.png

Si, après le démarrage, l'écran reste noir et que GDM ne démarre pas avant d'avoir changé de TTY et d'être revenu à TTY1, cela peut être dû au fait que GDM est tenté de s'exécuter avant que le pilote GPU ne soit chargé. [8]

Une solution possible est d'ajouter votre module de pilote GPU à construire dans le ramdisk initial avec mkinitcpio, en ajoutant le nom du module dans MODULES entrée dans /etc/mkinitcpio.conf. Assurez-vous que les fichiers initcpio sont générés par la suite.

Une autre solution consiste à ajouter un délai au fichier de service GDM.

# systemctl edit gdm
[Service]
ExecStartPre=/bin/sleep 1

Suppression incomplète de gdm

Après avoir supprimé gdm, systemd peut signaler ce qui suit :

user 'gdm': directory '/var/lib/gdm' does not exist

Pour supprimer cette alerte, connectez-vous en tant que root et supprimer l'utilisateur principal gdm, puis supprimer le groupe gdm :

Vérifiez que gdm est supprimé avec succès via pwck et grpck avec les privilèges root. Pour compléter le tout, vous pouvez vérifier qu'il ne reste aucun fichiers non possédés pour gdm.

Auto-suspension de GDM (GNOME 3.28)

GDM utilise une base de données dconf séparée pour contrôler la gestion de l'alimentation. Pour appliquer les paramètres d'alimentation de votre utilisateur, copiez-les dans la base de données dconf de GDM :

$ IFS=$'\n'; for x in $(sudo -u username gsettings list-recursively org.gnome.settings-daemon.plugins.power); do eval "sudo -u gdm dbus-launch gsettings set $x"; done; unset IFS

username est votre nom d'utilisateur.

Pour désactiver l'auto-suspension sur AC uniquement, exécutez :

$ sudo -u gdm dbus-launch gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-type 'nothing'

(Pour désactiver également la suspension automatique sur batterie, exécutez la commande avec battery au lieu de ac).

Redémarrez GDM pour activer vos changements.

GDM ignore Wayland et utilise X.Org par défaut

Wayland nécessite l'exécution de Kernel Mode Setting (KMS) pour fonctionner, et sur certaines machines, le processus GDM démarre avant KMS, ce qui fait que GDM ne peut pas consulter Wayland et ne fonctionne qu'avec X.Org. Cela peut entraîner l'apparition de messages comme les suivants dans votre journal :

gnome-shell[569]: Failed to open gpu '/dev/dri/card0': GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: Operation not permitted
gnome-shell[569]: Failed to create backend: No GPUs found
systemd[505]: org.gnome.Shell@wayland.service: Failed with result 'protocol'.
systemd[505]: Failed to start GNOME Shell on Wayland.

Alternativement, le même problème peut conduire à ce que GDM n'apparaisse pas ou que le moniteur n'affiche que la sortie TTY.

Vous pouvez résoudre ce problème en démarrant KMS plus tôt.

De plus, si vous utilisez un pilote NVIDIA, la session Wayland peut être bloquée par une règle udev (consultez les notes sous GNOME (Français)#Sessions Wayland). Cela peut donner lieu à des messages comme ceux qui suivent :

systemd[1022]: Condition check resulted in GNOME Shell on Wayland being skipped.
systemd[1022]: org.gnome.Shell@wayland.service: Skipped due to 'exec-condition'.
systemd[1022]: org.gnome.Shell@wayland.service: Control process exited, code=exited, status=2/INVALIDARGUMENT

Consultez #Wayland et le pilote propriétaire NVIDIA pour une solution de contournement.

Écran noir sur les GPU AMD ou Intel lorsqu'un (e)GPU NVidia est présent

Au début, sans périphérique NVidia, GDM démarre et fonctionne normalement sur Wayland, mais cesse de fonctionner dès qu'un eGPU NVidia est branché (ou que le module nvidia est chargé pour d'autres raisons). Un symptôme typique du problème est un écran noir avec un curseur clignotant lors des déconnexions et des redémarrages de GDM et le message suivant dans les journaux de GDM (accessible en exécutant journalctl -u gdm -b en tant que root) :

Gdm : Child process -<some PID> was already dead.

La solution est la même que ci-dessus : Empêchez /usr/lib/gdm-disable-wayland de s'exécuter au chargement du module nvidia.

Notez que GDM sur Wayland ne fonctionnera plus après l'exécution de /usr/lib/gdm-disable-wayland. Ceci est dû au fait que WaylandEnable=false a été écrit dans /run/gdm/custom.conf, qui prévaut sur /etc/gdm/custom.conf. Pour corriger la situation sans redémarrage, supprimez /run/gdm/custom.conf et redémarrez GDM.

GDM ne peut pas être activé

Consultez systemd/FAQ#Failure to enable unit due to preexisting symlink.

Voir aussi