Skip to content

vicsejas/clipmanx

Repository files navigation

Clipmanx

A lightweight clipboard manager for Linux Mint featuring GTK3 system tray integration.

Logo

Features

  • Clipboard History: Stores and manages clipboard history
  • System Tray Icon: Adaptive icon (dark/light theme support)
  • Lightweight: Minimal dependencies, minimal resource usage
  • Persistent: Remembers clipboard history between sessions
  • Configurable: Customize capture sources and history size
  • Linux Mint Native: System-wide installation on Debian-based systems

Installation

Download the latest .deb from the Releases page and install it:

sudo apt-get install -y ./clipmanx_*_all.deb

System Requirements:

  • Linux Mint 22.3+ (or Ubuntu 24.04+/Debian-based)
  • Python 3.10+
  • GTK 3.0

Usage

Start the Application

clipmanx

Or find "Clipmanx" in your applications menu.

System Tray Menu

Click the Clipmanx icon in your system tray to:

  • Select any item from history to copy to clipboard
  • Clear History to remove all entries
  • Settings to configure capture sources
  • Quit to exit the application

Configuration

Settings are stored at: ~/.config/clipmanx/settings.json

Available options:

  • capture_clipboard: Capture Ctrl+C events (default: true)
  • capture_primary: Capture X11 PRIMARY selection (default: true)
  • max_items: Maximum history entries (default: 50)

Architecture

clipmanx/
├── app.py              # Main GTK3 application & UI
├── clipboard.py        # Clipboard monitoring
├── history.py          # History storage & retrieval
└── settings.py         # Configuration management

Icon Adaptation

The tray icon automatically adapts to your system theme:

  • Dark themeicon-white.svg
  • Light themeicon-black.svg

This is handled by the _create_theme_adapted_icon() function in app.py.

Development

Setup

git clone https://github.com/vicsejas/clipmanx.git
cd clipmanx

# Install uv (Python package manager)
# See https://docs.astral.sh/uv/getting-started/
curl -LsSf https://astral.sh/uv/install.sh | sh

# Install dependencies
uv sync

Run from Source

uv run clipmanx

Build .deb Package (optional)

Releases are built automatically by GitHub Actions on every v* tag push, so contributors don't need to build the .deb locally. If you want to anyway, see Build Guide. For the release workflow itself, see Distribution Guide.

Contributing

Contributions welcome! Areas for improvement:

  • Additional clipboard sources
  • Clipboard search functionality
  • Sync across devices
  • More theme options

Author

Victor Sejas - vrsejas@gmail.com

License

MIT License - See LICENSE file for details

Attribution

Troubleshooting

Icon not showing or tray click does nothing? A stale background instance may be holding the single-instance socket. Stop the old process, clear the socket, then relaunch:

pkill -f bin/clipmanx
rm -f "${XDG_RUNTIME_DIR:-/tmp}"/clipmanx.sock
clipmanx

Can't capture clipboard? Click the tray icon → Settings and ensure capture is enabled.

See INSTALL.md for more.


Made for Linux Mint by Victor Sejas

About

Clipboard manager for Linux Mint

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors