bugaevc / wl-clipboard

Command-line copy/paste utilities for Wayland
GNU General Public License v3.0
1.62k stars 60 forks source link

Testing wl-clipboard via github actions #122

Closed mdlincoln closed 3 years ago

mdlincoln commented 3 years ago

New-to-wayland question here, rather than an issue with wl-clipboard per se, but I'm hoping you might know the answer:

I'm hoping to use wl-clipboard to add Wayland support to clipr and would very much like to be able to test it via GitHub Actions. Although I can build and install wl-clipboard on the GitHub runners just fine, I'm having difficulty getting a Wayland server up and running that wl-clipboard will recognize. (I've been trying Weston with a headless backend so far). Any thoughts?

YaLTeR commented 3 years ago

Hello! wl-clipboard generally works by spawning a window for a brief instant and relying on the compositor to immediately focus that window to be able to grab clipboard contents. Perhaps Weston's headless session never focuses new windows and that's why it doesn't work?

An alternative that wl-clipboard can use is the wlr-data-control protocol. It doesn't require any window spawning, but it does need a compositor that supports it. Generally wlroots-based compositors like sway should support this protocol. I think sway has a headless backend, you could try that maybe?

I'm going to close this issue because it's not a wl-clipboard issue but please feel free to respond here.

mdlincoln commented 2 years ago

Unfortunately I've no luck with sway either - but again, I'm quite unfamiliar with how to get any of this running within a headless environment, so any resources that document doing that would be most helpful. I suspect I'm missing something quite simple. Launching sway with dbus-run-session sway -d -V with the following envvars on GitHub actions:

XDG_RUNTIME_DIR: /home/runner/work/clipr/xdg
WLR_BACKENDS: headless
WLR_LIBINPUT_NO_DEVICES: 1
WAYLAND_DISPLAY: wayland-1
GTK_USE_PORTAL: 0

does seem to get a server up and running, but it hangs indefinitely. Perhaps I'm missing how to set the service up in the background?

YaLTeR commented 2 years ago

Sorry, I'm afraid I'm also not very knowledgeable in bringing up headless Wayland compositors. You might want to ask in sway or wlroots IRC channels?