openwrt固件编译

本地编译

  • 首先是注意事项
    首先装好 Ubuntu 64bit,推荐 Ubuntu 22.04
    不要用 root 用户 git 和编译!!!
    国内用户编译前最好准备好软件源下载加速
    默认登陆IP 192.168.1.1, 密码 password
  • 安装编译依赖
1
2
3
4
5
6
7
8
9
sudo apt update -y
sudo apt full-upgrade -y
sudo apt install -y ack antlr3 asciidoc autoconf automake autopoint binutils bison build-essential \
bzip2 ccache clang cmake cpio curl device-tree-compiler flex gawk gettext gcc-multilib g++-multilib \
git gperf haveged help2man intltool libc6-dev-i386 libelf-dev libfuse-dev libglib2.0-dev libgmp3-dev \
libltdl-dev libmpc-dev libmpfr-dev libncurses-dev libncurses-dev libpython3-dev libreadline-dev \
libssl-dev libtool llvm lrzsz genisoimage msmtp ninja-build p7zip p7zip-full patch pkgconf python3 \
python3-pyelftools python3-setuptools qemu-utils rsync scons squashfs-tools subversion swig texinfo \
uglifyjs upx-ucl unzip vim wget xmlto xxd zlib1g-dev
  • 下载源代码,更新 feeds 并选择配置
1
2
3
4
5
git clone https://github.com/coolsnowwolf/lede
cd lede
./scripts/feeds update -a
./scripts/feeds install -a
make menuconfig
  • 下载 dl 库,编译固件
    (-j 后面是线程数,第一次编译推荐用单线程)
1
2
make download -j8
make V=s -j1
  • 二次编译:
1
2
3
4
5
6
7
cd lede
git pull
./scripts/feeds update -a
./scripts/feeds install -a
make defconfig
make download -j8
make V=s -j$(nproc)
  • 如果需要重新配置:
1
2
3
rm -rf .config
make menuconfig
make V=s -j$(nproc)

