M .config/sway/config => .config/sway/config +3 -3
@@ 252,9 252,9 @@ bar {
status_command exec ~/.local/bin/any_position_wrapper.sh
}
-# Prepare for xdg-desktop-portal-wlr
-exec ~/.config/sway/xdpw
-
# Load machine specific configuration
include ~/.config/sway/`hostname`
+# Prepare for xdg-desktop-portal-wlr
+exec ~/.config/sway/xdpw
+
M .config/sway/xdpw => .config/sway/xdpw +4 -5
@@ 1,8 1,7 @@
-#!/bin/sh
-# Import the WAYLAND_DISPLAY env var from sway into the systemd user session.
-dbus-update-activation-environment --systemd \
- XDG_SESSION_TYPE=wayland DISPLAY WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=sway
+# sway does not set XDG_CURRENT_DESKTOP in the systemd user environment
+# therfore xdg-desktop-portal makes the wrong choice for desktop witht this fix
+
+dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=sway
-# Stop any services that are running, so that they receive the new env var when they restart.
systemctl --user stop pipewire wireplumber xdg-desktop-portal xdg-desktop-portal-wlr
systemctl --user start wireplumber