zekehao / shared-lede

定制编译OpenWrt固件

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

使用 GitHub Actions 快速定制编译 OpenWrt 固件

流程文档参考KFERMercer/OpenWrt-CI,十分感谢!

预置机型有小米4A千兆版、小米3Gv2、小米CR6606、小米CR6608、小米CR6609、红米AC2100、小米AC2100、小米4、小米3G,默认编译小米4A千兆版。

需要其他机型可参考以上,并修改templet目录下的各文件,以作新增机型,使用教程

喜欢的话,Star一下,方便再找。

使用本项目你需要:

  • GitHub 账号

  • GitHub Actions 基本使用技能

若要高度定制固件,需要掌握一定的Liunx、OpenWrt、Actions等相关知识,途径:自行搜索学习

使用教程:

1. 注册GitHub账号并开启GitHub Actions

2. fork hugcabbage/shared-lede

3. 设置Actions secrets

只上传到artifact,可以跳过此步。

进入GitHub Settings(点头像) → Developer settings → Personal access tokens → Generate new token,Note随意填,Expiration建议选No expiration,Select scopes里勾选repoworkflow,点Generate token,复制下长串token。

进入你fork的项目shared-lede下,点Settings → Secrets → Actions → New repository secret,Name填RELEASE_FIRMWARE,Value填复制的token,点Add secret。

4. 自定义固件

什么也不修改,按默认配置,可以跳过此步。

以小米4A千兆版为例,主要修改四个文件,在preset-models目录中。

1clone.sh

固件源码和插件源码,新增插件源时,建议先在本地测试下是否缺依赖。

1modify.sh

固件初始化设置,修改登录IP、主机名、WiFi名称等。

1.config

只带luci应用、theme这两部分,流程中会转为.config,并自动补全为完整的。

release_content.txt

此文本仅作release记录,其中的IP、密码与固件并无关联,怎么改都可以。

5. Actions中手动开始编译流程

选择你的Workflow,点击Run workflow,按需填内容,运行即可。

对部分选项说明一下

上传到release:

默认勾选。推荐,空间无限,单文件不能超过2GB,有内容记录。

上传到artifact:

默认不勾选。不推荐,无内容记录。

版本描述:

可作一些简单记录,会在release中显示。

6. 编译完成

Actions流程顺利完成后,去release(或者artifact)下载你的固件,allfiles.zip是所有文件的打包。

各机型对应文件说明

机型 文件
小米4A千兆版 1.config、1clone.sh、1modify.sh
小米3Gv2 1-1.config、1clone.sh、1modify.sh
小米4
小米3G
小米CR6606
小米CR6608
小米CR6609
2.config、2clone.sh、2modify.sh
红米AC2100
小米AC2100
3.config、3clone.sh、3modify.sh

关于小米4A千兆版

1.直接在Actions中运行固件编译就能编译出固件,但默认插件数量较少,对插件有增、减需要的,到1.config中自行选择。若在1clone.sh中添加了插件源,在1.config要作对应修改,建议先在本地make menuconfig测试。

2.该机型需修改分区才能在breed直刷,参考帖子,本项目中已修改好。

3.带超频方案,默认不启用,方案来自帖子

4.该机型闪存小,若编译插件太多,包体积超出16064K,则不会生成sysupgrade.bin。
可以去官方插件库参考各插件大小,下方也列出了几个较大插件的最近版本的体积:
UnblockNeteaseMusic-Go_0.2.13 --- 2.05MB
luci-app-openclash_0.44.16 --- 2.14MB
luci-app-vssr_1.23 --- 2.87MB
xray-core_1.5.3 --- 5.63MB


最后

不准备出什么详细的教程,自己摸索吧。

如有问题,请利用庞大的网络知识库,能快速解决你的问题。

About

定制编译OpenWrt固件

License:MIT License


Languages

Language:Shell 81.4%Language:Python 18.6%