lbonn / rofi

Rofi: A window switcher, run dialog and dmenu replacement - fork with wayland support
Other
927 stars 36 forks source link

[BUG] rofi wayland is using the deprecated `wl_shell` protocol, should use `xdg_shell` #55

Closed bew closed 1 year ago

bew commented 1 year ago

Rofi version (rofi -v)

Version: 1.7.5+wayland1

Configuration

no config (but anyway: https://gist.github.com/bew/c1729d2a381ee4b0b86fca3c63a1c557)

Launch command

rofi

Step to reproduce

Hello,

I'm maintaining rofi and rofi-wayland for the Nix package manager (for use in NixOS or any linux distributions with Nix installed).

I've successfully built rofi-wayland from the latest release: https://github.com/lbonn/rofi/releases/tag/1.7.5%2Bwayland1

I tried to test it by running weston, opening a terminal and running the built rofi, but received a number of errors due to the use of the deprecated wl_shell.

Expected behavior

Open without error in weston nor rofi

Actual behavior

Excerpt of the output of weston:

[20:34:34.236] Loading module '/usr/lib/weston/desktop-shell.so'
[20:34:34.239] launching '/usr/lib/weston/weston-keyboard'
[20:34:34.240] Note: support for the deprecated wl_shell interface is disabled. If a legacy client still needs it, it can be re-enabled by passing -Ddeprecated-wl-shell=true to Meson when building Weston.
[20:34:34.240] Old Xwayland module loading detected: Please use --xwayland command line option or set xwayland=true in the [core] section in weston.ini
[20:34:34.241] Loading module '/usr/lib/libweston-10/xwayland.so'
[20:34:34.250] Registered plugin API 'weston_xwayland_v1' of size 32
[20:34:34.250] Registered plugin API 'weston_xwayland_surface_v1' of size 16
[20:34:34.251] xserver listening on display :1
[20:34:34.251] launching '/usr/lib/weston/weston-desktop-shell'
[20:34:34.252] Chosen EGL config details: id:  10 rgba: 8 8 8 0 buf: 24 dep:  0 stcl: 0 int: 0-1000 type: win|pix|pbf vis_id: 0x21

And the output of rofi:

(process:195228): Wayland-ERROR **: 20:36:25.089: Rofi on wayland requires support for the layer shell protocol

Additional information

More official docs about wl_shell being deprecated: https://wayland.freedesktop.org/docs/html/apa.html#protocol-spec-wl_shell

Note! This protocol is deprecated and not intended for production use. For desktop-style user interfaces, use xdg_shell. Compositors and clients should not implement this interface.

lbonn commented 1 year ago

Oh well, that's actually good news, we can use a stable API. I'll try to get on this soon enough.

lbonn commented 1 year ago

@bew Ok so I've taken another look and there probably was some confusion.

We are compatible with wlroots based compositors and probably Mir and KDE (though, I have not tested them myself)

lbonn commented 1 year ago

I'll close it, probably not an actual bug. Please comment again if you think it should be reopened.