RQuickShare (github.com) is an open-source Linux client for Google’s Quick Share protocol. After installing it on CachyOS, the app either crashed immediately or showed a blank window. Even after getting the GUI working, file transfers still failed silently.
Two independent problems were causing this.
Installing RQuickShare
RQuickShare is available in the CachyOS repositories. Install it via pacman:
sudo pacman -S rquickshare
Alternatively, you can install it through CachyOS Hello — it’s listed under the applications section.
Fix 1: Wayland rendering crashes
This one needs to be fixed first, because without it you can’t even use the app to test anything else.
RQuickShare uses a WebKit-based GUI (Tauri). On CachyOS with Wayland, it either crashes outright or renders a blank window, depending on which workaround you try first.
Crash: Wayland protocol error
Running rquickshare without any environment overrides:
$ rquickshare 2>&1
Gdk-Message: 11:40:15.494: Error 71 (Protocol error) dispatching to Wayland display.
The app exits immediately.
Blank window: GBM buffer failure
Setting GDK_BACKEND=x11 avoids the Wayland crash, but the window renders completely empty:
$ GDK_BACKEND=x11 rquickshare 2>&1
Failed to create GBM buffer of size 900x600: Invalid argument
Failed to create GBM buffer of size 900x600: Invalid argument
The app runs but you can’t see or interact with anything.
The fix: two environment variables
Both issues go away with:
WEBKIT_DISABLE_DMABUF_RENDERER=1 GDK_BACKEND=x11 rquickshare
GDK_BACKEND=x11— forces XWayland, avoids the Wayland protocol errorWEBKIT_DISABLE_DMABUF_RENDERER=1— disables the DMA-BUF renderer in WebKitGTK, fixing the blank window caused by GBM buffer allocation failures
With both set, the app starts cleanly and the window renders correctly.
Fix 2: Static port for UFW
With the app actually visible, the next problem: file transfers still fail. CachyOS ships with UFW enabled by default, and RQuickShare picks a random port on every launch:
$ rquickshare 2>&1
TcpListener on: 0.0.0.0:38767
Next restart it might be 41023, then 55891. UFW blocks all of them because no rule matches.
The fix is to pin a static port in the RQuickShare config and open that port in the firewall.
Edit ~/.local/share/dev.mandre.rquickshare/.settings.json:
{
"port": 49152,
"download_path": "~/Downloads/QuickShare",
"realclose": false,
"visibility": 0,
"startminimized": true,
"autostart": true
}
I also set download_path to a dedicated subfolder — by default RQuickShare dumps everything into ~/Downloads, and I prefer keeping Quick Share files separate.
I picked 49152 because it’s the start of the IANA dynamic/private port range — unlikely to conflict with anything.
Then allow it through UFW, scoped to the local network only:
sudo ufw allow from 192.168.0.0/16 to any port 49152 proto tcp
sudo ufw allow from 192.168.0.0/16 to any port 49152 proto udp
After restarting RQuickShare:
TcpListener on: 0.0.0.0:49152
Fixed port, firewall lets it through. File transfers now work in both directions.
Desktop integration
Setting environment variables on the command line works, but you also want it to apply when RQuickShare autostarts at login and when you launch it from the app menu.
Autostart
RQuickShare creates its own autostart entry at ~/.config/autostart/RQuickShare.desktop when autostart is enabled in settings. Edit the Exec line:
Exec=env WEBKIT_DISABLE_DMABUF_RENDERER=1 GDK_BACKEND=x11 /usr/bin/rquickshare
App menu
The system-wide .desktop file lives at /usr/share/applications/rquickshare.desktop. Don’t edit that — the package manager owns it and will overwrite your changes on the next update.
Instead, copy it to the user-local override path:
cp /usr/share/applications/rquickshare.desktop ~/.local/share/applications/
Then edit ~/.local/share/applications/rquickshare.desktop and change the Exec line:
Exec=env WEBKIT_DISABLE_DMABUF_RENDERER=1 GDK_BACKEND=x11 rquickshare
Files in ~/.local/share/applications/ take priority over /usr/share/applications/, so your override survives package updates.
Conclusion
Two unrelated issues, both required. Without the static port and UFW rule, the firewall silently drops all Quick Share traffic. Without the environment variables, the app crashes or renders blank under Wayland. Once both are in place, Quick Share works as expected — phone-to-PC and PC-to-phone file transfers, autostart at login, proper GUI rendering through XWayland.