openwrt编译步骤与命令详解

  • 首次编译

    • 克隆 Open­Wrt 源码
      1
      git clone https://github.com/coolsnowwolf/lede openwrt
    • 进入源码目录
      1
      cd openwrt
    • 下载 feeds 源中的软件包源码
      1
      ./scripts/feeds update -a

      feeds 是扩展的软件包,独立于 Open­Wrt 源码之外,所以需要单独进行拉取和更新。

  • 安装 feeds 中的软件包

    1
    ./scripts/feeds install -a
  • 调整 Open­Wrt 系统组件

    1
    make menuconfig

    首次编译建议只选择架构,其它都不要动,这样编译成功率会更高。如果不打算调整组件则输入make defconfig,它会检测编译环境并生成默认的编译配置文件。

  • 生成当前配置与默认配置的差异

    1
    ./scripts/diffconfig.sh > diffconfig
  • 预下载编译所需的软件包

    1
    make download -j8 V=s

    -j8是指使用8个线程下载,理论上是数字越大下载越快,但似乎有个上限,实测5线程以上其实速度相差不了多少,在网络好的情况下,基本在5分钟以内能下载完。

  • 检查文件完整性

    1
    find dl -size -1024c -exec ls -l {} \;

    此命令可以列出下载不完整的文件(根据我多次编译的经验得出小于1k的文件属于下载不完整),如果存在这样的文件可以使用find dl -size -1024c -exec rm -f {} ;命令将它们删除,然后重新执行make download下载并反复检查,确认所有文件完整可大大提高编译成功率,避免浪费时间。

  • 开始编译

    1
    make -j1 V=s

    -j1:使用单线程编译。新手推荐单线程编译,一是因为玄学问题可能成功率高,二是方便查看错误日志。
    V=s:输出详细日志,用于编译失败时找出错误。而且满屏代码在跑能装逼,一跑就是几个小时,装逼更持久。

  • 再次编译

  • 进入源码目录(如果不在此目录)

    1
    cd openwrt
  • 更新

    TIPS: 短期内再次编译可忽略更新这个步骤。

    • 更新系统软件包
      1
      sudo sh -c "apt update && apt upgrade -y"

      主要作用是更新在编译环境搭建时所安装的编译组件

    • 拉取 Open­Wrt 源码更新
      1
      git pull
    • 更新 feeds 源中的软件包源码
      1
      ./scripts/feeds update -a
    • 安装 feeds 中的软件包
      1
      ./scripts/feeds install -a
  • 文件清理

    • 清除旧的编译产物(可选)
      1
      make clean

      在源码有大规模更新或者内核更新后执行,以保证编译质量。此操作会删除/bin和/build_dir目录中的文件。

    • 清除旧的编译产物、交叉编译工具及工具链等目录(可选)
      1
      make dirclean

      更换架构编译前必须执行。此操作会删除/bin和/build_dir目录的中的文件(make clean)以及/staging_dir、/toolchain、/tmp和/logs中的文件。

    • 清除 Open­Wrt 源码以外的文件(可选)
      1
      make distclean

      除非是做开发,并打算 push 到 GitHub 这样的远程仓库,否则几乎用不到。此操作相当于make dirclean外加删除/dl、/feeds目录和.config文件。

    • 还原 Open­Wrt 源码到初始状态(可选)
      1
      git clean -xdf

      如果把源码改坏了,或者长时间没有进行编译时使用。

    • 清除临时文件
      1
      rm -rf tmp

      删除执行make menuconfig后产生的一些临时文件,包括一些软件包的检索信息,删除后会重新加载package目录下的软件包。若不删除会导致一些新加入的软件包不显示。

    • 删除编译配置文件
      1
      rm -f .config

      在不删除的情况下如果取消选择某些组件它的依赖组件不会自动取消,所以对于需要调整组件的情况下建议删除。

  • 编译

    • 调整 Open­Wrt 系统组件
      1
      make menuconfig

      如果不打算调整组件则输入make defconfig,它会检测编译环境并根据更新自动调整编译配置文件。

    • 预下载编译所需的软件包
      1
      make download -j8 V=s
    • 检查文件完整性
      1
      find dl -size -1024c -exec ls -l {} \;

      此命令可以列出下载不完整的文件(根据我多次编译的经验得出小于1k的文件属于下载不完整),如果存在这样的文件可以使用find dl -size -1024c -exec rm -f {} ;命令将它们删除,然后重新执行make download下载并反复检查,确认所有文件完整可大大提高编译成功率,避免浪费时间。

    • 开始编译
      1
      make -j$(nproc) || make -j1 || make -j1 V=s

      多线程编译失败后自动进入单线程编译,失败则输出详细日志。

  • 原文链接:https://p3terx.com/archives/openwrt-compilation-steps-and-commands.html

在线云编译

P3TERX方案
  • 前提
    1、已经会本地编译
    2、有GitHub账号
  • 第一步
    打开自己本地编译目录,先和大屌源码同步一下
    1
    2
    3
    git pull
    ./scripts/feeds update -a
    ./scripts/feeds install -a
    然后执行make menuconfig 选好后执行
    1
    2
    make defconfig
    ./scripts/diffconfig.sh > seed.config
    这样配置的差异部分就写入这个文件了
  • 第二步
    1、打开 https://github.com/P3TERX/Actions-OpenWrt fork这个项目
    2、之后在自己fork出来的项目里的网页里创建一个新文件(点击Create new file).conifg
    3、然后把前面提到的seed.config文件的内容粘贴进来
    4、其它修改化设置可以查看https://p3terx.com/archives/build-openwrt-with-github-actions.html
  • 第三步
    1、在Actions页面可以手动开始编译了
    2、固件下载在Actions--Build OpenWrt--Artifacts--OpenWrt firmware
  • 原文链接:https://github.com/coolsnowwolf/lede/issues/2288
KFERMercer方案
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
name: OpenWrt-CI

# 触发方式:支持手动触发并要求用户输入版本号,默认为 "v1.0.0"
on:
workflow_dispatch:
inputs:
tag:
description: "Release tag for the firmware"
required: true
default: "v1.0.0"

# 设置权限:仅允许读取内容
permissions:
contents: read

jobs:
build_openwrt:
name: Build OpenWrt Firmware # 定义任务名称
runs-on: ubuntu-latest # 运行环境,使用最新的 Ubuntu 系统

