使用GitHub Actions快速定制编译OpenWrt固件教程
1. 项目介绍
shared-lede 是一个基于GitHub Actions的自动化工具,用于快速定制和编译OpenWrt固件。该项目允许用户通过简单的配置和操作,生成适用于多种设备的OpenWrt固件。支持的固件源码包括OpenWrt官方版本以及coolsnowwolf、Lienol、immortalwrt、x-wrt等维护的版本。
2. 项目快速启动
2.1 注册GitHub账号并开启GitHub Actions
首先,您需要在GitHub上注册一个账号,并确保GitHub Actions功能已开启。
2.2 Fork项目仓库
访问 hugcabbage/shared-lede 项目页面,点击右上角的 Fork 按钮,将项目复制到您的GitHub账号下。
2.3 自定义固件配置
在Fork后的仓库中,您可以根据需要自定义固件配置。每个机型关联三个文件:
[数字]_clone.sh:用于拉取固件源码和扩展插件源码。[数字]_modify.sh:用于固件初始化设置,如修改登录IP、主机名、WiFi名称等。[数字]_config:对应本地编译执行make menuconfig后生成的配置文件。
例如,修改登录IP的命令如下:
sed -i 's/192.168.1.1/192.168.31.1/g' package/base-files/files/bin/config_generate
2.4 运行编译流程
- 进入Fork后的仓库页面,点击上方
Actions选项卡。 - 选择左侧流程中的
build XXX运行。 - 点击
Run workflow,按需填写内容并运行。
2.5 下载固件
编译完成后,您可以在 Actions 流程页面中下载生成的固件。
3. 应用案例和最佳实践
3.1 小米4A千兆版固件定制
假设您需要为小米4A千兆版定制固件,可以按照以下步骤操作:
- 在
preset-openwrt目录中找到1_clone.sh、1_modify.sh和1_config文件。 - 根据需求修改
1_modify.sh文件,例如修改登录IP。 - 在
Actions中选择build openwrt流程,运行并下载固件。
3.2 添加新机型
如果预置机型中没有您需要的机型,可以按照以下步骤添加新机型:
- 在
templet目录下创建新的clone.sh、modify.sh和config文件。 - 修改
headers.json文件,添加新机型的配置。 - 在
github/workflows/build-xxx.yml文件中添加新机型的配置。
4. 典型生态项目
4.1 OpenWrt官方源码
OpenWrt官方源码是该项目的主要依赖之一,提供了基础的固件框架和插件支持。
4.2 coolsnowwolf/lede
coolsnowwolf维护的OpenWrt分支,提供了丰富的插件和优化,适用于多种设备。
4.3 Lienol/openwrt
Lienol维护的OpenWrt分支,提供了一些独特的功能和优化,适用于特定设备。
4.4 immortalwrt/immortalwrt
immortalwrt维护的OpenWrt分支,专注于稳定性和性能优化,适用于高性能设备。
4.5 x-wrt/x-wrt
x-wrt维护的OpenWrt分支,提供了一些创新的功能和优化,适用于特定应用场景。
通过这些生态项目,shared-lede 能够支持多种设备和应用场景,满足不同用户的需求。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



