Skip to main content

A lightweight clipboard manager for Linux with persistent pinned items

Project description

CopyDeck

A lightweight clipboard manager for Linux with persistent pinned items, keyboard navigation, and format preservation.

  • ~5 MB memory at idle — Rust binary, no interpreter overhead
  • pip installable — pre-compiled binary wheel, no Rust compiler needed
  • Ctrl+C and Super+C both captured and shown in the same history list
  • Pinned items persist across reboots
  • GTK4 popup — keyboard-navigable, live search, dark/light theme

Install

One-liner (Debian / Ubuntu — recommended)

curl -fsSL https://github.com/rahul-anb/Copydeck/releases/latest/download/install.sh | bash

Downloads the pre-built .deb for your architecture, installs it with apt, and registers the service and hotkeys. Log out and back in when done.

Manual .deb install

Download the latest .deb from the Releases page, then:

sudo dpkg -i copydeck_*_amd64.deb   # x86_64
sudo apt-get install -f              # pull in any missing runtime deps
copydeck install-service

pip (any Linux)

pip install copydeck

# If your shell says "copydeck: command not found", add pip's bin directory to PATH:
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc && source ~/.bashrc

copydeck install-service

No Rust or compiler needed — pip downloads a pre-built binary wheel.

After a reinstall

If you reinstall or upgrade CopyDeck, restart the daemon to pick up the new binary:

systemctl --user restart copydeck

Pins and history are stored in ~/.local/share/copydeck/copydeck.db — back this file up to preserve your data across reinstalls.

Hotkeys

Key Action
Super+C Open clipboard history popup
Super+Shift+V Open popup — selected item pastes immediately
Ctrl+C Standard OS copy — automatically added to history

Both Ctrl+C and Super+C copies appear in the same history list.

Popup keyboard navigation

Key Action
/ Move selection (crosses Pinned / Recent boundary)
Tab / Shift+Tab Jump between Pinned and Recent sections
Enter Paste selected item and close
Ctrl+Enter Paste without closing (multi-paste mode)
p Pin / unpin selected item
Del Delete selected history entry
Esc Close without pasting

Pinned items

Pinned items live above the rolling history and survive reboots.

# Pin something from the command line
copydeck pin add "SELECT * FROM users LIMIT 10" --label "Quick SQL"

# List all pins with their IDs
copydeck pin list

# Remove a pin by ID
copydeck pin remove 3

# Export / import (backup or share across machines)
copydeck pin export --output pins.json
copydeck pin import pins.json

Daemon control

copydeck start          # start the daemon manually (normally handled by systemd)
copydeck pause          # pause clipboard monitoring (e.g. before entering a password)
copydeck resume         # resume monitoring after a pause

Configuration

Config file: ~/.config/copydeck/config.toml

The file is optional — all fields fall back to the defaults shown below.

[general]
history_limit         = 200    # rolling window size
content_size_limit_kb = 512    # ignore clipboard entries larger than this

[hotkeys]
open_history   = "super+c"
open_and_paste = "super+shift+v"

[ui]
theme             = "auto"   # "auto" | "dark" | "light"
popup_width       = 580
popup_height      = 700
max_preview_lines = 3        # lines shown per row before truncating
font              = "Monospace 13"
show_timestamps   = true

[storage]
db_path = "~/.local/share/copydeck/copydeck.db"

[paste]
focus_restore_delay_ms = 300  # increase if pastes land in the wrong window

[monitor]
poll_interval_ms = 500
# Clipboard activity from these apps is silently ignored
exclude_apps = ["gnome-keyring-dialog", "keepassxc", "1password"]
# Print current config
copydeck config

# Read a single value
copydeck config ui.theme

# Set a value
copydeck config ui.theme dark

# Check system dependencies
copydeck check-deps

Wayland support

Global hotkeys are restricted by the Wayland security model. copydeck install-service automatically registers Super+C / Super+Shift+V as GNOME custom keyboard shortcuts via gsettings.

Alternatively, add these manually in GNOME Settings → Keyboard → Custom Shortcuts:

Name Command Shortcut
CopyDeck Open copydeck open Super+C
CopyDeck Paste copydeck open --paste Super+Shift+V

Contributing

See CONTRIBUTING.md.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

copydeck-0.1.1-py3-none-manylinux_2_35_x86_64.whl (11.8 MB view details)

Uploaded Python 3manylinux: glibc 2.35+ x86-64

File details

Details for the file copydeck-0.1.1-py3-none-manylinux_2_35_x86_64.whl.

File metadata

File hashes

Hashes for copydeck-0.1.1-py3-none-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 3bd362efe1ac4523d247664fafca942256b38ad9983acf4ebdc6079e75b0592e
MD5 2ff5bbf8d39add1bcc76fbb216cae7c4
BLAKE2b-256 a8aff345e04fa7e26be3fd409ad2f00cdbbd11ec726c056c193780ef5336241b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page