2020-10-23 12:49:25 +00:00
|
|
|
## Actions for Building OpenWRT
|
2020-09-29 06:17:03 +00:00
|
|
|
|
2020-10-24 00:59:14 +00:00
|
|
|
![GitHub Stars](https://img.shields.io/github/stars/Hyy2001X/AutoBuild-Actions.svg?style=flat-square&label=Stars&logo=github)
|
|
|
|
![GitHub Forks](https://img.shields.io/github/forks/Hyy2001X/AutoBuild-Actions.svg?style=flat-square&label=Forks&logo=github)
|
|
|
|
|
2021-04-08 08:56:11 +00:00
|
|
|
测试通过的设备: `d-team_newifi-d2(bin)`、`x86_64(img、img.gz)`
|
|
|
|
|
|
|
|
测试通过的源码: `coolsnowwolf/lede:master`、`immortalwrt/immortalwrt:openwrt-18.06`
|
2020-09-29 06:17:03 +00:00
|
|
|
|
2020-10-25 01:04:59 +00:00
|
|
|
## Github Actions 部署指南(STEP 1):
|
2020-09-29 06:17:03 +00:00
|
|
|
|
2021-03-31 01:49:42 +00:00
|
|
|
1. 首先需要获取 **Github Token**: [点击这里](https://github.com/settings/tokens/new) 获取,
|
2021-01-31 13:25:14 +00:00
|
|
|
|
2021-03-31 01:49:42 +00:00
|
|
|
`Note`项填写一个名称,`Select scopes`不理解就**全部打勾**,操作完成后点击下方`Generate token`
|
2021-01-31 13:25:14 +00:00
|
|
|
|
2021-02-14 17:43:44 +00:00
|
|
|
2. 复制页面中生成的 **Token**,并保存到本地
|
2020-09-29 06:17:03 +00:00
|
|
|
|
2021-03-31 04:31:05 +00:00
|
|
|
**一定要保存到本地,Token 值只会显示一次!**
|
2020-10-24 00:59:14 +00:00
|
|
|
|
2021-01-31 13:25:14 +00:00
|
|
|
3. ***Fork*** 我的`AutoBuild-Actions`仓库,然后进入你的`AutoBuild-Actions`仓库进行之后的设置
|
2020-09-29 06:17:03 +00:00
|
|
|
|
2021-01-31 13:25:14 +00:00
|
|
|
4. 点击上方菜单中的`Settings`,依次点击`Secrets`-`New repository secret`
|
2020-09-29 06:17:03 +00:00
|
|
|
|
2021-04-04 13:44:47 +00:00
|
|
|
其中`Name`项填写`GITHUB_TOKEN`,然后将你的 **Token** 粘贴到`Value`项,完成后点击`Add secert`
|
2020-09-29 06:17:03 +00:00
|
|
|
|
2020-10-25 01:04:59 +00:00
|
|
|
## 客制化固件(STEP 2):
|
2020-10-07 13:51:13 +00:00
|
|
|
|
2021-02-14 17:43:44 +00:00
|
|
|
1. 进入你的`AutoBuild-Actions`仓库,**下方所有操作都将在你的`AutoBuild-Actions`仓库下进行**
|
2020-09-29 06:17:03 +00:00
|
|
|
|
2021-02-21 12:50:54 +00:00
|
|
|
2. 把本地的 '.config' 文件重命名并上传到`/Configs`或者直接修改原有文件
|
2020-09-29 06:17:03 +00:00
|
|
|
|
2021-03-31 01:49:42 +00:00
|
|
|
3. 编辑`.github/workflows/*.yml`文件,修改`第 29 行 CONFIG_FILE:`为你上传的 '.config' 名称
|
2020-09-29 06:17:03 +00:00
|
|
|
|
2021-04-08 08:56:11 +00:00
|
|
|
4. 按照需求编辑`Scripts/AutoBuild_DiyScript.sh`文件的 **Firmware-Diy() 函数**
|
|
|
|
|
2021-04-04 13:44:47 +00:00
|
|
|
**定时编译** 先删除`第 20-21 行 #`注释,然后按需修改相关参数,[使用方法](https://www.runoob.com/w3cnote/linux-crontab-tasks.html)
|
|
|
|
|
|
|
|
**一键编译** 先删除`第 23-24 行 #`注释,单(双)击右上角 **Star** 重新点亮 **Star** 即可一键编译
|
|
|
|
|
2021-04-08 08:56:11 +00:00
|
|
|
**Diy_Core() 函数中的赋值解释:**
|
2021-01-31 12:17:40 +00:00
|
|
|
```
|
|
|
|
Author 作者名称,这个名称将在 OpenWrt 首页显示
|
2021-03-31 01:49:42 +00:00
|
|
|
|
2021-03-31 04:31:05 +00:00
|
|
|
Default_Device 可选,设备的官方完整名称,例如 [d-team_newifi-d2]
|
2021-03-31 01:49:42 +00:00
|
|
|
|
2021-01-31 12:17:40 +00:00
|
|
|
INCLUDE_AutoUpdate 启用后,将自动添加 AutoUpdate.sh 和 luci-app-autoupdate 到固件
|
2021-03-31 01:49:42 +00:00
|
|
|
|
2021-02-10 10:08:08 +00:00
|
|
|
INCLUDE_AutoBuild_Tools 添加 AutoBuild_Tools.sh 到固件
|
2021-01-31 12:17:40 +00:00
|
|
|
|
2021-03-31 04:31:05 +00:00
|
|
|
INCLUDE_DRM_I915 添加 Intel Graphics 驱动(仅 lede 源码以及部分核显可用)
|
2021-04-04 13:44:47 +00:00
|
|
|
|
2021-04-06 14:01:01 +00:00
|
|
|
INCLUDE_Obsolete_PKG_Compatible 优化 原生 OpenWrt-19.07、21.02 支持[测试特性]
|
2021-01-31 12:17:40 +00:00
|
|
|
```
|
2021-04-08 08:56:11 +00:00
|
|
|
|
2021-03-31 04:31:05 +00:00
|
|
|
**其他指令:** 编辑`Scripts/AutoBuild_DiyScript.sh`,参照下方语法:
|
2020-09-29 06:17:03 +00:00
|
|
|
```
|
2021-02-16 10:25:00 +00:00
|
|
|
[使用 git clone 拉取文件] ExtraPackages git 存放位置 软件包名 仓库地址 分支
|
2021-03-31 01:49:42 +00:00
|
|
|
|
2021-02-16 10:25:00 +00:00
|
|
|
[使用 svn checkout 拉取文件] ExtraPackages svn 存放位置 软件包名 仓库地址/trunk/目录
|
2021-03-31 01:49:42 +00:00
|
|
|
|
2021-03-31 04:31:05 +00:00
|
|
|
[替换 /CustomFiles 文件到源码] Replace_File 文件名称 目标路径 重命名(可选)
|
2020-11-14 17:20:22 +00:00
|
|
|
```
|
2020-10-02 15:30:54 +00:00
|
|
|
|
2021-01-06 13:18:27 +00:00
|
|
|
## 使用一键更新固件脚本:
|
|
|
|
|
|
|
|
首先需要打开 Openwrt 主页,点击`系统`-`TTYD 终端`或者在浏览器输入`192.168.1.1:7681`,按需输入下方指令:
|
|
|
|
|
2021-02-14 17:43:44 +00:00
|
|
|
检查并更新固件(保留配置): `bash /bin/AutoUpdate.sh`
|
2021-01-06 13:18:27 +00:00
|
|
|
|
2021-02-14 17:43:44 +00:00
|
|
|
检查并更新固件(不保留配置): `bash /bin/AutoUpdate.sh -n`
|
2021-01-06 13:18:27 +00:00
|
|
|
|
2021-03-31 04:31:05 +00:00
|
|
|
更多使用方法: `bash /bin/AutoUpdate.sh -help`
|
2021-02-14 17:43:44 +00:00
|
|
|
|
|
|
|
**注意: 一键更新固件需要在 Diy-Core() 函数中启用`INCLUDE_AutoUpdate`**
|
|
|
|
|
2020-10-24 01:06:21 +00:00
|
|
|
## 鸣谢
|
|
|
|
|
2021-04-04 13:44:47 +00:00
|
|
|
- [Lean's Openwrt Source code](https://github.com/coolsnowwolf/lede)
|
|
|
|
|
|
|
|
- [P3TERX's Actions-OpenWrt Project](https://github.com/P3TERX/Actions-OpenWrt)
|
2020-10-24 01:06:21 +00:00
|
|
|
|
2021-01-31 13:25:14 +00:00
|
|
|
- [P3TERX's Blog](https://p3terx.com/archives/build-openwrt-with-github-actions.html)
|
2021-02-23 14:29:12 +00:00
|
|
|
|
2021-04-04 13:44:47 +00:00
|
|
|
- [ImmortalWrt](https://github.com/immortalwrt)
|
|
|
|
|
2021-02-23 14:29:12 +00:00
|
|
|
- [eSir's workflow](https://github.com/esirplayground/AutoBuild-OpenWrt/blob/master/.github/workflows/Build_OP_x86_64.yml)
|
2021-04-04 13:44:47 +00:00
|
|
|
|
2021-04-08 08:56:11 +00:00
|
|
|
- 测试与建议: [CurssedCoffin](https://github.com/CurssedCoffin) [Licsber](https://github.com/Licsber) [sirliu](https://github.com/sirliu) [teasiu](https://github.com/teasiu)
|