Ringboard:为 Linux 打造的现代剪贴板管理器
项目简介
Ringboard 是一个专为 Linux 设计的剪贴板历史管理器,由 SUPERCILEX 开发,采用 Rust 语言编写。目前在 GitHub 上拥有 442 个 stars 和 17 个 forks,虽然体量不大,但功能相当完善。
项目创建于 2024 年 1 月,短短一年多时间里已经迭代得非常成熟。最后一次更新是在 2026 年 4 月 4 日,维护相当活跃。
- 仓库地址:https://github.com/SUPERCILEX/clipboard-history
- 许可证:Apache 2.0
核心功能
Ringboard 的定位非常明确:做一个纯粹的 Linux 剪贴板管理器,不追求跨平台,而是把 Linux 平台体验做到极致。
双界面设计
Ringboard 同时提供 TUI(终端界面) 和 GUI(图形界面) 两种交互方式:
这种设计让用户可以根据自己的使用场景灵活选择——终端工作时用 TUI,桌面环境用 GUI。
全面的显示协议支持
Linux 桌面环境正处于 X11 向 Wayland 过渡的阶段,Ringboard 对此做了完善的支持:
- ✅ X11:传统桌面环境完美兼容
- ✅ Wayland:包括 wlroots 合成器(Sway、Hyprland 等)
- ✅ 纯 Wayland:支持 zwp-data-control-v1 协议的合成器
数据管理
- 历史记录持久化存储(SQLite 数据库)
- 支持文本、图片等多种格式
- 可配置的历史记录上限
- 智能去重和合并
技术亮点
Rust 的内存安全保证
作为系统级工具,Ringboard 需要处理来自各个应用的剪贴板数据。使用 Rust 编写意味着:
- 没有内存泄漏风险
- 不会因为剪贴板数据异常导致崩溃
- 长期后台运行稳定可靠
模块化的架构设计
项目采用多 crate 架构:
ringboard/
├── clipboard-history/ # 核心库
├── clipboard-history-tui/ # TUI 前端
├── clipboard-history-gui/ # GUI 前端
└── clipboard-history-daemon/ # 后台守护进程
这种分离让各个组件可以独立演进,也便于社区贡献。
安装与使用
从源码安装
# 克隆仓库
git clone https://github.com/SUPERCILEX/clipboard-history.git
cd clipboard-history
# 编译(需要 Rust 1.70+)
cargo build --release
# 安装
cargo install --path .
快速启动
# 启动守护进程(只需运行一次)
clipboard-history-daemon &
# 打开 TUI 界面
clipboard-history-tui
# 或打开 GUI 界面
clipboard-history-gui
系统集成
Ringboard 提供了 systemd 用户服务文件,可以设置为开机自启:
systemctl --user enable --now clipboard-history-daemon
为什么选择 Ringboard?
| 特性 | Ringboard | GPaste | CopyQ | clipcat |
|---|---|---|---|---|
| Stars | 442 | 1.2k | 11.3k | 556 |
| X11 支持 | ✅ | ✅ | ✅ | ✅ |
| Wayland 支持 | ✅ | ⚠️ 有限 | ⚠️ 有限 | ✅ |
| 原生 GUI | ✅ egui | ❌ | ✅ Qt | ❌ |
| 原生 TUI | ✅ ratatui | ❌ | ❌ | ✅ |
| 后台资源占用 | 极低 | 中等 | 较高 | 低 |
对于追求轻量、现代、纯粹 Linux 体验的用户来说,Ringboard 是一个值得尝试的选择。它不像 CopyQ 那样功能臃肿,也不像 GPaste 那样绑定 GNOME 生态,而是以一个独立工具的姿态存在。
总结
Ringboard 代表了新一代 Linux 桌面工具的开发思路:
- 专注单一平台 — 不追求跨平台,把 Linux 做到极致
- Rust 保证质量 — 内存安全 + 高性能
- 现代界面选择 — TUI/GUI 双管齐下
- 协议完整支持 — X11 和 Wayland 全兼容
如果你是 Linux 用户,正在寻找一个靠谱的剪贴板管理器,不妨给 Ringboard 一个机会。442 个 stars 背后是一个用心打磨的工具。
文章同步发布于 gumi.ink