Dorion icon indicating copy to clipboard operation
Dorion copied to clipboard

[Feature Request] Wayland Support

Open nyabinary opened this issue 1 year ago • 6 comments

Is your feature request related to a problem? Please describe.

  • [ ] Wayland Support
  • [ ] Wayland Screensharing Support
  • [ ] Pipewire Support (To make Audio Screensharing Work)

Describe the solution you'd like Implementation of these features (Armcord is currently working on this as well) Make Wayland work natively on Dorion instead of running it through Xwayland.

nyabinary avatar Jul 16 '23 16:07 nyabinary

This'd be great to have, especially since some desktops (kde plasma cough cough) is now using wayland by default :)

samolego avatar Aug 01 '24 20:08 samolego

Currently it crashes on build:

rror: failed to run custom build command for `x11 v2.21.0`

Caused by:
  process didn't exit successfully: `/home/samoh/Downloads/Dorion/src-tauri/target/release/build/x11-f91ec7c39c4e5d81/build-script-build` (exit status: 101)
  --- stdout
  cargo:rerun-if-env-changed=X11_NO_PKG_CONFIG
  cargo:rerun-if-env-changed=PKG_CONFIG_x86_64-unknown-linux-gnu
  cargo:rerun-if-env-changed=PKG_CONFIG_x86_64_unknown_linux_gnu
  cargo:rerun-if-env-changed=HOST_PKG_CONFIG
  cargo:rerun-if-env-changed=PKG_CONFIG
  cargo:rerun-if-env-changed=X11_STATIC
  cargo:rerun-if-env-changed=X11_DYNAMIC
  cargo:rerun-if-env-changed=PKG_CONFIG_ALL_STATIC
  cargo:rerun-if-env-changed=PKG_CONFIG_ALL_DYNAMIC
  cargo:rerun-if-env-changed=PKG_CONFIG_PATH_x86_64-unknown-linux-gnu
  cargo:rerun-if-env-changed=PKG_CONFIG_PATH_x86_64_unknown_linux_gnu
  cargo:rerun-if-env-changed=HOST_PKG_CONFIG_PATH
  cargo:rerun-if-env-changed=PKG_CONFIG_PATH
  cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR_x86_64-unknown-linux-gnu
  cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR_x86_64_unknown_linux_gnu
  cargo:rerun-if-env-changed=HOST_PKG_CONFIG_LIBDIR
  cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR
  cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_x86_64-unknown-linux-gnu
  cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_x86_64_unknown_linux_gnu
  cargo:rerun-if-env-changed=HOST_PKG_CONFIG_SYSROOT_DIR
  cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR

  --- stderr
  thread 'main' panicked at /home/samoh/.cargo/registry/src/index.crates.io-6f17d22bba15001f/x11-2.21.0/build.rs:42:14:
  called `Result::unwrap()` on an `Err` value: 
  pkg-config exited with status code 1
  > PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 pkg-config --libs --cflags x11 x11 >= 1.4.99.1

  The system library `x11` required by crate `x11` was not found.
  The file `x11.pc` needs to be installed and the PKG_CONFIG_PATH environment variable must contain its parent directory.
  The PKG_CONFIG_PATH environment variable is not set.

  HINT: if you have installed the library, try setting PKG_CONFIG_PATH to the directory containing `x11.pc`.

  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
warning: build failed, waiting for other jobs to finish...
       Error failed to build app: failed to build app
 ELIFECYCLE  Command failed with exit code 1.

samolego avatar Aug 01 '24 20:08 samolego

@samolego Out of purely curiosity, can you try building the next branch? That's on Tauri v2 and may not hard-require X11 anymore. Keep in mind it won't work properly, I'd just like to know if this issue will be closed by that move

SpikeHD avatar Aug 01 '24 21:08 SpikeHD

Sadly still fails with same X11 error :(.

samolego avatar Aug 02 '24 07:08 samolego

Mkay, I'm told it works under Wayland just fine but you'll need to install X11 just for the build dependency I guess (or you can just download a release of course)

SpikeHD avatar Aug 02 '24 15:08 SpikeHD

Ah, nice to know that!

Yeah, might just use the released tarball :)

samolego avatar Aug 02 '24 19:08 samolego

Tested and confirmed that the Dorion window runs with native Wayland (not xwayland) using both xeyes and xwininfo to test in a Wayland session (ty Arch Wiki). Honestly, I'm pretty sure this has been the case for a long time already, I just never tested it myself until now :P

I'm gonna close this since screenshare/audio/etc. are separate issues that cannot even really be tackled until WebKitGTK ships with WebRTC support (and even then, I only have so much control over it, so I don't know how feasible these even are)

SpikeHD avatar Aug 09 '24 19:08 SpikeHD