Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Gnome Wayland support #40

Open
marwanehab98 opened this issue Jan 28, 2025 · 2 comments
Open

Gnome Wayland support #40

marwanehab98 opened this issue Jan 28, 2025 · 2 comments
Labels
platform: gnome Gnome is special pancake that on Wayland doesn't support most window handling features we need platform: linux Issue or PR is related to Linux type: feature Issue or PR related to new feature

Comments

@marwanehab98
Copy link

I tried to build the app for fedora myself, but it keeps crashing and I don't have enough rust knowledge to debug.

This is the error I am getting.

thread 'main' panicked at /home/runner/.cargo/git/checkouts/exwlshelleventloop-a014b6ad85076b09/de88e8d/layershellev/src/lib.rs:2472:34:

called \Result::unwrap()` on an `Err` value: NotPresent`

note: run with \RUST_BACKTRACE=1` environment variable to display a backtrace`

thread '<unnamed>' panicked at /home/runner/work/gauntlet/gauntlet/rust/utils/src/channel.rs:100:14:

the other side of a channel was dropped

2025-01-28T01:18:43.009951Z ERROR gauntlet_plugin_runtime: Unable to handle message: unexpected end of file

2025-01-28T01:18:43.009985Z ERROR gauntlet_plugin_runtime: Message loop has returned an error: unexpected end of file

2025-01-28T01:18:43.009998Z ERROR gauntlet_plugin_runtime: Message loop has unexpectedly stopped PluginId("bundled://gauntlet")

thread 'main' panicked at rust/plugin_runtime/src/lib.rs:57:10:

plugin runtime crashed: Broken pipe (os error 32)

note: run with \RUST_BACKTRACE=1` environment variable to display a backtrace`

Rejected promise, reason: Error: event stream was suddenly closed

at async runPluginLoop (ext:gauntlet/core.js:310:29)

at async gauntlet:init:8:5 
@Exidex
Copy link
Member

Exidex commented Jan 28, 2025

I assume you are running Wayland Gnome. It is currently not supported because Wayland Gnome is pretty much the only Wayland implementation that doesn't support Layer Shell protocol. I think Gnome Wayland also doesn't support global shortcuts.

It is also not possible to hide and show window on Wayland in general. This could be solved by recreating a window each time but Iced has a 100% usage bug atm if no windows are present: iced-rs/iced#2719

It might be possible to support it by:

  • Remove requirement for Layer Shell on Wayland and create a simple window
  • Create custom Gnome plugin that will
    • On global shortcut show the window
    • Position window properly in the center and on top of everything (which is also not supported on wayland in general)
    • And properly hide the window if previously mentioned bug is not fixed

But this is currently a low priority

@Exidex Exidex changed the title Build for Fedora Gnome Wayland support Jan 28, 2025
@Exidex Exidex added type: feature Issue or PR related to new feature platform: linux Issue or PR is related to Linux platform: gnome Gnome is special pancake that on Wayland doesn't support most window handling features we need labels Jan 28, 2025
@marwanehab98
Copy link
Author

I am running wayland yes, the global shortcut is not an issue if there's a command to show the window, since I can map the command to any shortcut I want anyway.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
platform: gnome Gnome is special pancake that on Wayland doesn't support most window handling features we need platform: linux Issue or PR is related to Linux type: feature Issue or PR related to new feature
Projects
None yet
Development

No branches or pull requests

2 participants