What does it actually do? And which is better for sway(pros and cons)?
So I’m trying to install arch Linux in my desktop environment Hyperland what seat access should I select should I select polkit or seatd?
Videos
I Can't make it work. Is there another deamon to manage a session that I can use with seatd?I know that with elogind this must work(like is suggested here) but i'm trying to use seatd.
I was starting to configure a virtual machine in virt-manager, and i need polkit. I don't know if i can make it work with setuid but i guess i will be installing elogind if there is not other option.
/usr/libexec/polkit-gnome-authentication-agent-1
return this error:
(polkit-gnome-authentication-agent-1:1571): polkit-gnome-1-WARNING **: 16:27:51.177: Unable to determine the session we are in: No session for pid 1571
I am using wayfire compositor now but same happens with other compositors. The problems is seatd don't generate a session that polkit could use.
Anyone know a way to configure this?
I tried to replace elogind with seatd. But it didn't allow me to remove the 'elogind' package. So, I removed 'elogind' using '-Rdd' flag to force it. But something didn't feel right.
So, right now, I do have elogind installed, but I uninstalled 'elogind-dinit' package and I have seatd service enabled and running in the background.
So, my question is: is my system still using elogind secretly? The 'elogind' service isn't active, but the 'loginctl' command works.
I can't execute program "gedit" directly when I click the file twice on swaywm.
I only can execute "gedit" from my terminal.
I find something about "Graphical applications can’t be run as root in wayland" on Google.
Is it related to my issue?
I only have seatd, and don't have polkit & elogind.
Are polkit & elogind related to my issue?
Could possible to solve this issue, if I don't install polkit & elogind?
I want to keep system without systemd.
Thank you.
I haven't really posted here, but I wanted to educate myself on a few important aspects. I hope you can help me. I have been using arch for the last 5 years with general linux experience mostly with servers/k8s/cloud going back longer.
Recently I started a project where I would like to put together a nice desktop environment for myself, this mostly consisted of a massive amount of learning, but currently I'm a bit stuck.
The idea is to build a Sway based minimal "TUI-first" environment from the ground up (okay, I use archinstall). The idea would be something that boots into a display/login manager that goes straight to Sway. I understand that Sway likes to launch simply from a console and not managed by anything else but from what I've seen mine is also a workable approach.
Mainly regarding user session management (and desktop/login managers), I have quite a few questions.
I currently use greetd with tuigreet and it has worked fine for my use-case, launching sway the same way as the greetd docs mention it, but I would like to dive deeper into it.
-
I would like to understand the full stack and processes behind getting to a window manager like Sway. I have tried to find documentation about systemd-logind, polkit and seatd, but I admit I don't have a good understanding how it all fits into a stack.
-
While as I understand systemd-logind and polkit go somewhat hand-in-hand, I would love to read about their relationship and exact utility. From what I understand, even systemd-logind is only relevant after a session has started and is used to provide functionality to said session.
-
Seatd is a bit of a weird one, as I read quite a few times that while it is a requirement in many projects, it is often required because of an underlying library only. Nevertheless, I am a bit lost into how it fits into my picture, since as I understand it's not necessarily a replacement for polkit and they do different things.
-
-
I found Universal Wayland Session Manager, which seems to solve many problems, I just don't know what problems those are. I know this sounds weird, but I really think understanding this would help me a lot in my experimentation. How does it fit into a login/display manager stack; what it actually does that's missing from other login/desktop managers like greetd/lemurs.
-
I found lemurs too, a display manager that really fits my use-case, but I do not know how it fits into all of the above. Is uwsm still helpful? What are its differences compared to greetd or others. What exactly do I need from a display manager anyway, where I can say "Yes, my window manager is properly launched and set up".
I previously mentioned "minimal". This was a focus on mine mainly because I want to understand what I'm doing and always add something that I know what it's for.
When i build seatd with elogind flag (elogind is without polkit flag) and run sway, he give errors
00:00:00.012 [ERROR] [wlr] [libseat] [libseat/backend/seatd.c:82] Could not connect to socket /run/seatd.sock: Permission denied
00:00:00.015 00:00:00.015 [ERROR] [wlr] [libseat] [libseat/backend/logind.c:310] Could not activate session: Rejected send message, 1 matched rules; type="method_call", sender=":1.12061" (uid=0 pid=25678 comm="elogind-daemon ") interface="org.freedesktop.PolicyKit1.Authority" member="CheckAuthorization" error name="(unset)" requested_reply="0" destination="org.freedesktop.PolicyKit1" (uid=102 pid=15728 comm="/usr/lib/polkit-1/polkitd --no-debug ")
00:00:00.015 [ERROR] [wlr] [libseat] [libseat/libseat.c:79] No backend was able to open a seat
with makes sense since there's no polkit, so i build seatd without elogind flag, added myself to seat group and run seatd service, then running sway gives
00:00:00.012 [ERROR] 00:00:00.012 [ERROR] [wlr] [libseat] [libseat/backend/seatd.c:82] Could not connect to socket /run/seatd.sock: Permission denied
00:00:00.012 [ERROR] [wlr] [libseat] [libseat/libseat.c:79] No backend was able to open a seat
00:00:00.012 [ERROR] [wlr] [backend/session/session.c:84] Unable to create seat: Function not implemented
00:00:00.012 [wlr] [libseat] [libseat/backend/seatd.c:82] Could not connect to socket /run/seatd.sock: Permission denied
00:00:00.012 [ERROR] [wlr] [libseat] [libseat/libseat.c:79] No backend was able to open a seat
00:00:00.012 [ERROR] [wlr] [backend/session/session.c:84] Unable to create seat: Function not implemented
00:00:00.012 [ERROR] [wlr] [backend/session/session.c:249] Failed to load session backend
00:00:00.012 [ERROR] [wlr] [backend/session/session.c:249] Failed to load session backend
00:00:00.012 [ERROR] [wlr] [backend/backend.c:86] Failed to start a session
[ERROR] [wlr] [backend/backend.c:86] Failed to start a session
00:00:00.012 [ERROR] [wlr] [backend/backend.c:352] Failed to start a DRM session00:00:00.012 [ERROR] [wlr] [backend/backend.c:352] Failed to start a DRM session
00:00:00.012 [ERROR]
00:00:00.012 [ERROR] [sway/server.c:56] Unable to create backend
[sway/server.c:56] Unable to create backend
so far i was only able to run sway with seatd USE=elogind and elogind USE=policykit flag.
But polkit had many critical privilege escalation cves, so i would prefer to avoid him for security reasons.
Why do you prefer one over the other?
Admittedly, I don't understand very well how these all interact, as display mangers aren't something I've used.
I started with a bare void install, then put on lightdm, seatd, and turnstile. I use spectrwm window manager, and just run sxhkd, wallpaper script with feh, picom. I put in lxappearance to manage my gtk settings.
I get an error when lxpolkit (or any polkit agent) runs - unable to determine session.
I went round and round rewriting my init scripts to get dbus and my session initialization correct, to no avail. I tried to switch to lxsession to build my session, but I couldn't figure it out.
However, installing elogind, only installing it, not enabling the service, fixes it up.
I wanted to avoid elogind, is there somewhere I can read up on what this issue is?
Hi there,
I have to have polkit installed for sway to launch or else I get:
Could not activate session: Rejected send message ... com="elogind-daemon" interface="org.freedesktop.PolicyKit1.Authority" member="CheckAuthorization" error name="unset"
And then something about /usr/lib/polkit-1/polkitd --no-debug
I don't remember having polkit installed before.
Another problem is I have to have elogind installed, dbus-elogind is not enough or else I get this error message:
Could not activate session: Permission denied
I only have the dbus service enabled. What's the minimum required to launch sway? Thanks
hey i just installed sway with seatd since its much lightweight then polkit, but i use power menu script that uses, systemctl poweroff, reboot, suspend. but i can't use them without sudo is there a way to fix it or alternative commands to use for the script?
The arch wiki shows a whole bunch of different polkit versions available: https://wiki.archlinux.org/title/Polkit
When I install arch through the archinstall script, I can't launch sway unless I first install some version of polkit. Installing just 'polkit' works, so does 'polkit-gnome', but those are the only two I've tried so far. The arch package manager says that polkit-gnome is 'legacy' now, but some OSes that bundle sway (ie. endeavourOS) use it by default.
Is there any real difference between these different versions?
Do I really need polkit?
I installed it as any commands such as shutdown or reboot stated that they couldn't find polkit when not run as root (with sudo).
In reality I just wanted the errors to go away and for all commands such as shutdown or reboot just to say "Need to be root", as they do on other distros.
After installing polkit, I get the following output when trying to run shutdown or reboot:
Failed to set wall message, ignoring: Interactive authentication required. Failed to reboot system via logind: Interactive authentication required. Failed to start reboot.target: Interactive authentication required. Failed to talk to init daemon.
I can't find anything about "Interactive authentication required", which is the odd bit. I am doing this over SSH and it looks like polkit only works on local TTYs?