You are not logged in.

#1 2023-02-18 06:19:31

shoelesshunter
Member
From: USA
Registered: 2014-05-18
Posts: 289

[solved] sddm Plasma/i3wm login loop

I am using Plasm/i3wm via an xsession entry. I was using sddm, but I switched to xinitrc to launch my desktop. (it is not a systemd managed session).

I was experimenting with fingerprint auth via python3-validity and open-fprintd.

I had a working pam.d in a snapshot, and when I decided I no longer wanted to use fingerprint auth, I restored the directory.

Everything worked fine when launching my custom DE from xinitrc. I decided to switch back to sddm, and I ran into an issue.

When sddm prompts for a password, it accepts it, but it goes straight back to a prompt in a loop. I must switch TTY, kill sddm, then manually launch the DE to get into my Plasma/i3 desktop entry.

Logging into a standard X11 Plasma session from sddm works fine. I thought the error may have been in my i3 config. There are no kwallet entries, and Plasma/i3wm loads, just not by sddm.

Here is the end of the sddm logs

 04 06:32:03 kyzer systemd[1]: Started Simple Desktop Display Manager.
Feb 04 06:32:03 kyzer sddm[428]: Initializing...
Feb 04 06:32:03 kyzer sddm[428]: Starting...
Feb 04 06:32:03 kyzer sddm[428]: Logind interface found
Feb 04 06:32:03 kyzer sddm[428]: Adding new display on vt 1 ...
Feb 04 06:32:03 kyzer sddm[428]: Loading theme configuration from ""
Feb 04 06:32:03 kyzer sddm[428]: Display server starting...
Feb 04 06:32:03 kyzer sddm[428]: Adding cookie to "/var/run/sddm/{62138e18-4265-4b68-8f5a-63af889cf16b}"
Feb 04 06:32:03 kyzer sddm[428]: Running: /usr/bin/X -nolisten tcp -background none -seat seat0 vt1 -auth /var/run/sddm/{62138e18-4265-4b68-8f5a-63af889cf16b} -noreset -disp>
Feb 04 06:32:04 kyzer sddm[428]: Setting default cursor
Feb 04 06:32:04 kyzer sddm[428]: Running display setup script  "/usr/share/sddm/scripts/Xsetup"
Feb 04 06:32:04 kyzer sddm[428]: Display server started.
Feb 04 06:32:04 kyzer sddm[428]: Socket server starting...
Feb 04 06:32:04 kyzer sddm[428]: Socket server started.
Feb 04 06:32:04 kyzer sddm[428]: Loading theme configuration from ""
Feb 04 06:32:04 kyzer sddm[428]: Greeter starting...
Feb 04 06:32:05 kyzer sddm-helper[445]: [PAM] Starting...
Feb 04 06:32:05 kyzer sddm-helper[445]: [PAM] Authenticating...
Feb 04 06:32:05 kyzer sddm-helper[445]: [PAM] returning.
Feb 04 06:32:05 kyzer sddm-helper[445]: pam_unix(sddm-greeter:session): session opened for user sddm(uid=972) by (uid=0)
Feb 04 06:32:05 kyzer sddm[428]: Greeter session started successfully
Feb 04 06:32:05 kyzer sddm[428]: Message received from greeter: Connect
Feb 04 06:32:12 kyzer sddm[428]: Message received from greeter: Login
Feb 04 06:32:12 kyzer sddm[428]: Reading from "/usr/share/xsessions/i3-with-shmlog.desktop"
Feb 04 06:32:12 kyzer sddm[428]: Reading from "/usr/share/xsessions/i3-with-shmlog.desktop"
Feb 04 06:32:12 kyzer sddm[428]: Session "/usr/share/xsessions/i3-with-shmlog.desktop" selected, command: "i3-with-shmlog"
Feb 04 06:32:12 kyzer sddm-helper[484]: [PAM] Starting...
Feb 04 06:32:12 kyzer sddm-helper[484]: [PAM] Authenticating...
Feb 04 06:32:12 kyzer sddm-helper[484]: pam_systemd_home(sddm:auth): systemd-homed is not available: Unit dbus-org.freedesktop.home1.service not found.
Feb 04 06:32:12 kyzer sddm-helper[484]: [PAM] Preparing to converse...
Feb 04 06:32:12 kyzer sddm-helper[484]: [PAM] Conversation with 1 messages
Feb 04 06:32:12 kyzer sddm-helper[484]: pam_kwallet5(sddm:auth): pam_kwallet5: pam_sm_authenticate
Feb 04 06:32:12 kyzer sddm-helper[484]: [PAM] returning.
Feb 04 06:32:12 kyzer sddm[428]: Authenticated successfully
Feb 04 06:32:12 kyzer sddm-helper[484]: pam_kwallet5(sddm:setcred): pam_kwallet5: pam_sm_setcred
Feb 04 06:32:12 kyzer sddm-helper[484]: pam_unix(sddm:session): session opened for user jmgant(uid=1000) by (uid=0)
Feb 04 06:32:12 kyzer sddm[428]: Auth: sddm-helper exited successfully
Feb 04 06:32:12 kyzer sddm[428]: Greeter stopped.
Feb 04 06:32:12 kyzer sddm-helper[484]: pam_kwallet5(sddm:session): pam_kwallet5: pam_sm_open_session
Feb 04 06:32:12 kyzer sddm-helper[484]: Starting: "/usr/share/sddm/scripts/Xsession \"i3-with-shmlog\""
Feb 04 06:32:12 kyzer sddm[428]: Session started
Feb 04 06:32:37 kyzer sddm[428]: Authentication error: "Process crashed"
Feb 04 06:32:37 kyzer sddm[428]: Auth: sddm-helper crashed (exit code 15)
Feb 04 06:32:37 kyzer sddm[428]: Authentication error: "Process crashed"
Feb 04 06:32:37 kyzer sddm[428]: Auth: sddm-helper exited with 15
Feb 04 06:32:37 kyzer sddm[428]: Socket server stopping...
Feb 04 06:32:37 kyzer sddm[428]: Socket server stopped.
Feb 04 06:32:37 kyzer sddm[428]: Display server stopping...
Feb 04 06:32:37 kyzer systemd[1]: Stopping Simple Desktop Display Manager...
Feb 04 06:32:38 kyzer sddm[428]: Display server stopped.
lines 1-50e]

