Skip to content

Comments

logind: doesn't monitor seats if started with VT#171

Merged
kdj0c merged 1 commit intokmscon:mainfrom
kdj0c:fix_sway
Dec 23, 2025
Merged

logind: doesn't monitor seats if started with VT#171
kdj0c merged 1 commit intokmscon:mainfrom
kdj0c:fix_sway

Conversation

@kdj0c
Copy link
Contributor

@kdj0c kdj0c commented Dec 9, 2025

multiple seats doesn't work when VT are enabled, so don't try to monitor seats in this case.

This fixes the following error when starting sway from kmscon:

$ /usr/bin/kmscon-launch-gui /usr/bin/sway
00:00:00.001 [ERROR] [wlr] [libseat] [libseat/libseat.c:79] No backend was able to open a seat 
00:00:00.001 [ERROR] [wlr] [backend/session/session.c:83] Unable to create seat: Function not implemented 
00:00:00.001 [ERROR] [wlr] [backend/session/session.c:248] Failed to load session backend 
00:00:00.001 [ERROR] [wlr] [backend/backend.c:79] Failed to start a session 
00:00:00.001 [ERROR] [wlr] [backend/backend.c:407] Failed to start a DRM session 
00:00:00.001 [ERROR] [sway/server.c:228] Unable to create backend

multiple seats doesn't work when VT are enabled, so don't try to
monitor seats in this case.

This fixes the following error when starting sway from kmscon:

$ /usr/bin/kmscon-launch-gui /usr/bin/sway
00:00:00.001 [ERROR] [wlr] [libseat] [libseat/libseat.c:79] No backend was able to open a seat
00:00:00.001 [ERROR] [wlr] [backend/session/session.c:83] Unable to create seat: Function not implemented
00:00:00.001 [ERROR] [wlr] [backend/session/session.c:248] Failed to load session backend
00:00:00.001 [ERROR] [wlr] [backend/backend.c:79] Failed to start a session
00:00:00.001 [ERROR] [wlr] [backend/backend.c:407] Failed to start a DRM session
00:00:00.001 [ERROR] [sway/server.c:228] Unable to create backend

Signed-off-by: Jocelyn Falempe <[email protected]>
@michael-oberpriller
Copy link
Contributor

How do you reproduce this? Also the errors from wlroots seem to not even be related to seats. In wlroots the error is from the libseat_session_init function which calls the libseat_open_seat function in libseat. It seems like libseat has bad naming conventions for these functions. Just thinking about it, it doesn't make any sense why a wayland compositor would need to create a seat. It would be useful to reproduce this with the debug log level for libseat, but it seems like the only way to do this is to recompile wlroots.

@kdj0c
Copy link
Contributor Author

kdj0c commented Dec 12, 2025

My steps to reproduce this:

  • Install Fedora 43 Sway Spin in a VM
  • sudo dnf install kmscon
  • sudo systemctl enable --now kmsconvt@tty2 && sudo systemctl enable --now kmsconvt@tty3
  • switch to each kmscon in tty2 and tty3
  • run kmscon-launch-gui sway from one of the kmscon tty

If I have only one kmscon instance on tty2, there is no errors, but when I have two, I get this libseat errors.
This error has also been reported multiple time:
Aetf#161
https://discussion.fedoraproject.org/t/f44-change-proposal-usekmsconvtconsole-systemwide/172602/47

I'm also wondering if the issue is not on logind or libseat, because currently kmscon doesn't register seats, it only monitor seat creation/deletion.

@kdj0c kdj0c merged commit b95e313 into kmscon:main Dec 23, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants