I use VLC,Keepass,Kdenlive and few other QT Apps on my sway setup. So, wanted to configure their themes from Sway. I installed qt5ct and qt6ct and did export QT_QPA_PLATFORMTHEME=qt5ct in bashrc and .profile. While runnin echo $QT_QPA_PLATFORMTHEME it is showing qt5ct but it is not working showing that error message that QT_QPA_PLATFORMTHEME need to be set as qt5ct or qt6ct when launching from .desktop But when launching from terminal they start and function properly but do not change any theming.
A really common issue with sway is that it doesn’t run as a login shell, so none of your .profile or other environment settings get sourced when you login. I think that might be the problem here.
Try closing your sway session, then login to a tty and run
sway
. If the qt themes work properly then it’s definitely an environment issue.Test setting it in /etc/environment
In my experience setting environment variables is pretty inconsistent. The easiest way would be using /etc/environment. This sets stuff globally for all users and definitely works.
PAM also used to support a per-user environment file, but that’s deprecated or removed even. The best you can do for per-user config is setting variables both in your login shell and the systemd user environments file.
Depending on the launcher and launch method you may need to set systemd variables. Look at the way
50-systemd-user.conf
works https://wiki.archlinux.org/title/Sway#ConfigurationI use the following fragment to make sure the cursor theme propagates to applications launched with wofi: https://github.com/StaticRocket/dotfiles/blob/main/dot_config/sway/systemd-user.conf