

That is a good point. But I remember launching the application from the terminal where I explicitly set the env variables as null. Still it didn’t work.
Just another Reddit refugee


That is a good point. But I remember launching the application from the terminal where I explicitly set the env variables as null. Still it didn’t work.


Agree.
However, I always have those “trivial” conditions be explicitly set. Usually, when the device is unplugged correctly, your primary display will be automatically be turned on. However, in very weird scenarios (incorrect voltage signals, loose wire, etc), it’s possible that the explicit else condition will be triggered.


What about the condition that when the external display is disconnected, the main display should be reenabled?


You can have a perfect distro on a USB which boots into Linux automatically when inserted into your PC and it preserves all your files and favorites. Still it will hardly increase the market share by 1 or 2%. It’s because a super minority of people will bother to get the USB drive.
The core issue we have to understand is “availability of preinstalled Linux on PCs in brick and mortar shops”. Till this is solved, we won’t get market share. The only reason people are using Linux on their SteamDeck is availability.


My brother in Christ, do you think an average person knows what BIOS/boot menu are?
These people have been stealing our pixels for so long. Have you seen how much China has been stealing? There memes are twice as large as ours. But everyone has been crying to me “Sir, but pixies aren’t real.” THEY ARE REAL!. My uncle has seen pixies. He was very smart, the smartest person I know perhaps. So from tomorrow, the pixel tariffs are being launched. Or pixies. I don’t know, doesn’t matter.
In capitalism, you get a bad crop


Issue resolved!
It was swhkd. Thank you very much for your insight and extremely detailed response!
$ ls -l $(which swhkd)
-rwsr-xr-x 1 root root 2583192 Mar 10 17:16 /usr/bin/swhkd
Since we know what’s causing it, can you make a “guesstimate” of what it’s doing? Why are other applications are getting infected by it? And why is a keybind manager affecting permissions?
I will raise an issue on their github. The project is already looking for maintainers.


How do you open the shell inside sway? Keyboard binding from sway config? Launcher? Which terminal? Do any of the involved programs have setuid root bit set (looks like rws instead of x in ls -l output)?
I think you may have just pointed me to the correct direction.
My keybinds setup is a bit weird. I’m using swhkd instead of sway’s built in keybinds. swhkd is a setuid binary (https://github.com/waycrate/swhkd?tab=readme-ov-file#running) which might be causing the issue. I’ll quickly disable swhkd and check if the issue is resolved. Will keep you posted.


$ which sway
/usr/bin/sway
$ sway --version
sway version 1.9
$ file $(which sway)
/usr/bin/sway: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=70fe358f7e410f618ad8a9ce0e573ed6826b2e75, for GNU/Linux 3.2.0, stripped
$ ls -l $(which sway)
-rwxr-xr-x 1 root root 600352 Apr 1 2024 /usr/bin/sway
id pre and post login
uid=1000(xavier666) gid=1000(xavier666) groups=1000(xavier666),0(root)
---------------
uid=1000(xavier666) gid=1000(xavier666) groups=1000(xavier666),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),120(lpadmin),132(lxd),133(sambashare)
A funny thing; I think this has nothing to do with gdm. I have gdm disabled now and launching sway directly from the terminal and the issue still persists.
The problem goes away (xavier666 becomes part of sudo like expected) when I type exec su - xavier666 for that terminal session only.
If I open a new terminal, it problem reappears. I’ll just in case check if zsh/omyzsh is doing something funny.


I was experimenting. This might be helpful (https://lemm.ee/post/62662283/20097388)


I found something interesting, thanks to my friend
sudo access inside swayexec su - xavier666. It asked for my user password and the command was accepted.groups output looks normal (xavier666 is now part of sudo) and my permissions are fineIt is as if this user is an imposter with incorrect privileges 📮


I did it. The issue still lingers. Check my last comment for output.


Great suggestion. I tried this method just now.
Unfortunately, I’m still getting the same bug.
The main difference between the two sessions is the output of the groups command
In pure tty
$ groups
xavier666 adm cdrom sudo dip plugdev lpadmin lxd sambashare
The moment I enter into sway from inside the tty
$ groups
xavier666 root


!lemmysilver


The output of the above command is nearly the same for me.
Even though I have manually added myself to /etc/sudoers file, my groups output is very weird.
It’s just xavier666 root
Kind of stumped here.


user-IDs (prefixed with ‘#’)
And I thought it just meant a comment.
Thanks for this, I had no idea.


For i3, the desktop file is like this (present in /usr/share/xsessions)
[Desktop Entry]
Name=i3
Comment=improved dynamic tiling window manager
Exec=i3
TryExec=i3
Type=Application
X-LightDM-DesktopName=i3
DesktopNames=i3
Keywords=tiling;wm;windowmanager;window;manager;
And sway (present in /usr/share/wayland-sessions)
[Desktop Entry]
Version=1.0
Name=Sway
Comment=An i3-compatible Wayland compositor
Exec=/usr/bin/sway
Type=Application
DesktopNames=sway
Gdm probably sums up all the DE from both the wayland and x11 sessions.
There are some files & directories in /etc/gdm3 but I’m too lazy to go through all of them
Init PostSession Prime config-error-dialog.sh greeter.dconf-defaults
PostLogin PreSession PrimeOff custom.conf Xsession
Thanks for your help.


Check how your environment variables differ between i3 and sway and see if that might be the issue
Just running set for each session and then diff should be enough, right?
In my university (where we used proxy), we had a saying “it’s always
DNSproxy”