ubuntu Gdk-Message: Error flushing display: Protocol error

Wayland Gdk-Message: Error flushing display: Protocol error

解决方法

1、临时解决:主要是软件对当前桌面显示系统不兼容,需要x11

复制代码
GDK_BACKEND=x11  ./Hiddify-Linux-x64.AppImage

2、永久解决

复制代码
sudo  vi  /etc/gdm3/custom.conf
将以下代码:
#WaylandEnable=false
修改为:
WaylandEnable=false

然后重启reboot

具体介绍:

要将应用程序从 Wayland 切换到 X11,你需要确保系统在 X11 会话下运行,并且应用程序使用 X11 后端。以下是详细的步骤:

1. 切换到 X11 会话

在 GNOME 桌面环境中:
  1. 注销当前会话
  2. 在登录界面,通常会有一个选项来选择会话类型。选择"GNOME on Xorg"或类似的选项。
  3. 登录到 X11 会话。
在其他桌面环境中:
  • 不同的桌面环境可能有不同的方法来切换到 X11 会话。通常在登录界面会有一个选项来选择会话类型。

2. 设置环境变量

确保应用程序使用 X11 后端,可以通过设置 GDK_BACKEND 环境变量:

bash 复制代码
GDK_BACKEND=x11 your_application

3. 检查系统配置

确保系统配置支持 X11 会话。你可以通过以下命令检查当前会话类型:

bash 复制代码
echo $XDG_SESSION_TYPE

如果输出是 x11,则表示当前会话是 X11 会话。

4. 示例

假设你有一个名为 my_app 的应用程序,你可以通过以下命令运行它:

bash 复制代码
GDK_BACKEND=x11 my_app

5. 永久设置 X11 会话

如果你希望永久切换到 X11 会话,可以在系统配置中进行设置。以下是一些常见桌面环境的设置方法:

GNOME:
  1. 打开终端并运行以下命令:

    bash 复制代码
    gsettings set org.gnome.desktop.session session-name gnome-xorg
  2. 注销并重新登录。

KDE Plasma:
  1. 打开系统设置。
  2. 导航到"启动和关机" -> "桌面会话"。
  3. 选择"X11"作为默认会话。

总结

  • 切换到 X11 会话。
  • 确保应用程序使用 GDK_BACKEND=x11 环境变量。
  • 检查系统配置以确保支持 X11 会话。

通过这些步骤,你应该能够将应用程序从 Wayland 切换到 X11,并避免 Protocol error 错误。

相关推荐
章老师说8 分钟前
BFE v1.8.3 正式发布:AI网关能力再升级,企业级七层负载均衡持续进化
运维·人工智能·负载均衡
天空'之城7 小时前
Linux 系统编程 22:五种 IO 模型全解
linux
小张成长计划..9 小时前
【Linux】10:冯·诺依曼体系结构和操作系统
linux·运维·服务器
悦儿遥遥雨112 小时前
PXE + Kickstart 无人值守批量部署系统
linux·javascript·nginx
Imagine Miracle13 小时前
【WSL】让WSL2后台持久运行不自动关闭的解决方案
linux·windows·wsl
兔C13 小时前
Linux 命令行入门学习资料 day_2
linux·运维·服务器
eggcode13 小时前
Linux命令基础与操作技巧
linux
二宝哥14 小时前
VMware Workstation 实战:CentOS 7.9 安装、桥接网络配置与克隆管理详解
linux·centos·vmware
枕星而眠14 小时前
【数据结构】红黑树入门指南
运维·数据结构·c++·后端
AutumnWind042015 小时前
【4种打开Ubuntu(WSL)的方法】
linux·ubuntu