zclip
This is will be a cross–platform clipboard manager, targeting:
- Linux (Wayland)
- Windows
Maybe something like this already exists but this would be a nice tool to have :)
In fact, you could probably use KDE Connect but I have had my issues with it, and it has many features I am less worried about.
The architecture is a daemon that could be run as a user service, or a system service with its own user. The client communicates with this local daemon over UNIX socket.
Peers
TODO
We should fetch IPs from hostnames if given. This could allow you to use tailscale to handle NAT traversal etc.
We should also make it easy to copy peer info to the other daemon.
Peers are daemons running on your other machines, that you would like to communicate with to synchronise your clipboards.
Let’s say you have two machines, A and B:
zclip ident will fetch your public key in Base64 format from the daemon.
Then, on the other machine zclip peer add "A" "$A_PUBLIC_KEY" "$A_IP".
To check this worked, run zclip peer list.
You should see something like so (I have omitted the public key for this example):
ID 1: A (...)
TODOs
- Access clipboard on Windows.
- CLI interface for listing clipboard items
- Support images and files?
- Nice GUI <– Possibly as a separate app anyway? Qt perhaps or something Zig-native.
- System tray icon
Devlog
See here for changelogs and information about the state of the project.
I might not update this very much, as I am mostly trying to test the features of Zine.