The Plasma/i3 session loads fine with xinitrc. It only fails with sddm which loads X11 Plasma without error.

Edit: I may have removed relevant kwallet entries in the sddm pam config. I've looked at the wiki SDDM It explains how to enable the kwallet module for other WM's and DM's but for sddm, it only mentions that it is set up automatically. Here is my current config:

 /etc/pam.d/sddm
#%PAM-1.0

auth		include		system-login
-auth		optional	pam_gnome_keyring.so
-auth   optional  pam_kwallet5.so

account		include		system-login

password	include		system-login
-password	optional	pam_gnome_keyring.so use_authtok

session		optional	pam_keyinit.so force revoke
session		include		system-login
-session		optional	pam_gnome_keyring.so auto_start
-session  optional  pam_kwallet5.so auto_start

Last edited by shoelesshunter (2023-02-18 14:24:43)

Offline

#2 2023-02-18 06:45:15

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 76,383

Re: [solved] sddm Plasma/i3wm login loop

I had a working pam.d in a snapshot … I restored the directory.

pacman -Qkk pambase sddm kwallet-pam

Also

Feb 04 06:32:12 kyzer sddm-helper[484]: Starting: "/usr/share/sddm/scripts/Xsession \"i3-with-shmlog\""
Feb 04 06:32:12 kyzer sddm[428]: Session started
Feb 04 06:32:37 kyzer sddm[428]: Authentication error: "Process crashed"

There's an exact 25s delay - the dbus timeout. Post i3-with-shmlog and any scripts it sources.

Offline

#3 2023-02-18 14:22:53

shoelesshunter
Member
From: USA
Registered: 2014-05-18
Posts: 289

Re: [solved] sddm Plasma/i3wm login loop

pacman -Qkk pambase sddm kwallet-pam
backup file: pambase: /etc/pam.d/other (Modification time mismatch)
backup file: pambase: /etc/pam.d/system-auth (Modification time mismatch)
backup file: pambase: /etc/pam.d/system-local-login (Modification time mismatch)
backup file: pambase: /etc/pam.d/system-login (Modification time mismatch)
backup file: pambase: /etc/pam.d/system-remote-login (Modification time mismatch)
backup file: pambase: /etc/pam.d/system-services (Modification time mismatch)
pambase: 8 total files, 0 altered files
backup file: sddm: /etc/pam.d/sddm (Modification time mismatch)
backup file: sddm: /etc/pam.d/sddm-autologin (Modification time mismatch)
backup file: sddm: /etc/pam.d/sddm-greeter (Modification time mismatch)
sddm: 228 total files, 0 altered files
kwallet-pam: 12 total files, 0 altered files

It turns out the issue was not related to PAM at all. When you requested the contents of i3-with-shmlog, I was confused. My xsession desktop entry being called was supposed to be i3-Plasma.desktop. I looked at the contents of that file and I was it was trying to execute  /usr/local/bin/i3-Plasma.sh. However, that script in /usr/local/bin had no .sh extension. When executing from xinitrc, the correct script name was being called, hence the error with sddm only.

Thanks as always.

Offline

Board footer

Powered by FluxBB