Thank you @Austin for your great tutorial on how to install Waydroid. Your guide allowed me to install Waydroid on KDE without encountering any major speed bumps.
As some of my favorite programs still don’t function properly under Wayland, I’m sticking with using X11 for now. As you mentioned in your great guide, coupling Weston with Waydroid allowed me to continue to use an X11 session with KDE. Unfortunately, I found one major annoyance when using X11. The problem with this setup was that I couldn’t copy/paste between an X11 session on KDE and Waydroid. I did eventually figure out how to overcome this limitation, so I figured I’d post my solution to this problem for others benefit.
How to enable clipboard sharing between X11, Weston, and Waydroid with KDE:
Extensive online searching regarding X11/Weston/Waydroid clipboard integration suggested installing the following packages:
xclip
wl-clip-persist
python-pyperclip
python-pyclip
Even with all the above recommended packages installed (with X11 on Weston/Waydroid), the clipboard sharing was still not working for me. It wasn’t until I started testing other related packages that I finally found a working solution. The solution required installing clipboard-sync (with the above listed packages) before clipboard sharing actually started to work. The package wl-clipboard (for Wayland) was often recommended, but it didn’t seem to help. As long as xclip and the above packages were installed along with clipboard-sync, wl-clipboard was not required.
The clipboard-sync documentation stated that it could successfully synchronize clipboards across multiple X11 and Wayland instances, so I figured I’d give it a try, and it finally got clipboard sharing working. I don’t know for sure if all the other packages are strictly required to be installed along with clipboard-sync. After I finally got things working, I wasn’t about to start selectively uninstalling the other packages just in case I broke everything and had to start all over again.
Once clipboard-sync has been installed you must ensure that the clipboard-sync.service is enabled and running as well for proper operation. If the clipboard-sync.service isn’t automatically installed and enabled after installing the clipboard-sync package, you can download it separately. You can also create the service file manually yourself instead. The service file should be located in your home directory at the following location:
$HOME/.config/systemd/user/clipboard-sync.service
If the clipboard-sync.service file is not present at that location you can download the service file with the command below
wget -P "$HOME/.config/systemd/user/" https://raw.githubusercontent.com/dnut/clipboard-sync/master/clipboard-sync.service
Alternately, you can create the service $HOME/.config/systemd/user/clipboard-sync.service file yourself with the following contents:
#cat $HOME/.config/systemd/user/clipboard-sync.service
#systemctl --user enable --now clipboard-sync
#systemctl --user start clipboard-sync
#systemctl --user stop clipboard-sync
#systemctl --user status clipboard-sync
[Unit]
Description=Synchronize clipboards across all displays
Documentation=https://github.com/dnut/clipboard-sync/
PartOf=graphical-session.target
After=graphical-session.target
Requisite=graphical-session.target
[Service]
ExecStart=/usr/bin/env clipboard-sync --hide-timestamp --log-level debug
Restart=on-failure
[Install]
WantedBy=graphical-session.target
The commented out entries in the above service are my own personal additions to help those unfamiliar with USER level systemd commands.
Be sure to enable/start the clipboard-sync.service once created in the required location with the following command:
systemctl --user enable --now clipboard-sync
After creating/enabling/starting the clipboard-sync.service, you can check if it is operating properly with the following command:
systemctl --user status clipboard-sync
If the clipboard-sync.service is operating correctly, the command’s output should be similar to below:
systemctl --user status clipboard-sync
● clipboard-sync.service - Synchronize clipboards across all displays
Loaded: loaded (/home/htpc/.config/systemd/user/clipboard-sync.service; en>
Active: active (running) since Wed 2025-04-09 01:13:37 PDT; 37min ago
Invocation: 8ae4a41d49674bc5a82ea5e5a9eeb12f
Docs: https://github.com/dnut/clipboard-sync/
Main PID: 38548 (clipboard-sync)
Tasks: 5 (limit: 37544)
Memory: 944K (peak: 3.9M)
CPU: 3.061s
CGroup: /user.slice/user-1000.slice/user@1000.service/app.slice/clipboard->
├─38548 clipboard-sync --hide-timestamp --log-level debug
└─41875 clipboard-sync --hide-timestamp --log-level debug
Hopefully my above tips can help others get their clipboards synchronized between X11, Weston, and Waydroid.