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 错误。

相关推荐
华纳云IDC服务商14 分钟前
CentOS系统中查看内网端口映射的多种方法
linux·运维·centos
中云DDoS CC防护蔡蔡39 分钟前
棋牌游戏防ddos攻击,高防IP好用吗?
运维·服务器·游戏·网络安全·ddos
光芒再现dev1 小时前
CentOS—OpenEulerOS系统联网指南
linux·运维·centos
蓝莓星冰乐1 小时前
Linux入门(2)
linux·运维·服务器
吉吉612 小时前
Nginx:我自己的网站
运维·nginx
重生之我是数学王子2 小时前
网络编程 UDP编程 Linux环境 C语言实现
linux·c语言·开发语言·网络·网络协议·udp
搬砖的小码农_Sky2 小时前
如何在Linux中比较两个文件的差异?
linux
wanhengwangluo2 小时前
弹性裸金属服务器和传统裸金属服务器有什么区别?
运维·服务器
Syclus3 小时前
成功解决WSL2上的Ubuntu22.04执行sudo apt-get update指令报错问题
linux·运维·服务器