Subject: greetd-wlgreet-sway-session unable to login (Respawning term-tty1)

From: Franz Geffke <[email-masked]>
Date: Sat, 16 Mar 2024 10:47:23 +0000

It seems like `greetd-wlgreet-sway-session` broke for me, sometime in the last 
10 days. Initially I suspected it's related to my hardware, or a newer kernel, 
but I was able to rule these out with a clean config in the VM.
- It's working as of `3da49b1472919a62df1fe399638f23a246aa325d` (05.03) but does 
not anymore.
- On my working setup (05.03), I use logind; but I also tried seatd, without change.
- I suspected maybe Sway 1.9, but using the previous 1.8.1 did not help.
- Maybe https://issues.guix.gnu.org/65769 is related, but looks like a hardware 
issue?

```
(define-public sway-legacy
   (package
     (inherit sway)
     (name "sway")
     (version "1.8.1")
     ...))

(service greetd-service-type
           (greetd-configuration
           (greeter-supplementary-groups (list "video" "input" "seat"))
           (terminals
           (list
             (greetd-terminal-configuration
               (terminal-vt "1")
               (terminal-switch #t)
               (default-session-command
                         (greetd-wlgreet-sway-session
                           (sway sway-legacy)
                           (wlgreet-session
                           (greetd-wlgreet-session
                             (command (file-append sway-legacy "/bin/sway")))))))

             (greetd-terminal-configuration
               (terminal-vt "2"))
             (greetd-terminal-configuration
               (terminal-vt "3"))
             (greetd-terminal-configuration
               (terminal-vt "4"))
             (greetd-terminal-configuration
               (terminal-vt "5"))
             (greetd-terminal-configuration
               (terminal-vt "6"))))))
```

Here's a bunch of logs:

```
tail -f /var/log/messages
Mar 16 09:49:33 localhost shepherd[1]: Respawning term-tty1.
Mar 16 09:49:33 localhost shepherd[1]: Starting service term-tty1...
Mar 16 09:49:33 localhost shepherd[1]: Service term-tty1 has been started.
Mar 16 09:49:33 localhost shepherd[1]: Service term-tty1 started.
Mar 16 09:49:33 localhost shepherd[1]: Service term-tty1 running with value 1382.
Mar 16 09:49:36 localhost shepherd[1]: Respawning term-tty1.
Mar 16 09:49:36 localhost shepherd[1]: Starting service term-tty1...
Mar 16 09:49:36 localhost shepherd[1]: Service term-tty1 has been started.
Mar 16 09:49:36 localhost shepherd[1]: Service term-tty1 started.
Mar 16 09:49:36 localhost shepherd[1]: Service term-tty1 running with value 1396.
```

dmesg

```
dmesg | greo greetd
[   31.025881] shepherd[1]: Starting service file-system-/run/greetd/pam_mount...
[   31.088881] shepherd[1]: Service file-system-/run/greetd/pam_mount started.
[   31.118389] shepherd[1]: Service file-system-/run/greetd/pam_mount running 
with value #t.
[   31.131180] shepherd[1]: Service file-system-/run/greetd/pam_mount has been 
started.
```

greetd-1.log

```
tail greetd-1.log
2024-03-16 10:00:13 error: check_children: greeter exited without creating a session
2024-03-16 10:00:16 error: check_children: greeter exited without creating a session
2024-03-16 10:00:19 error: check_children: greeter exited without creating a session
2024-03-16 10:00:22 error: check_children: greeter exited without creating a session
```

seatd-1.log

```
2024-03-16 09:59:58 00:14:15.066 [INFO] [seatd/seat.c:170] Added client 1 to seat0
2024-03-16 09:59:58 00:14:15.066 [INFO] [seatd/seat.c:480] Opened client 1 on seat0
2024-03-16 09:59:58 00:14:15.385 [INFO] [seatd/client.c:471] Client disconnected
2024-03-16 09:59:58 00:14:15.387 [INFO] [seatd/seat.c:418] No clients on seat0 
to activate
2024-03-16 09:59:58 00:14:15.404 [INFO] [seatd/seat.c:524] Closed client 1 on seat0
2024-03-16 09:59:58 00:14:15.404 [INFO] [seatd/seat.c:192] Removed client 1 from 
seat0
2024-03-16 10:00:01 00:14:18.072 [INFO] [seatd/server.c:145] New client 
connected (pid: 3919, uid: 999, gid: 982)
2024-03-16 10:00:01 00:14:18.072 [INFO] [seatd/seat.c:170] Added client 1 to seat0
2024-03-16 10:00:01 00:14:18.073 [INFO] [seatd/seat.c:480] Opened client 1 on seat0
2024-03-16 10:00:02 00:14:18.405 [INFO] [seatd/client.c:471] Client disconnected
```

secure

```
Mar 16 09:56:45 localhost greetd: pam_unix(greetd:session): session closed for 
user greeter
Mar 16 09:56:46 localhost greetd: pam_unix(greetd:session): session opened for 
user greeter(uid=999) by (uid=0)
Mar 16 09:56:46 localhost greetd: gkr-pam: unable to locate daemon control file
Mar 16 09:56:46 localhost greetd: gkr-pam: gnome-keyring-daemon started properly
Mar 16 09:56:48 localhost greetd: pam_unix(greetd:session): session closed for 
user greeter
Mar 16 09:56:49 localhost greetd: pam_unix(greetd:session): session opened for 
user greeter(uid=999) by (uid=0)
```

And files;

```
ls /run/
avahi-daemon/  blkid/  booted-system  containerd/  current-system  docker/ 
greetd/  greetd-1423.sock  greetd-208.sock	greetd-214.sock  greetd-219.sock 
greetd-225.sock  greetd-228.sock  greetd.run	pcscd/	seatd.sock  setuid-programs/ 
  tlp/  udev/  xtables.lock
```

I'm a bit at the end of my latin, or guix, I guess.

Am I missing something that changed recently?
I'm mostly following https://guix.gnu.org/manual/en/html_node/Base-Services.html

Thank you.

Cheers,
Franz