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

相关推荐
AlfredZhao2 天前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80
戴为沐3 天前
Linux内存扩容指南
linux
zylyehuo3 天前
Linux 彻底且安全地删除文件
linux
用户805533698034 天前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户034095297914 天前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux
乘云数字DATABUFF4 天前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
Web3探索者5 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo6 天前
Linux系统中网线与USB网络共享冲突
linux
荣--6 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森6 天前
动手实战学 Docker — 从零到集群编排完全指南
运维