关于开源

Deskflow 是一个由社区驱动、完全开源的项目。我们相信,优秀的工具应当自由、透明,并由使用它的人共同塑造。

我们的使命

让输入在设备之间自由流动

Deskflow 致力于以开源的方式,消除多电脑协作中的外设杂乱与来回切换。任何人都可以免费使用、审查源码、参与改进,并在开放的社区中协作。

  • 自由免费以 GPL-2.0 许可发布,无账号、无订阅、无锁定。
  • 社区驱动开发、文档与翻译由全球贡献者共同完成,决策公开。
  • 开放协作与同生态项目互通、共享想法,推动所有键鼠共享工具进步。
Deskflow 开源键鼠共享项目,一套键鼠控制多台电脑
项目历史

二十余年的软件 KVM 演进

Deskflow 并非凭空出现,它延续了自 2001 年以来键鼠共享领域的开放血脉。

2001 年

Synergy 诞生

Chris Schoeneman 创建 Synergy(其前身为 CosmoSynergy),开创了用软件实现 KVM、一套键鼠控制多台电脑的先河。

其后

走向商业化

Synergy 在迭代多个版本后逐步转向商业化运营,开源内核与商业版本开始并行存在。

2018 年前后

Barrier 分叉

社区基于 Synergy 的开源内核分叉出 Barrier,移除序列号与商业授权代码,让用户重新获得免费、开放的键鼠共享工具。

2020 年前后

Deskflow 成为上游

以开源内核 synergy-core 为基础,社区建立了完全社区驱动的上游项目并更名为 Deskflow,移除商业功能,成为 Synergy 的官方上游。

2024 年前后

Input Leap 接续 Barrier

由于 Barrier 领导层分歧、活跃维护者缺少项目权限,维护者创建 Input Leap 以延续开发,Barrier 此后被视为停止维护。

现在

持续演进

Deskflow 保持高频发布,默认 TLS 加密、完善 Wayland 支持;Synergy 作为下游商业分支,持续贡献代码并提供资金支持。

更详尽的历史记述,请参见项目 Wiki 的历史页面。

开源许可

GPL-2.0,自由且开放

Deskflow 以 GNU General Public License v2.0 许可发布,并附带 OpenSSL 例外条款。

你可以自由地

  • 为任何目的免费运行与使用本软件
  • 研究源代码并按需要修改
  • 再分发原始或修改后的版本
  • 在遵守 GPL-2.0 条款的前提下参与协作

许可文件与条款

完整条款以仓库中的 LICENSE 与 LICENSES 目录为准;OpenSSL 例外允许与 OpenSSL 库链接分发。

加入社区

与我们一起构建 Deskflow

我们是一个友好、活跃且欢迎新人的社区,贡献代码并非参与的唯一方式。

实时讨论

Matrix:#deskflow:matrix.org;IRC:Libera Chat 上的 #deskflow 与 #deskflow-dev。

代码与问题

在 GitHub 上发起 Discussion、提交 Issue、Review 代码或直接发起 Pull Request。

文档与翻译

改进 Wiki 与使用文档、完善界面多语言翻译、帮助测试新版本并反馈,都是重要贡献。

1

阅读贡献指南

先阅读 Contributing 与行为准则,了解开发与提交流程。

2

发起讨论

对计划中的改动,先开 Discussion 与维护者和社区沟通方向。

3

修改并提交

Fork 仓库、完成改动,按规范提交并发起 Pull Request。

4

评审合并

配合 CI 检查与代码评审,通过后合并,成为贡献者。

开放生态

与同类项目的关系

开源社区中的同类项目彼此协作、共享想法,共同推动键鼠共享工具的发展。

Synergy

Deskflow 的下游商业分支。Synergy 通过贡献代码与提供资金来赞助 Deskflow 项目。

Lan Mouse

使用 Rust 实现,目标是提供原生前端并与 Deskflow / Synergy 实现互操作。

Input Leap

源自 Deskflow / Synergy 体系,旨在延续 Barrier 的开发,Deskflow 可与其网络互通。

致谢:感谢自 Synergy 时代以来的每一位贡献者——提交代码、维护包、撰写文档、翻译本地化、报告问题以及在社区中答疑的所有人。完整贡献者名单见 GitHub Contributors。项目吉祥物 Meow'Dib 与口号 “The mice must flow” 也属于这个温暖的社区。

加入 Deskflow 社区

免费下载使用,或在 GitHub 上给项目一颗 Star、参与贡献,让输入在更多设备之间自由流动。

访问 GitHub