steps:
- name: Space cleanup and Initialization environment
env:
DEBIAN_FRONTEND: noninteractive # 避免交互式安装
run: |
# 清理环境以释放磁盘空间和提高构建效率
sudo -E rm -rf /usr/share/dotnet /etc/mysql /etc/php /etc/apt/sources.list.d /usr/local/lib/android
sudo -E apt-mark hold grub-efi-amd64-signed
sudo -E apt update
sudo -E apt -y purge azure-cli* docker* ghc* zulu* llvm* firefox google* dotnet* powershell* openjdk* mysql* php* mongodb* dotnet* snap*
sudo -E apt -y full-upgrade
# 安装所需的软件包
sudo -E apt -y install ack antlr3 aria2 asciidoc autoconf automake autopoint binutils bison build-essential bzip2 ccache cmake cpio curl device-tree-compiler fastjar flex gawk gettext gcc-multilib g++-multilib git gperf haveged help2man intltool libc6-dev-i386 libelf-dev libglib2.0-dev libgmp3-dev libltdl-dev libmpc-dev libmpfr-dev libncurses5-dev libncursesw5-dev libreadline-dev libssl-dev libtool lrzsz mkisofs msmtp nano ninja-build p7zip p7zip-full patch pkgconf python3 python3-pip libpython3-dev qemu-utils rsync scons squashfs-tools subversion swig texinfo uglifyjs upx-ucl unzip vim wget xmlto xxd zlib1g-dev
# 清理不必要的文件和包
sudo -E systemctl daemon-reload
sudo -E apt -y autoremove --purge
sudo -E apt clean
# 设置时区为上海
sudo -E timedatectl set-timezone "Asia/Shanghai"

- name: Checkout OpenWrt
uses: actions/checkout@v4 # 从 Git 仓库拉取代码

- name: Update feeds
run: |
# 添加额外的软件源 OpenClash
echo 'src-git OpenClash https://github.com/vernesong/OpenClash.git;master' >>feeds.conf.default
# 更新并安装所有的源
./scripts/feeds update -a
./scripts/feeds install -a

- name: Generate configuration file
run: |
# 删除之前的配置文件
rm -f ./.config*
touch ./.config

# 添加 OpenWrt 配置
cat >> .config <<EOF
CONFIG_TARGET_ipq806x=y
CONFIG_TARGET_ipq806x_generic=y
CONFIG_TARGET_ipq806x_generic_DEVICE_linksys_ea8500=y
# ... (省略部分具体配置内容)
EOF

# 去掉配置文件中的缩进以满足编译要求
sed -i 's/^[ \t]*//g' ./.config
# 生成默认配置
make defconfig
# 添加网络配置到默认设置文件
sed -i "2i # network config" ./package/lean/default-settings/files/zzz-default-settings
sed -i "3i uci set network.lan.ipaddr='192.168.50.1'" ./package/lean/default-settings/files/zzz-default-settings # 设置 LAN IP 地址
sed -i "4i uci set network.lan.proto='static'" ./package/lean/default-settings/files/zzz-default-settings # 设置 LAN 使用静态 IP

- name: Download packages
run: make download -j16 # 并行下载所需的编译包,加速构建过程

- name: Compile firmware
run: |
# 使用多核编译以加快构建速度,如果失败则显示详细错误日志
make -j$(nproc) || make -j1 V=s

- name: Prepare artifact
run: |
# 创建保存固件、包和编译信息的目录
mkdir -p ./artifact/firmware
mkdir -p ./artifact/package
mkdir -p ./artifact/buildinfo
# 删除无用的 package 文件夹
rm -rf $(find ./bin/targets/ -type d -name "packages")
# 将固件、安装包和构建信息拷贝到相应目录
cp -rf $(find ./bin/targets/ -type f -name "*.bin") ./artifact/firmware/
cp -rf $(find ./bin/packages/ -type f -name "*.ipk") ./artifact/package/
cp -rf $(find ./bin/targets/ -type f -name "*.buildinfo" -o -name "*.manifest") ./artifact/buildinfo/

- name: Upload buildinfo
uses: actions/upload-artifact@v4 # 上传构建信息到 GitHub
with:
name: OpenWrt_buildinfo
path: ./artifact/buildinfo/

