Eigentlich wollte ich den Beitrag ja „Security: Die Rache des GDM“ nennen, aber das wäre inhaltlich falsch gewesen, auch wenn es sich als wahr erwies. Wenn man zwei oder mehr Desktops installiert hat, möchte man sicherlich seinen Desktop auswählen können. Wenn man aber für seinen Benutzeraccount kein Passwort vergeben hat, kann man das im aktuellen GDM nicht. Auch eine Form Sicherheit einzufordern 😉
Warum man kein Passwort für seinen Benutzer hat? In dem Fall war es tatsächlich nicht nötig. Wie wir gleich sehen werden, war das allerdings kein Grund sich zu freuen, ganz im Gegenteil.
Was war passiert ?
Ein NeuLinuxuser mit Intel-NUC i7 und SSD bekam Fedora installiert. Wer mich kennt, hätte auch nichts anderes erwartet 😉 Dabei haben wir das Passwort für den Benutzer offengelassen und den Account zum Autologin in den Desktop geflaggt, was auch soweit geklappt hat. Nun sollte aber nicht GNOME, sondern Cinnamon der neue Desktop werden. Also wurde dieser installiert und der Rechner neugestartet. Der Benutzer wurde ausgewählt und … loggte sich in …. Gnome ein. ..::HMMM::.. Abmelden… Benutzer wählen … GNOME … Abmelden Benutzer wählen, wir nehmen Root, Desktopchooser -> Cinnamon .. Abmelden .. Benutzer wählen … GNOME .. Verdammt.. Kaputt. Kein gutes Licht für Linux und als Brückenbauprojekt extrem wichtig, daß alles geht.
Ursache
Ohne Passwort kein Desktopchooserbutton, weil das bei der Eingabe des Passworts erfolgt. Das gibt es aber nicht, also autoskippt GDM das und nimmt dann aus der Liste der Desktops den ersten in der Liste, also GNOME, weil das am Anfang installiert wurde (vermutlich).
Lösung
Tja, leider nicht im Sinne des Kunden, aber im Sinne der Autologinlogik: Ein Passwort für den Benutzer setzen. Ein „a“ reicht ja schon 🙂 Dann wird im Dialog auf die Eingabe des Passworts gewartet und man kann den Desktop auswählen.
Fazit: Ohne Passwort keine Desktopauswahl .
(Natürlich wurde ein Bugreport dafür erstellt, weil das ein Logicbug im GDM ist, denn wenn ich zwei Desktops habe, will ich die auch auswählen wollen, egal ob ich kein Passwort habe.
Oder den Displaymanager wechseln. Vielleicht wäre LightDM eine Wahl? Nicht ganz so komfortabel, da man dort immer auch den Benutzernamen händisch eintragen muss, aber das Sitzungsmenü ist bequemer erreichbar.
Wie wäre es mit einem Autologin mit Verzögerung (TimedLogin)? Sollte dem Anwender die Chance geben die gewollte Umgebung auszuwählen und loggt trotzdem automatisch ein wenn nicht eingegriffen wird:
https://help.gnome.org/admin/gdm/stable/configuration.html.en#daemonsection
Ansonsten kann man die Umgebung in /var/lib/AccountsService/users/username festlegen:
https://wiki.archlinux.org/index.php/GDM#Automatic_login
Der letztere ist doch mal ein schöner Link..
Hab den link vom GNOME Projekt dazu wiedergefunden: https://help.gnome.org/admin/system-admin-guide/stable/session-user.html
Dort erfährt man auch wie man herausfindet welche Werte man XSession zuweisen kann.
Pingback: GDM – wenn es nur noch blinkt – Marius's Welt