【教程记录】使用GitHub Action 自动构建 RustDesk 客户端

同步来源:树洞剪藏 源站剪藏 ID:522 原文地址:https://www.nodeseek.com/post-281193-2
【教程记录】使用GitHub Action 自动构建 RustDesk 客户端
NodeSeek beta 日常 技术 情报 测评 交易 拼车 推广
【教程记录】使用GitHub Action 自动构建 RustDesk 客户端
rainerosion Lv 3 楼主 8days ago edited 8days ago in 技术 #0
前言
前几天有人问我新版本的Rustdesk如何自己构建,于是我写了这篇文章。如何利用Github Actions 实现自动构建内置你服务器和key的Rustdesk客户端。
- 准备工作
在开始之前,请确保你已经安装了 Git,并且拥有一个 GitHub 账户。建议你对 Git 的基本使用有一定了解,以便顺利完成后续操作。
- Fork Rustdesk仓库
rustdesk/hbb_common
rustdesk/rustdesk
2.1 拉取 Fork 后的代码
请注意,替换仓库地址为你fork后的仓库地址,而不是直接复制我下面的命令
可选:如果需要使用代理
git config --global http.proxy http://127.0.0.1:10808
git config --global https.proxy http://127.0.0.1:10808
拉取仓库代码到本地 请替换为你fork后的仓库地址
git clone https://github.com/irains/hbb_common.git git clone https://github.com/irains/rustdesk.git
- 修改 hbb_common代码
打开 hbb_common 仓库下的 src/config.rs 文件,修改 101-102 行 的默认服务器和密钥为你自己的服务器和密钥。
3.1 推送修改后的代码
将修改的代码添加到暂存区
git add .
将代码提交到本地仓库
git commit -m "修改默认的服务器和 key"
将本地仓库代码推送到远程仓库 如果你没有登录过GitHub会要求你登录github
git push
3.2 查看最新提交的 commit ID
git log --oneline
我这里提交后的commit id是b8d80ca,可用于后续验证rustdesk服务器和key是否修改成功
- 修改 rustdesk 仓库代码
我们切换到克隆下来的rustdesk代码目录下,按照下面的方式修改子模块地址并更新。
4.1 更新 .gitmodules
打开并编辑 .gitmodules 文件,将 url 替换为你Fork后的 hbb_common 仓库地址。
比如我fork后的仓库地址是 https://github.com/irains/hbb_common 则将 https://github.com/rustdesk/hbb_common 地址换为前面这个地址即可,记住是hbb_common的地址,而不是rustdesk仓库的地址
4.2 更新子模块
将上面修改好的代码保存,执行下面的命令更新子模块到最新的commit id
git submodule sync git submodule update --remote
4.3 提交并推送代码
git add . git commit -m "修改子模块仓库地址" git push
4.4 确认 Commit ID 更新
代码推送完毕后,进入你Fork 后的 rustdesk 仓库的 libs 目录下,查看 hbb_common 后面的 commit id,确保它是3.2提到的 b8d80ca (这个值每个人的是不同的),否则请回到上面的步骤重新检查是否遗漏了了某个操作。
- 触发 GitHub Action 构建
5.1 创建 Tag
在本地 rustdesk 仓库中创建一个新 tag,例如 1.3.9 ,请使用 固定格式 (如 1.3.9 或 v1.3.9 ),以便于自动匹配构建规则。
git tag -a 1.3.9 -m "修改内置服务器和 key"
5.2 触发 GitHub Actions 构建
在 rustdesk 仓库中,进入 Actions 页面,点击下面图中的按钮启用自动构建。启用后回到本地rustdesk代码中使用下面的命令将tag推送到Github后将自动开始构建。
git push --tags
5.3 下载构建好的客户端
Tag推送完毕后会出现下面的构建进度。
等待 Action 执行完成后(时间比较长,一个半小时左右才能全部构建完成),进入 Releases 页面,即可下载构建好的客户端并使用。
个人博客
3 0 12 引用 回复
1 2
rainerosion 楼主 8days ago #1
就这样记录并分享一下,同时也方便有需要的人。
个人博客
0 0 引用 回复
Wdan 8days ago #2
谢谢分享,感恩
0 0 引用 回复
阿尼亚 8days ago #3
GitHub Actions 会不会泄露关键信息
0 0 引用 回复
rainerosion 楼主 8days ago edited 8days ago #4
@阿尼亚 #3 代码就在上面。。大不了编译以后改成私有仓库或者删掉。至于私有仓库能不能通过action去拉取代码编译我没试过。。
个人博客
0 0 引用 回复
新来的 8days ago #5
这个好像挺占资源的。我上次好像跑个两次额度就没了~
0 0 引用 回复
rainerosion 楼主 8days ago #6
@新来的 #5 我跑了很多次了,也没限制过我啥
个人博客
0 0 引用 回复
xiaosan628 2days ago #7
@rainerosion #4 编译出来的exe 被复制 分享了 是不是 就被白嫖了啊 大家都可以用了
0 0 引用 回复
xe 2days ago #8
感谢分享
<☄️站内私信Xe>
0 0 引用 回复
rainerosion 楼主 1day ago edited 1day ago #9
@xiaosan628 #7 你自己下载了删掉releases不就好了
个人博客
0 0 引用 回复
xiaosan628 1day ago #10
@rainerosion #9 我意思是编译好了 你不是得复制一个exe给受控端那边吗,它也复制给别人 这不就 大家都可以用白嫖了吗?
0 0 引用 回复
rainerosion 楼主 1day ago #11
@xiaosan628 #10 这个编译好的exe本身就内置了你的服务器信息,复制出去肯定都能用
个人博客
0 0 引用 回复
1 2
内容 预览 对照
支持 markdown语法
鼓励友善发言,禁止人身攻击
xxxxxxxxxx
1
1
AC娘
洋葱头
小黄鸡
App
发布评论
88
等级 Lv 4 鸡腿 2354 关注 0 回复 0 我 0
主题帖 11 评论数 336 粉丝 2 收藏 241 私信 0 发帖
快捷功能区 推荐阅读 管理记录 幸运抽奖 邀请好友 合作商家 友站链接
所有版块 日常 技术 情报 测评 交易 曝光 拼车 生活 贴图 推广 内版 Dev 无意义 沙盒
📈用户数目📈
目前论坛共有28715位seeker
🎉欢迎新用户🎉
a19161
zeke
nahco3
solywsh
ruiruirui
辛德瑞拉
leozzz
MarkG
相关网站 LowEndTalk LowEndSpirit HostLoc ServerHunter
站内导航 关于本站 隐私协议 RSS订阅 sitemap
商业推广 商家申请规则 Premium Provider 合作商家展示
其他平台 电报频道 电报群组
联系我们
Copyright © 2022 - 2025 All rights Reserved