用 Tauri+egui 做了一款开源 Rust 远程桌面: MirrorX

2022-11-23 19:23:53 +08:00
 cby0414

通俗的开头:试遍了市面上的远程桌面,离我需要在 mac 上玩 win 游戏至少 60 帧且能免费不折腾的需求都还有些差距,所以我决定自己写一个。

之前由于工作原因没有时间来做,在去年底失业玩了 3 个多月且求职屡屡碰壁并看在还有些积蓄的时候,我开始下决心做好这件事。

目前已发布 0.1.2 版本,基于 tauri 和 egui 使用 Rust 开发,tauri 用于主界面这种性能要求不高但是 ui 业务逻辑有点复杂的地方,egui 用于远程桌面窗口这种性能要求较高但仅需要少量 ui 的地方,桌面图像使用 opengl 绘制。tauri 和 egui 理论上桌面和移动平台都支持,但是目前我还是只主要测试了 Windows 和 macOS 平台,其他平台的支持会慢慢加上去(取决于我的精力😂)

全部的 3 个组件,包括客户端、信令服务器、中转服务器都完全开源,基于 p2p 打洞的方式正在研究中。

视频的编解码目前限制在 h264 软编软解,h265 、vp9 和硬件编解码在测试稳定后会加入到编码方式设置里。

代码仓库

https://github.com/MirrorX-Desktop/MirrorX

软件截图

最后

我现在是无业状态,每晚会在 B 站直播写这个项目的代码,有兴趣的 V 友可以来看看: http://live.bilibili.com/9020546

另外还是希望能找到一份远程的工作,能解决我的生存问题并继续投入在这个项目里,本人经验 go4 年,rust 不到 1 年,有意的请留言或联系~

最后希望 V 友们能给仓库一个 Star ,谢谢啦😁

7916 次点击
所在节点    分享创造
61 条回复
fzls
2022-11-23 19:30:45 +08:00
好厉害,远程桌面感觉开发起来好复杂
amlee
2022-11-23 19:48:58 +08:00
我去,你能自己做这种项目,为啥还找不到工作
dragonszy
2022-11-23 19:52:16 +08:00
战略马克
ihipop
2022-11-23 19:53:46 +08:00
@amlee 找工作就是个人期望和公司期望至少要有另双方满意的契合点,个人能力和个人经历会影响个人的契合点,公司需求和市场环境会影响公司的契合点,不是单方面的。
dabaibai
2022-11-23 20:11:57 +08:00
大佬厉害。
Aloento
2022-11-23 20:13:15 +08:00
《快速助手》
OP 加油,希望早日找到工作


@amlee 翻译一下就是不合适(
xieren58
2022-11-23 20:21:48 +08:00
非常牛, 已 star,
ZxBing0066
2022-11-23 20:44:42 +08:00
点个赞
adoal
2022-11-23 20:48:11 +08:00
前有 RustDesk ,后有 MirrorX ,用 Rust 写远程桌面的大业方兴未艾
bequt
2022-11-23 20:53:13 +08:00
感受到 rust 才是桌面软件的未来呀。
KHfqLAYYS6BKJT3R
2022-11-23 20:53:43 +08:00
目前 RustDesk 有两个问题:
1.mbp 息屏后无法唤醒
2.画质不知道能不能进一步提升(现在可以满足使用,想更进一步)

不知 op 开发的有没有改善
KHfqLAYYS6BKJT3R
2022-11-23 20:54:04 +08:00
@cjzlol #11 息屏->睡眠
KHfqLAYYS6BKJT3R
2022-11-23 20:58:07 +08:00
0.0 下载了打开一直转圈圈
cby0414
2022-11-23 22:14:19 +08:00
@cjzlol 刚才好像解析有点问题现在应该正常了😃
cby0414
2022-11-23 22:21:33 +08:00
@bequt tauri 或者 egui 或者编译成 c 库集成进 flutter ,都是不错的方案
zyxk
2022-11-23 23:00:02 +08:00
win10 打开闪退, 换了一台, 远程后提示
other error (message="negotiate desktop params failed",file ="mirrorx src\window desktop\statemod.rs",line 303)

另外有个问题是, 输入 id 后, 点击桌面, 要对方点同意后, 才输入密码? 这不应该是 2 选 1 吗?
FightPig
2022-11-23 23:05:39 +08:00
牛 p 啊
fox233
2022-11-23 23:19:27 +08:00
太 cool 了 支持局域网用局域网 IP 互联吗 那样延迟会更低 毕竟是同一个网段
cby0414
2022-11-24 00:13:49 +08:00
@zyxk 感谢反馈,另外无人值守或者说是默认信任这个功能会在后续加上,目前缺失功能比较多我只有一个个来,还望理解😂
cby0414
2022-11-24 00:15:23 +08:00
@fox233 局域网目前还需要架设一个中转服务器,不过局域网直连的功能也在计划中,目前缺失的功能还比较多我只有一个个来,还望理解😂

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/897427

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX