Connexion automatique et différée

Il y a quelques temps, pingou nous expliquait comment activer la connexion automatique avec le nouveau GDM introduit dans Fedora 9

J'avais validé sa méthode sur le PC de ma môman (mon meilleur cobaye).

Quelques semaines plus tard:

Mathieu, il est con ton truc, il me demande le mot de passe maintenant.

Après vérification, le fichier /etc/gdm/gdm.schemas avait été remis à zéro, perdant toutes mes modifications... :-/

Voyons ce qu'il s'était passé.

En regardant dans le fichier gdm.spec (disponible en installant le RPM source de GDM), on peut voir:

%files -f gdm.lang
%defattr(-, root, root)
...
%config(noreplace) %{_sysconfdir}/gdm/custom.conf
...
%{_sysconfdir}/gdm/gdm.schemas

On voit donc que ce fichier est écrasé à chaque mise à jour du GDM. La solution est en fait d'utiliser le fichier /etc/gdm/custom.conf qui lui est fait pour accueillir les modifications personnelles et n'est pas touché lors d'une mise à jour.

Ce deuxième fichier a par contre une syntaxe différente du premier. Voici à quoi ressemble le fichier tel que livré par Fedora 9:

$ cat /etc/gdm/custom.conf
# GDM configuration storage

[xdmcp]

[chooser]

[security]

[debug]

On devine donc que celui-ci contient plusieurs sections (commençant par le nom de la section entre crochets), chacune s'appliquant à une partie différente du GDM.

Dans notre cas, la section qui nous intéresse est la section [daemon], qui n'existe pas dans le fichier.

Il suffit donc d'ajouter les directives suivantes au fichier (remplacez utilisateur par votre identifiant):

[daemon]
AutomaticLoginEnable=true
AutomaticLogin=utilisateur

Cela donne au final :

$ cat /etc/gdm/custom.conf
# GDM configuration storage

[xdmcp]

[chooser]

[security]

[debug]

[daemon]
AutomaticLoginEnable=true
AutomaticLogin=utilisateur

Voila, le cobaye ne m'a pas rappelé depuis :-)

Pour ce qui est de la connexion différée, même fichier, mais cette fois-ci, voici les directives à ajouter:

[daemon]
TimedLoginEnable=true
TimedLogin=utilisateur
TimedLoginDelay=durée en secondes

Cette astuce a été validée sur Fedora 9 et 10.

Pour plus d'informations, reportez-vous à la doc de GDM.