lbonn / rofi

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

[BUG] Rofi does not work in KDE Plasma 6 (Wayland) #121

Open LorenzoBettini opened 8 months ago

LorenzoBettini commented 8 months ago

Rofi version (rofi -v or git commit in case of build issue)

Version: 1.7.5+wayland3-3-g47ae31eb (makepkg)

Configuration

https://gist.github.com/LorenzoBettini/c80a1f9909f10ad7c7aead165c99d33f

Theme

https://gist.github.com/LorenzoBettini/9d245000f3242fab327c97fc6c3609fc

Timing report

No response

Launch command

rofi -show drun

Step to reproduce

Expected behavior

rofi should react to typing and scrolling and clicking

Actual behavior

rofi does not react to typing and scrolling and clicking

Additional information

When trying to interact with rofi the console from where I launched it shows:

(process:80565): Modes.Window-WARNING **: 17:04:57.454: Unable to initialize Window mode: Wayland compositor does not support wlr-foreign-toplevel-management protocol

(process:80565): libnkutils-bindings-CRITICAL **: 17:04:57.488: nk_bindings_seat_handle_key: assertion 'self->keymap != NULL' failed

(process:80565): libnkutils-bindings-CRITICAL **: 17:04:57.488: nk_bindings_seat_update_mask: assertion 'self->state != NULL' failed

(process:80565): libnkutils-bindings-CRITICAL **: 17:04:57.500: nk_bindings_seat_handle_key: assertion 'self->keymap != NULL' failed

(process:80565): libnkutils-bindings-CRITICAL **: 17:04:58.362: nk_bindings_seat_handle_key: assertion 'self->keymap != NULL' failed

(process:80565): libnkutils-bindings-CRITICAL **: 17:04:58.513: nk_bindings_seat_handle_key: assertion 'self->keymap != NULL' failed

Using wayland display server protocol

I've checked if the issue exists in the latest stable release

dinkonin commented 8 months ago

Works fine for me on arch 1.7.5.wayland3.r3.g47ae31eb-1, did you try to build it in a clean chroot? Any warnings about libnkutils during the build ?

LorenzoBettini commented 8 months ago

I tried rebuilding it from scratch after clearing yay cache and it now works! Of course, it doesn't work for switching windows, but I guess that's known, isn't it? Sorry for the noise, I think we can close this one.

abatkin commented 7 months ago

Actually it's still broken for me (Fedora 40 / Plasma 6). I've tried the system package that Fedora ships, as well as building myself from git (head of wayland branch), and I have temporarily removed my config so it's using builtin defaults. Observed behavior is that no keys work. I can double-click things, but that's it.

When run from a console, it spams a bunch of lines like this:

(process:44967): libnkutils-bindings-CRITICAL **: 01:58:48.134: nk_bindings_seat_update_mask: assertion 'self->state != NULL' failed

abatkin commented 6 months ago

Interestingly, on a brand new VM (Fedora 40 + Plasma, fully updated) everything works with the system rofi-wayland package. But my other ("real") system doesn't work, even when the config is removed or it is run with -no-config.

carmen-gh commented 6 months ago

@abatkin I have the same issue Fedora 40 and no config. Doesn't take any input

kaushiksahu18 commented 6 months ago

@abatkin @carmen-gh

is this also the same issue??

rofi -show run

(process:10717): Wayland-ERROR **: 22:21:18.309: Rofi on wayland requires support for the layer shell protocol
fish: Job 1, 'rofi -show run' terminated by signal SIGTRAP (Trace or breakpoint trap)

i am using gnome and arch btw

lbonn commented 6 months ago

@kaushiksahu18 gnome wayland is not supported as they have their do not expose a public protocol in the like of layer shell afaik. This is a separate issue

Buer-Nahida commented 5 months ago

Same in nixpkgs-24.05, but in nixpkgs-23.11 (1.7.5+wayland2) can work.

MuhammedKpln commented 3 months ago

Same on Fedora 40 as well.

nmarks413 commented 3 months ago

Same issue on COSMIC on nixos

tv42 commented 2 months ago

For the NixOS people, I upgraded to latest nixos-24.05 and rofi keyboard input started working again. Give it a shot. No idea what caused the assert to trigger in the first place, something about library versions I guess.

tv42 commented 2 weeks ago

It seems keyboard input fails on linux kernel v6.6 and works on v6.10, for me. Using niri, wayland.

lbonn commented 2 weeks ago

With quick googling, this may be related:

https://bugs.kde.org/show_bug.cgi?id=477251 https://invent.kde.org/plasma/layer-shell-qt/-/merge_requests/48

Maybe someone can make a try with the changes there: https://github.com/lbonn/rofi/pull/158

I remember playing with on_demand on other DMs and the behavior was slightly different, it would need re-testing there as well. Maybe this can be behind another config flag...