this post was submitted on 28 Nov 2023
7 points (100.0% liked)
Arch Linux
7761 readers
2 users here now
The beloved lightweight distro
founded 4 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Alright, adding the variable directly to /etc/enviroment made it work.
I also tried exporting the variable from my i3config and that didn't work.
Though why isn't it working like it did before with lightdm? Feels a bit wrong editing enviroment directly idk.
Display managers set some variables like
XDG_SESSION_DESKTOP
which helps software figure out how to handle some things, like where is the Qt config provider.You may want to look at what the session file sets, or log in with lightdm, run
env
and save it, then again with plain xinit and compare the two to find out exactly what it sets.But technically you're only manually doing what the DM would do already so it's not crazy dirty. When starting i3 manually, you're skipping a bunch of setup code. I don't know why setting it in i3config doesn't work, I don't use i3. But you can probably put it in your
.profile
to make it less dirty.i3 is actually exporting the enviroment variables when I set them in its config file, however for some reason qt5ct and all the qt apps refuse to use it, running printenv confirms that it is there.
However I found the issue, it seems to be an issue with my zsh shell, because I just created ~/.zshenv and added my enviroment variables there instead of on ~/.profile and now it works like it should kek. I didn't have to do this before when using lightdm so no idea what exactly changed though.
It is likely that the qt enviroment variable needs to be exported very early and that is why doing it from i3 doesn't work but from the shell it does.