问题

在我使用 shell 打开 bruno 的时候,无法打开,并出现以下错误:

Checking for beta autoupdate feature for deb/rpm distributions
Found package-type: deb
Preferences file is located at: /home/julien/.config/bruno/preferences.json
[48883:1112/141654.104482:ERROR:ui/ozone/platform/x11/ozone_platform_x11.cc:250] Missing X server or $DISPLAY
[48883:1112/141654.104658:ERROR:ui/aura/env.cc:257] The platform failed to initialize.  Exiting.

原因

其实错误说的很明显。

因为 bruno 是一个基于 electron 的应用,默认用 x 11 模式启动,在 wayland 环境下,需要寻找 xwayland 这个翻译层。

但是我用的是 niri 桌面,不存在 xwayland 这个翻译层。

解决方法

强制使用原生的 wayland 模式,这样既可以绕过所有的 x 11/xwayland 问题,性能也更好。

添加上下面参数 --ozone-platform=wayland

也就是:

bruno --ozone-platform=wayland

不过这个只是一时的,如果想要用 app launcher 打开,还是无法实现。

一劳永逸

先将桌面文件复制到用户文件。

cp /usr/share/applications/bruno.desktop ~/.local/share/applications

然后修改用户文件中的这个 bruno.desktop

vim ~/.local/share/applications/bruno.desktop

exec 这个变量后面添加上参数 --ozone-platform=wayland 这就可以了。

以前还要添加 --enable-features=UseOzonePlatform,现在不需要了。

hyprland打开软件像素很低

最后也就是这样:

Exec=/opt/Bruno/bruno --ozone-platform=wayland %U