久光本光的主页 久光本光的主页
  • 首页
  • 知识区
  • 影视区
  • 游戏区
  • 软件区
首页 › 软件区 › 使用github action编译自定义rustdesk客户端指南(内置自己的服务器信息、内置固定密码、内置自定义api服务器)

使用github action编译自定义rustdesk客户端指南(内置自己的服务器信息、内置固定密码、内置自定义api服务器)

久光本光
1 年前

前期准备

  1. 会使用git远程连接github仓库,并会简单的git push指令
  2. 已搭建好rustdesk自托管服务器和api服务器
  3. 本指南适用于目前最新的1.4.0版本

操作指南

  1. fork或者import rustdesk/hbb_common和rustdesk/rustdesk这两个项目(建议import并设置不公开,因为后面如果需要固定被控端密码的话,你的密码会以明文的形式公开在自己名下的仓库中)

  2. 针对hbb_common仓库的操作

git clone 你自己名下的hbb_common仓库到本地,在src/config.rs中修改RENDEZVOUS_SERVERS字段为自己的服务器地址,修改RS_PUB_KEY字段为自己的服务器key(简单的替换即可)

还是src/config.rs文件,找到HARD_SETTINGS字段
将那一整行替换为如下代码块:

 pub static ref HARD_SETTINGS: RwLock<HashMap<String, String>> = {
        let mut map = HashMap::new();
        map.insert("password".to_string(), "<明文填写你要固定的被控端密码>".to_string());
        RwLock::new(map)
    };

最后,将以上所有调整push到github仓库
(hbb_common仓库的相关改动直接在网页修改也可以)

  1. 针对rustdesk仓库的操作

git clone 你自己名下的rustdesk仓库到本地,cd到rustdesk目录。
首先彻底删除官方源码中的引用hbb_common子模块,记得windows打开显示隐藏文件:
输入指令:

git rm --cached libs/hbb_common

删除 .gitmodules中的所有内容(并非删除文件本身)
删除libs下的hbb_common文件夹
删除 .git文件下config中的相关子模块信息(如果有,内容和.gitmodules中的应该一样)
删除 .git文件夹下的libs目录(如果有)

成功删除后再添加上面自己修改过的hbb_common子模块,输入指令:

git submodule add https://github.com/<你的用户名>/hbb_common.git libs/hbb_common

替换过子模块后push,再输一次如下指令强制更新子模块

git submodule sync
git submodule update --remote

查找到rustdesk仓库中src/common.rs文件的get_custom_rendezvous_server这个函数,下面有个官方的api地址,将其替换成自己的

找到rustdesk仓库中src/common.rs文件的“secure_tcp(conn: &mut Stream, key: &str) -> ResultType<()>”字段,将下面的“if use_ws()”判断去掉直接return ok

可选:flutter/lib/desktop/pages/connection_page.dart文件中,搜索到setupServerWidget() => Flexible(相关代码块,修改为

  Widget setupServerWidget() => Flexible(
      child: Offstage(
        offstage: !(!_svcStopped.value &&
            stateGlobal.svcStatus.value == SvcStatus.ready &&
            _svcIsUsingPublicServer.value),
        child: Row(
          crossAxisAlignment: CrossAxisAlignment.center,
          children: [], 
        ),
      ),
    );

修改完毕,务必记得一定要push到github上自己名下的仓库!!!

git add .
git commit -m "修改子模块仓库地址+修改自定义内置信息"
git push
  1. 使用github action在线编译
    在<自己名下的>/rustdesk项目,找到Settings -> Actions -> General,确保勾选Allow all actions and reusable workflows和Read and write permissions两项

回到本地rustdesk仓库,创建一个tag

git tag -a <自己拟一个tag名> -m "这是我的自定义客户端tag"

在<自己名下的>/rustdesk项目,找到Actions,点击"i understand xxxx"那个按钮

回到本地rustdesk仓库,输入

git push --tags

将刚才新创建的标签同步到远程仓库

在actions页找到Flutter Tag Build,选择"run workflow"并点开branch下拉,选择刚才创建的标签(并非图片指向的Full Flutter CI,这个模式也可以但是不会打包成单exe并自动发布在releases)
使用github action编译自定义rustdesk客户端指南(内置自己的服务器信息、内置固定密码、内置自定义api服务器)-久光本光的主页

然后,愉快的开始run,等跑完去releases就能下到自己的专属rustdesk客户端啦~

久光本光

听不见音乐的人以为跳舞的人疯了
34
文章
1
评论
18
喜欢

随机推荐

rime输入法+白霜词库配置说明
时代洪流下平凡的微光 《棋王》解读 阿城原著
魂穿北宋三天,苏轼治好了我的精神内耗
【微软原版】Windows11 LTSC 24h2 简体中文版镜像ISO下载地址

热门标签

cloudflare (1) cs (1) fps游戏 (2) stun穿透 (1) windows (6) X-Lite (1) X-Lite中文 (1) X-Lite汉化 (1) XOS (2) 万字解读 (1) 人物志 (8) 优化 (2) 公网 (1) 刘慈欣 (3) 包拯 (1) 北宋 (5) 南宋 (1) 历史 (9) 原版windows (2) 反恐精英 (1) 变法 (1) 将军 (2) 小狼毫 (1) 小说解读 (4) 岳飞 (1) 庆余年 (1) 影视杂谈 (1) 文人 (8) 棋王 (1) 游戏剧情 (1) 游戏教程 (1) 游戏解读 (1) 王安石 (1) 王荆公 (1) 科幻 (3) 精神内耗 (1) 精简 (5) 系统优化 (3) 苏东坡 (2) 苏轼 (2) 范仲淹 (1) 西汉 (2) 遗憾 (1) 阿城 (1) 项脊轩志 (1)

猜你喜欢

优化版Windows11精简镜像:低延迟、无阉割、很纯净【X-Lite中文优化版】

优化版Windows11精简镜像:低延迟、无阉割、很纯净【X-Lite中文优化版】

2 月前
rime输入法+白霜词库配置说明

rime输入法+白霜词库配置说明

2 年前
iptables规则持久化指南

iptables规则持久化指南

2 年前
Windows11系统究极优化流程(如何安装一个纯净干净的Windows11)

Windows11系统究极优化流程(如何安装一个纯净干净的Windows11)

3 月前
Copyright © 2026 久光本光的主页. Designed by nicetheme.
苏公网安备32100302010906号 苏ICP备2024106004号
  • 首页
  • 知识区
  • 影视区
  • 游戏区
  • 软件区
  • 历史
  • 人物志
  • windows

久光本光

听不见音乐的人以为跳舞的人疯了