Ringboard is a fast, efficient, and composable clipboard manager for Linux.
Basic features:
Differentiators:
A detailed technical breakdown of the project is available at https://alexsaveau.dev/blog/ringboard.
Note: Ringboard is Linux-only and requires a relatively recent Kernel (6+).
The easiest way to get going is to install cargo with nightly and then run the installation script for systemd:
rustup install nightly # If not already installed
curl -s https://raw.githubusercontent.com/SUPERCILEX/clipboard-history/master/install-with-cargo-systemd.sh | bash
Additionally, consider using https://github.com/nabijaczleweli/cargo-update to update your cargo apps or re-run the installation script whenever you need to update.
You'll need the server, an X11 or Wayland clipboard watcher, and a way to view your clipboard:
cargo install clipboard-history-server --no-default-features --features systemd
or download a
prebuilt binary.bash -c 'echo $XDG_SESSION_TYPE'
:
cargo install clipboard-history-wayland --no-default-features
(prebuild binaries are also
available as before).cargo install clipboard-history-x11 --no-default-features
.cargo install clipboard-history-egui --no-default-features --features wayland/x11
cargo install clipboard-history-tui
cargo install clipboard-history
egui
docs for example.Install the server and X11 or
Wayland services into ~/.config/systemd/user
and enable them:
systemctl --user enable ringboard-{wayland,x11}
.
You'll need to start the Ringboard server and X11/Wayland clipboard watcher on boot.
Tooling is provided to migrate from other clipboard managers. Run:
$ ringboard migrate gch
to import your
Gnome Clipboard History entries.$ ringboard migrate g-paste
to import your GPaste history.$ ringboard migrate clipboard-indicator
to import your
Clipboard Indicator history.Each submodule contains its own README with details on the submodule.
/
cli/
: The Ringboard Command Line Interface contains tools for working with the
Ringboard database.client-sdk/
: The client SDK offers APIs to read and write Ringboard data.core/
: The core code shared across many Ringboard crates.egui/
: The egui Ringboard client displays clipboard entries in a standard GUI.server/
: The Ringboard server writes data to the Ringboard database.tui/
: The ratatui Ringboard client displays clipboard entries in your terminal.wayland/
: The Wayland clipboard watcher sends new clipboard entries to the
Ringboard server.x11/
: The X11 clipboard watcher sends new clipboard entries to the Ringboard server.