Clipsync: a high performance clipboard sharing application for linux

clipsync: Clipboard sync

Clipsync is a high performance clipboard sharing application for linux. The clipboard is shared over the network with support for string clipboard content up to several megabytes in size. Works with both Wayland and X servers.

Building

Requires Golang, X11 and XFixes libraries.

sudo dnf install libX11-devel libXfixes-devel xorg-x11-proto-devel
go get github.com/zachhuff386/clipsync
cd ~/go/src/github.com/zachhuff386/clipsync
CGO_ENABLED=1 go build -v

Computer 111.111.111.111

./clipsync generate-key
public_key=oDKlgt9NsfJObrQu+Xp2GTLY80EpGkW0Hr09bBwsUTI

tee ./clipsync.conf << EOF
{
  "bind": "0.0.0.0:9774",
  "private_key": "3zyjOTKaXO0zFOIx2cOaeYBmQ8bSsQjTr9dLGBHTNto",
  "public_key": "cjZ5vR4R2t3QI8xzMz0Jw2lGvnim3nBlsmiViyM0iWo",
  "clients": [
    {
      "address": "222.222.222.222:9774",
      "public_key": "C4HZ1DkOIbG3u2zqC4mL8JPhliOfjex0h3E3XoKfJhw"
    }
  ]
}
EOF

./clipsync start

Computer 222.222.222.222

./clipsync generate-key
public_key=C4HZ1DkOIbG3u2zqC4mL8JPhliOfjex0h3E3XoKfJhw

tee ./clipsync.conf << EOF
{
  "bind": "0.0.0.0:9774",
  "private_key": "Vc7BVAyVFdtmvtOv5uhm/2/EoAZlOXvsL/QgCUVlVAg",
  "public_key": "C4HZ1DkOIbG3u2zqC4mL8JPhliOfjex0h3E3XoKfJhw",
  "clients": [
    {
      "address": "111.111.111.111:9774",
      "public_key": "cjZ5vR4R2t3QI8xzMz0Jw2lGvnim3nBlsmiViyM0iWo"
    }
  ]
}
EOF

./clipsync start

Systemd User Service

sudo cp ./clipsync /usr/local/bin/clipsync
cp ./clipsync.conf ~/.config/clipsync.conf

mkdir -p ~/.config/systemd/user
tee ~/.config/systemd/user/clipsync.service << EOF
[Unit]
Description=Clipsync
Wants=gnome-session.target
After=gnome-session.target

[Service]
ExecStart=/usr/local/bin/clipsync start $HOME/.config/clipsync.conf

[Install]
WantedBy=gnome-session.target
EOF

systemctl --user daemon-reload
systemctl --user enable clipsync
systemctl --user start clipsync
Similar Resources

progress_bar creates a single customizable progress bar for Linux terminal.

progress_bar creates a single customizable progress bar for Linux terminal.

progress_bar Go Progress Bar Features progress_bar creates a single customizable progress bar for Linux terminal. Installation go get -u github.com/er

Aug 12, 2022

gif effects CLI. single binary, no dependencies. linux, osx, windows.

gif effects CLI. single binary, no dependencies. linux, osx, windows.

yeetgif Composable GIF effects CLI, with reasonable defaults. Made for custom Slack/Discord emoji :) Get it Alternative 1: go get Alternative 2: just

Dec 11, 2022

1Pass - 1Password Linux CLI explorer

 1Pass - 1Password Linux CLI explorer

1Pass is a command line application that allows to explore 1Password OPVault format. Application was created because there is no official 1Password desktop client for Linux users.

Nov 14, 2022

Hermit - uniform tooling for Linux and Mac

Hermit installs tools for software projects in self-contained, isolated sets, so your team, your contributors, and your CI have the same consistent tooling.

Jan 5, 2023

A twitch focused command line tool for producing, archiving and managing live stream content. Built for Linux.

twinx is a live-streaming command line tool for Linux. It connects streaming services (like Twitch, OBS and YouTube) together via a common title and description.

Oct 17, 2022

Go package for running Linux distributed shell commands via SSH.

Go package for running Linux distributed shell commands via SSH.

Go package for running Linux distributed shell commands via SSH.

Dec 7, 2022

A tool to enumerate all the command-line arguments used to start a Linux process written in Go.

A tool to enumerate all the command-line arguments used to start a Linux process written in Go.

ranwith A tool to enumerate all the command-line arguments used to start a Linux process written in Go. ranwith uses the Linux /proc directory to obta

Jun 30, 2022

MimixBox - mimic BusyBox on Linux

MimixBox - mimic BusyBox on Linux MimixBox has many Unix commands in the single binary like BusyBox. However, mimixbox aim for the different uses from

Nov 30, 2022

Tool for containerized command line environments on Linux

Tool for containerized command line environments on Linux

Tool for containerized command line environments on Linux

Dec 31, 2022
simple clipboard copy for complex outputs
simple clipboard copy for complex outputs

Terminal Clipboard Different from others terminal's clipboard coppiers, this one can copy complex and interminables commands like tail -f or outputs t

Nov 5, 2021
A password manager as a CLI, where you can use a master password to retrieve a specified password and store it in your clipboard
A password manager as a CLI, where you can use a master password to retrieve a specified password and store it in your clipboard

Password manager Description CLI to store and retrieve passwords. The retrieved password will be stored on your clipboard! Usage 1.Start with Go go ru

Dec 16, 2021
Clip - A simple and robust clipboard manager

clip A simple and robust clipboard manager Clip is currently ONLY for macos and

Jun 20, 2022
CLI for Shamir's Secret Sharing and AES key generation, encryption, and decryption.
CLI for Shamir's Secret Sharing and AES key generation, encryption, and decryption.

Shush ?? This simple program will help you run Shamir's Secret Sharing algorithm on any file using the split and merge commands.

Feb 1, 2022
A personal knowledge management and sharing system for VSCode
A personal knowledge management and sharing system for VSCode

Foam ?? This is an early stage project under rapid development. For updates join the Foam community Discord! ?? Foam is a personal knowledge managemen

Jan 9, 2023
Upterm is an open-source solution for sharing terminal sessions instantly over the public internet via secure tunnels.
Upterm is an open-source solution for sharing terminal sessions instantly over the public internet via secure tunnels.

Upterm is an open-source solution for sharing terminal sessions instantly over the public internet via secure tunnels.

Jan 8, 2023
VSCode Remote-SSH and configuration sharing on WSL.

Wslssh Wslssh forwards SSH command from VSCode Remote-SSH to WSL and enables SSH configuration sharing. Quick Start Guide Download or compile wslssh a

Dec 2, 2021
A CLI application that allows you to run a complete ToDo app from your terminal application

todo-cli This is a CLI application that allows you to run a complete ToDo app from your terminal application. As a user you can: Create a list of todo

Oct 11, 2021
A command line tool that builds and (re)starts your web application everytime you save a Go or template fileA command line tool that builds and (re)starts your web application everytime you save a Go or template file

# Fresh Fresh is a command line tool that builds and (re)starts your web application everytime you save a Go or template file. If the web framework yo

Nov 22, 2021
Restful services on a Go application integrated with mongodb. Articles demo application.

article-app Restful Go services demo integrated with MongoDB by Cahit Ünver article-app is a GO application integrated with MongoDB. Application is a

Jan 17, 2022