Closed denisok closed 3 years ago
Just to emphasize that it is actually a sway bug not the openSUSEway one.
greetd default tuning that don't work out of the box then :)
BTW, https://man.sr.ht/~kennylevinsen/greetd/ is just at least misleading (if not completely wrong):
Open
/etc/greetd/config.toml
. The greeter should be set toagreety --cmd $SHELL
, which logs you into a normal terminal session. Change this toagreety --cmd sway
if you want it to start sway.
Also, couple of lines below (when setting gtkgreet
):
Edit /etc/greetd/config.toml to set the new greeter as the default session. If using cage:
What? What's cage
? Do I use cage
? Should I use it? One cannot use undefined terms in an explanation.
And I can go on. When I run zypper info cage
, it tells me that it is A Wayland Kiosk.
WHAT? How is that supposed to help me to understand? Should I use it? What it is?
btw @mcepl how you fixed it for yourself? any hints for default agreety config?
I haven't. Went back to gdm
for now. Trying to understand right now what's going on, and the quality of documentation makes me cry.
:) if you use sway check: https://github.com/openSUSE/openSUSEway/tree/master/greetd
this is opensource - they would get contributions for sure.
:) if you use sway check: https://github.com/openSUSE/openSUSEway/tree/master/greetd
OK, that makes at least partially sense. Only, what’s /etc/greetd/environments
? It is not anything like /etc/environment
(I don’t see any variables)?
this is opensource - they would get contributions for sure.
I have to understand the thing first, before I can contribute.
:) if you use sway check: https://github.com/openSUSE/openSUSEway/tree/master/greetd
OK, that makes at least partially sense. Only, what’s
/etc/greetd/environments
? It is not anything like/etc/environment
(I don’t see any variables)?
that is for gtkgreet to select session when you login. sway-run is here: https://github.com/openSUSE/openSUSEway/blob/master/sway/sway-run.sh
Hmm, this doesn't look good. Yes, I have a window behind the screen, so hopefully at least these images make sense:
Looking at seatd documentation I cannot than wonder ... why we as Linux distro packagers need to be compatible with FreeBSD? And why should packages of the distribution based on systemd (whether we like it or not) care about compatibility with non-systemd systems? Couldn't we just use (e)logind directly?
I have libseat
errors as well, but it works anyway:
Mar 24 14:26:00 denlen sway[4259]: 2021-03-24 14:26:00 - [main.c:521] Missing a required Wayland interface
Mar 24 14:26:00 denlen sway[4233]: 00:00:00.003 [ERROR] [backend/session/libseat.c:102] Unable to create seat: Function not implemented
Mar 24 14:26:00 denlen sway[4233]: 00:00:00.003 [ERROR] [libseat] [libseat/libseat.c:73] No backend was able to open a seat
Mar 24 14:26:00 denlen sway[4233]: 00:00:00.003 [ERROR] [libseat] [libseat/backend/seatd.c:78] Could not connect to socket /run/seatd.sock: No such file or directory
Mar 24 14:26:00 denlen systemd[1]: Started Session 2 of user dkondratenko.
I don't have other issues. Only one similar error:
waybar[4332]: gtk-layer-shell v0.6.0 may not work on GTK v3.24.27. If you experience crashes, check https://github.com/wmww/gtk-layer-shell/blob/master/compatibility.md
but that different.
check other logs, maybe there is something with start script or something....
So, is it an error in gtkgreeter? Wouldn't I be served better by wlgreeter?
installing greetd without openSUSEway wouldn't work for the login: command = "agreety --cmd $SHELL" here $SHELL is undefined and thus ppl wouldn't be able to login.
If this example is sourced from greetd, could you open an issue over on https://todo.sr.ht/~kennylevinsen/greetd? Thanks!
BTW, https://man.sr.ht/~kennylevinsen/greetd/ is just at least misleading (if not completely wrong): [...] What? What's
cage
? Do I usecage
? Should I use it? One cannot use undefined terms in an explanation.
cage is a simple Wayland compositor. Using sway and wayfire are also popular options.
Gtk applications can't run on their own, and as the first point int he FAQ states, the rule of thumb is "if it runs on a TTY, it runs in greetd".
Looking at seatd documentation I cannot than wonder ... why we as Linux distro packagers need to be compatible with FreeBSD? And why should packages of the distribution based on systemd (whether we like it or not) care about compatibility with non-systemd systems? Couldn't we just use (e)logind directly?
To be good, inclusive FOSS community members.
However, counter-question: If you want to use systemd-logind, why are you trying to use seatd? Just use the libseat logind backend (I suspect you compiled it with seatd support, not logind support), or wlroots' own logind backend.
If you want to use seatd, you'll need to set up the daemon, but there's no need for having both seatd and logind running.
waybar[4332]: gtk-layer-shell v0.6.0 may not work on GTK v3.24.27. If you experience crashes, check https://github.com/wmww/gtk-layer-shell/blob/master/compatibility.md
This is from waybar, but it's just a warning that the patch version of Gtk is one newer than what was tested. It's probably fine, but gtk-layer-shell is a little fragile.
So, is it an error in gtkgreeter? Wouldn't I be served better by wlgreeter?
I use gtkgreet it works fine, please attach full logs to investigate, you probably have another issue, like pam one ;) see #33
However, counter-question: If you want to use systemd-logind, why are you trying to use seatd? Just use the libseat logind backend (I suspect you compiled it with seatd support, not logind support), or wlroots' own logind backend.
If you want to use seatd, you'll need to set up the daemon, but there's no need for having both seatd and logind running .
this is a good point, I will check it. JFYI our spec is here: https://build.opensuse.org/package/view_file/X11:Wayland/greetd/greetd.spec?expand=1 we build it with default options.
@kennylevinsen as you stopped by, could you check #33 . For pam I don't have a solution. As for config there - I was trying to add build option for the greetd to add vendor dir as well, but so far stuck with Rust knowledge, will do it eventually, but maybe you have some other opinion.
this is a good point, I will check it. JFYI our spec is here: https://build.opensuse.org/package/view_file/X11:Wayland/greetd/greetd.spec?expand=1 we build it with default options.
libseat/seatd use comes from a wlroots-based Wayland compositor being started, not greetd, so that's where you'd have to look.
Just took a look at the other relevant specs. Notes:
libseat and logind are both enabled in wlroots. They'll be tried in that order. This is fine - we also intend to remove the logind backend from wlroots, and rely on libseat for that in the future, so no harm in being prepared.
libseat is compiled with seatd support, and no logind support (https://build.opensuse.org/package/view_file/X11:Wayland/seatd/seatd.spec?expand=1). This is why libseat fails, and wlroots' own logind backend is used instead. To enable the logind backend, pass -Dlogind=enabled
to meson. See meson_options.txt
for the available compile-time options.
If this example is sourced from greetd, could you open an issue over on https://todo.sr.ht/~kennylevinsen/greetd? Thanks!
It is actually your own config.toml
https://todo.sr.ht/~kennylevinsen/greetd/21
cage is a simple Wayland compositor. Using sway and wayfire are also popular options.
Then either don't mention it in the first example, or explain it beforehand.
* libseat is compiled with seatd support, and no logind support (https://build.opensuse.org/package/view_file/X11:Wayland/seatd/seatd.spec?expand=1). This is why libseat fails, and wlroots' own logind backend is used instead. To enable the logind backend, pass `-Dlogind=enabled` to meson. See `meson_options.txt` for the available compile-time options.
thanks for the hint, submitted new package with logind enabled: https://build.opensuse.org/request/show/881388
Then either don't mention it in the first example, or explain it beforehand.
It's explained one line above, in step 3 (what you quoted was step 4):
Install a Wayland compositor, such as sway or cage. For the full experience, a compositor with wlr-layer-shell-unstable support is required.
A sway example also immediately follows the cage example.
Improvements are always accepted though. Feel free to send patches! It should also be noted that this is the wiki, for e.g. example configurations and such. The documentation is the manpages.
fixed downstream with https://build.opensuse.org/request/show/893771
installing greetd without openSUSEway wouldn't work for the login:
command = "agreety --cmd $SHELL"
here$SHELL
is undefined and thus ppl wouldn't be able to login.We need to define something default in config file for the user, so it could at least login to the shell.