我一直在观察 Fedora 39 上的 Sway 的异常行为(它也安装了 GNOME,我需要保留 GNOME)。桌面启动了,但我启动的任何 GTK 应用程序都要等到大约 25 秒后才会打开。此外,我的导航栏永远不会出现,直到 25 秒后我重新加载配置。
我该如何避免这种延迟?
我见过并尝试过的答案:
- 卸载
xdg-desktop-portal
并xdg-desktop-portal-gnome
(事实证明这些是 GNOME 的依赖项,所以它不是一个选项)。 - 放
GTK_USE_PORTAL=0
。 - 放
WAYLAND_DISPLAY=wayland-1
。 exec systemctl --user import-environment
在我的 sway 配置中运行(我尝试将它放在行之前和行之后waybar
)。- 注释掉
pam_gnome_keyring.so
/etc/pam.d
(在我的情况下为)下的文件中的行/etc/pam.d/gdm-autologin
。 -
通过名称(
WAYLAND_DISPLAY
、DISPLAY
、等)导出一组特定的变量XDG_CURRENT_DESKTOP
,以便 systemd 和 dbus 可以使用它们。
不幸的是,每次进行这些更改后,重新启动后延迟仍然存在。我发布这篇文章是因为我终于找到了解决方案,但欢迎解释(我真的不明白解决方案)。
~/.config/xdg-desktop-portal/sway-portals.conf
创建一个包含以下内容的文件:xdg-desktop-portal
确实是问题所在。它需要一个配置文件来声明应该使用哪些门户,如果找不到,它会挂起大约 25 秒后退出。我在这里找到了正确的配置。