- name: Upload firmware
uses: actions/upload-artifact@v4 # 上传固件到 GitHub
with:
name: OpenWrt_firmware
path: ./artifact/firmware/

- name: Upload package
uses: actions/upload-artifact@v4 # 上传安装包到 GitHub
with:
name: OpenWrt_package
path: ./artifact/package/

- name: Set Release Date
id: release_date
run: |
# 获取当前时间并格式化为 年.月.日-时分
release_date=$(date +'%Y.%m.%d-%H:%M')
echo "::set-output name=date::$release_date"

- name: Upload release asset
if: github.event_name == 'workflow_dispatch' # 确保只有在手动触发时上传 Release
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.YOURTOKEN }} # 使用 GitHub Token 进行授权
file: ./artifact/firmware/*.bin # 指定要上传的固件文件
tag: ${{ github.event.inputs.tag }} # 使用用户输入的版本号作为 Tag
release_name: "OpenWrt Release on ${{ steps.release_date.outputs.date }}" # 使用格式化的时间作为 Release 名称
file_glob: true # 支持通配符

在线自动生成固件

插件中英文对照

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
luci-app-clash    # clash科学上网(基本上没用的了,已经给luci-app-openclash代替)
luci-app-accesscontrol    # 访问时间控制
luci-app-adblock    # ADB 广告过滤
luci-app-adbyby-plus    # 广告屏蔽大师Plus +
luci-app-adguardhome    # adguardhome广告过滤
luci-app-advanced    # 高级设置(内置luci-app-fileassistant文件助手)
luci-app-advanced-reboot    # 高级重启
luci-app-aliyundrive-webdav    # 阿里云盘
luci-app-ahcp    # 支持 AHCPd
luci-app-airplay2    # Apple AirPlay2 无损音频接收服务器
luci-app-aliddns    # 阿里 DDNS
luci-app-amule    # aMule 下载工具
luci-app-argon-config    # argon主题设置,要配合argon主题使用
luci-app-aria2    # Aria2 下载工具
luci-app-arpbind    # IP/MAC 绑定
luci-app-asterisk    # 支持 Asterisk 电话服务器
luci-app-attendedsysupgrade    # 固件更新升级相关
luci-app-autoreboot    # 支持计划重启
luci-app-autoupdate    # 定时更新固件插件
luci-app-baidupcs-web    # 百度网盘管理
luci-app-bcp38    # BCP38 网络入口过滤(不确定)
luci-app-bird1-ipv4    # 对Bird1-ipv4的支持
luci-app-bird1-ipv6    # 对Bird1-ipv6的支持
luci-app-bmx6    # BMX6路由协议
luci-app-cifs-mount    # CIFS/SMB挂载设置
luci-app-cifsd    # CIFS/SMB网络共享
luci-app-cjdns    # 加密IPV6网络相关
luci-app-clamav    # ClamAV杀毒软件
luci-app-commands    # Shell命令模块
luci-app-control-timewol    # 定时网络设备唤醒
luci-app-control-webrestriction    # 访问限制
luci-app-control-weburl    # 网址过滤
luci-app-cpulimit    # CPU性能调整
luci-app-cshark    # CloudShark捕获工具
luci-app-cupsd    # CUPS 打印服务器
luci-app-ddns    # 动态域名 DNS(集成阿里DDNS客户端)
luci-app-ddnsto    # 内网穿透
luci-app-diag-core    # core诊断工具
luci-app-diskman    # 磁盘管理工具
luci-app-dnscrypt-proxy    # DNSCrypt解决DNS污染
luci-app-dnsforwarder    # DNSForwarder防DNS污染
luci-app-docker    # 不带控制面板的docker
luci-app-dockerman    # 带控制面板的docker
luci-app-dump1090    # 民航无线频率(不确定)
luci-app-dynapoint    # DynaPoint(未知)
luci-app-e2guardian    # Web内容过滤器
luci-app-easymesh    # 简单MESH(可有线+无线回程)
luci-app-eqos    # 内网IP地址限速
luci-app-familycloud    # 家庭云盘
luci-app-fileassistant    # 文件助手
luci-app-filebrowser    # 文件管理器
luci-app-filetransfer    # 文件传输(可web安装ipk包)
luci-app-firewall    # 添加防火墙
luci-app-frpc    # 内网穿透Frp客户端
luci-app-frps    # 内网穿透Frp服务端
luci-app-fwknopd    # Firewall Knock Operator服务器
luci-app-godproxy    # 广告拦截
luci-app-gost    # GO语言实现的安全隧道(隐蔽的https代理)
luci-app-gowebdav    # GoWebDav 是一个轻巧、简单、快速的 WebDav 服务端程序
luci-app-guest-wifi    # WiFi访客网络
luci-app-haproxy-tcp    # HAProxy负载均衡-TCP
luci-app-hd-idle    # 硬盘休眠
luci-app-hnet    # Homenet Status家庭网络控制协议
luci-app-https-dns-proxy    # 通过HTTPS代理为DNS提供Web UI
luci-app-ipsec-vpnserver-manyusers    # ipsec-vpn(VPN服务器)
luci-app-iptvhelper    # iptvhelper,帮助你轻松配置IPTV
luci-app-jd-dailybonus    # 京东签到服务
luci-app-kodexplorer    # KOD可道云私人网盘
luci-app-koolddns    # 支持阿里DDNS、DnsPod动态域名解析
luci-app-linkease    # 易有云文件管理器
luci-app-lxc    # LXC容器管理
luci-app-mentohust    # 锐捷验证
luci-app-minidlna    # 完全兼容DLNA / UPnP-AV客户端的服务器软件
luci-app-mjpg-streamer    # 兼容Linux-UVC的摄像头程序
luci-app-music-remote-center    #PCHiFi 数字转盘遥控
luci-app-mwan3    # MWAN3负载均衡
luci-app-mwan3helper    # MWAN3分流助手
luci-app-n2n_v2    # N2N内网穿透 N2N v2 VPN服务
luci-app-netdata    # 实时监控中文版
luci-app-nfs    # NFS网络共享
luci-app-nft-qos    # QOS流量控制 Nftables版
luci-app-nlbwmon    # 网络带宽监视器
luci-app-noddos    # NodDOS Clients 阻止DDoS攻击(丢弃)
luci-app-nps    # 内网穿透nps
luci-app-ntpc    # NTP时间同步服务器
luci-app-oaf    # 应用过滤
luci-app-ocserv    # OpenConnect VPN服务
luci-app-olsr    # OLSR配置和状态模块
luci-app-olsr-services    # OLSR服务器
luci-app-olsr-viz    # OLSR可视化
luci-app-oled    # 为1306 0.91 oled专用,如果oled不显示,请看这里
luci-app-onliner    # 流量监控
luci-app-openclash    # openclash
luci-app-openvpn    # OpenVPN客户端
luci-app-openvpn-server    # 易于使用的OpenVPN服务器 Web-UI
luci-app-oscam    # OSCAM服务器
luci-app-p910nd    #打印服务
luci-app-pagekitec    # Pagekitec内网穿透客户端
luci-app-passwall    # 科学上网
luci-app-polipo    # Polipo代理(是一个小型且快速的网页缓存代理)
luci-app-poweroff    # 关机
luci-app-pppoe-relay    # PPPoE NAT穿透 点对点协议(PPP)
luci-app-pppoe-server    # 宽带接入认证服务器
luci-app-pptp-server    # VPN服务器 PPTP
luci-app-privoxy    # Privoxy网络代理(带过滤无缓存)
luci-app-ps3netsrv    # PS3 NET服务器(用于加载蓝光/游戏ISO/PKG)
luci-app-pushbot    # 钉钉推送(微信推送修改版)
luci-app-qbittorrent    # BT下载工具(完整版)
luci-app-qbittorrent_static    # BT下载工具
luci-app-qos    # 流量服务质量(QoS)流控
luci-app-radicale    # CalDAV/CardDAV同步工具
luci-app-ramfree    # 释放内存
luci-app-rclone    # 命令行云端同步工具
luci-app-rebootschedule    # 多功能定时任务(重启网络、重启系统、重启WIFI、重新拨号...)
luci-app-rp-pppoe-server    # Roaring Penguin PPPoE Server 服务器
luci-app-samba    # 网络共享
luci-app-samba4    # 网络共享(Samba4)
luci-app-serverchan    # 微信推送
luci-app-shadowsocks-libev    # SS-libev服务端
luci-app-shairplay    # 支持AirPlay功能
luci-app-siitwizard    # SIIT配置向导 SIIT-Wizzard
luci-app-simple-adblock    # 简单的广告拦截
luci-app-smartdns    # SmartDNS
luci-app-smartinfo    # 穿越蓝天磁盘监控
luci-app-socat    # 多功能的网络工具
luci-app-softethervpn    # SoftEther VPN服务器 NAT穿透
luci-app-splash    # Client-Splash是无线MESH网络的一个热点认证系统
luci-app-store    # 在线商店
luci-app-supervisord    # 一款golang开发的进程管理
luci-app-sqm    # 流量智能队列管理(QOS)
luci-app-squid    # Squid代理服务器
luci-app-ssr-plus    #SSR Plus+ 科学上网
luci-app-ssrserver-python    #ShadowsocksR Python服务器
luci-app-statistics    # 流量监控工具
luci-app-switch-lan-play    # 虚拟局域网联机工具
luci-app-syncdial    # 多拨虚拟网卡(原macvlan)
luci-app-syncthing    # syncthing同步工具
luci-app-tencentddns    # 腾讯DDNS
luci-app-timecontrol    # 时间控制跟(luci-app-accesscontrol)差不多,不同的是这个可以配合高级设置一起使用
luci-app-tinyproxy    # Tinyproxy是 HTTP(S)代理服务器
luci-app-transmission    # BT下载工具
luci-app-travelmate    # 旅行路由器
luci-app-ttnode    # 甜糖星愿自动采集插件
luci-app-ttyd    # 网页终端命令窗
luci-app-turboacc    # Turbo ACC 网络加速
luci-app-udpxy    # udpxy做组播服务器
luci-app-udp2raw    # udp2raw-tunnel管理界面-隧道服务器管理
luci-app-uhttpd    # uHTTPd Web服务器
luci-app-unblockmusic    #解锁网易云灰色歌曲
luci-app-unblockneteasemusic    #新版本解除网易云音乐播放限制
luci-app-unbound    # Unbound DNS解析器
luci-app-upnp    # 通用即插即用UPnP(端口自动转发)
luci-app-usb-printer    # USB 打印服务器
luci-app-uugamebooster    # UU网游加速器
luci-app-v2ray-server    # V2Ray 服务器
luci-app-verysync    # 微力同步
luci-app-vlmcsd    # KMS激活服务器
luci-app-vnstat    # vnStat网络监控(图表)
luci-app-vpnbypass    # VPN BypassWebUI 绕过VPN设置
luci-app-vsftpd    # FTP服务器
luci-app-vssr    # VSSR科学上网
luci-app-watchcat    # 断网检测功能与定时重启
luci-app-webadmin    # Web管理页面设置
luci-app-wifischedule    # WiFi 计划
luci-app-wireguard    # VPN服务器 WireGuard状态
wifidog-wiwiz    # 拼拼WiFi(luci-app-eqos必选,然后在Network ---> Captive Portals ---> wifidog-wiwiz 勾选上)
luci-app-wolplus    # 新版网络唤醒,替换luci-app-wol
luci-app-wrtbwmon    # 实时流量监测
luci-app-webd    # Webd 是一款轻量级的 (self-hosted) 自建网盘
luci-app-xlnetacc    # 迅雷快鸟
luci-app-zerotier    # ZeroTier内网穿透
luci-theme-Light    # Light 主题
luci-theme-argon    # argon 主题
luci-theme-atmaterial    # atmaterial 主题
luci-theme-bootstrap    # bootstrap 主题
luci-theme-darkmatter    # 黑色 主题
luci-theme-infinityfreedom    # 透明效果 主题
luci-theme-material    # material 主题
luci-theme-netgear    # 网件 主题
luci-theme-neobird    # neobird 主题
luci-theme-opentomcat    # opentomcat 主题
luci-theme-rosy    # rosy 主题
luci-app-dockerman 和 luci-app-docker 只能二选一