Vladimir-csp / uwsm

Universal Wayland Session Manager
MIT License
149 stars 6 forks source link

Wayfire starts with XDG_CURRENT_DESKTOP either unset or set to previous session's desktop #1

Closed kode54 closed 1 year ago

kode54 commented 1 year ago

XDG_CURRENT_DESKTOP ends up set to either GNOME if I was last using a GNOME session on my desktop before rebooting, or nothing at all. WAYFIRE_LOCAL_CONFIG remains unset by the tweaks function, so the unit that starts Wayfire starts it with a -c switch, but no config path.

Vladimir-csp commented 1 year ago

Does ${XDG_CONFIG_HOME}/wayfire/wayfire.ini exist after launch attempt?

Vladimir-csp commented 1 year ago

I've added more conditions on config file search, but that may not address this problem directly. Could you post journalctl --user -u wayland-session-wayfire.scope (if you launched via shell-intstart) or journalctl --user -u wayland-wm-env@wayfire.service (if you launched via sd-start or wayland-wm@wayfire.service service directly)

kode54 commented 1 year ago

I launched it via the .profile snippet. Well, I adapted it for .zprofile.

kode54 commented 1 year ago

Here's a log output.

wayland-session-env.txt

Vladimir-csp commented 1 year ago

Are those vars with %% specific for zsh environment? looks like systemctl errors out and does nothing, I'll look into this.

Vladimir-csp commented 1 year ago

Looks like your environment has something that should not exist there. This case seems relevant: https://access.redhat.com/discussions/4124031.

Can you determine where those illegal vars come from? env or systemctl --user show-environment or both?

For now I've added exit with error on failure to run import-environment. The assumption is that the actual environment can not contain vars with illegal names. Maybe I'll add a filter later.

kode54 commented 1 year ago

Apparently, I had env-modules installed, and I forgot that. That's apparently an AUR package, so it's not even official on Arch.

Vladimir-csp commented 1 year ago

I've added a filter function for all processing of env output, please try running again with illegal vars. Error messages will be logged by wayland-wm-env@*.service, but everything should work.