diff --git a/.github/workflows/ARMv8-Package.yml b/.github/workflows/ARMv8-Package.yml
index 8f60120765..95b5e97a70 100644
--- a/.github/workflows/ARMv8-Package.yml
+++ b/.github/workflows/ARMv8-Package.yml
@@ -30,7 +30,7 @@ jobs:
env:
VERSION: MINI
- EXPLAIN: 这是 ARMv8 精简版,集成一些日常常用插件
+ EXPLAIN: 这是 ARMv8 精简版,只集成了一些常用插件
steps:
- name: Checkout
diff --git a/.github/workflows/ARMv8_Mini-OpenWrt.yml b/.github/workflows/ARMv8_Mini-OpenWrt.yml
index e84d2625ac..aad65aade0 100644
--- a/.github/workflows/ARMv8_Mini-OpenWrt.yml
+++ b/.github/workflows/ARMv8_Mini-OpenWrt.yml
@@ -12,21 +12,19 @@ on:
repository_dispatch:
workflow_dispatch:
schedule:
- - cron: '0 23 * * *'
+ - cron: '0 0 * * *'
env:
REPO_URL: https://github.com/coolsnowwolf/lede
REPO_BRANCH: master
- FEEDS_CONF: armv8/mini/feeds.conf.default
- CONFIG_FILE: armv8/mini/.config
- DIY_P1_SH: armv8/mini/diy-part1.sh
- DIY_P2_SH: armv8/mini/diy-part2.sh
+ CONFIG_FILE: configs/armv8_mini.config
+ DIY_SCRIPT: diy-mini.sh
UPLOAD_BIN_DIR: false
UPLOAD_FIRMWARE: false
UPLOAD_RELEASE: true
- TZ: Asia/Shanghai
FILE_NAME: ROOTFS_MINI
PRODUCT_NAME: ARMv8_MINI
+ TZ: Asia/Shanghai
jobs:
build:
@@ -36,29 +34,11 @@ jobs:
- name: Checkout
uses: actions/checkout@main
- - name: Check server configuration
- run: |
- echo "警告⚠"
- echo "若分配的服务器性能不足,务必及时取消,重新运行!"
- echo "已知编译成功CPU型号:8370C,8171M"
- echo "已知性能不足CPU型号:8272CL"
- echo -e "-------------- ------------CPU信息------------------------------------------\n"
- echo "CPU物理数量:$(cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l)"
- echo -e "CPU核心及版本信息:$(cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c) \n"
- echo "-------------------------------内存信息-------------------------------------------"
- echo "已安装内存详细信息:"
- sudo lshw -short -C memory | grep GiB
- echo -e "\n"
- echo "-----------------------------硬盘信息---------------------------------------------"
- echo -e "硬盘数量:$(ls /dev/sd* | grep -v [1-9] | wc -l) \n"
- echo "硬盘详情:"
- df -Th
-
- name: Initialization environment
env:
DEBIAN_FRONTEND: noninteractive
run: |
- docker rmi `docker images -q`
+ docker rmi $(docker images -q)
sudo rm -rf /etc/apt/sources.list.d/* /usr/share/dotnet /etc/mysql /etc/php /usr/local/lib/android /opt/ghc
sudo -E apt-get -y purge azure-cli ghc* zulu* hhvm llvm* firefox google* dotnet* powershell openjdk* adoptopenjdk* mysql* php* mongodb* dotnet* moby* snapd* || true
sudo -E apt-get -qq update
@@ -80,13 +60,6 @@ jobs:
useVersionInfo=$(git show -s --date=short --format="Author: %an
date: %cd
commit: %s
commit hash: %H")
echo "useVersionInfo=$useVersionInfo" >> $GITHUB_ENV
- - name: Load custom feeds
- run: |
- [ -e $FEEDS_CONF ] && mv $FEEDS_CONF openwrt/feeds.conf.default
- chmod +x $DIY_P1_SH
- cd openwrt
- $GITHUB_WORKSPACE/$DIY_P1_SH
-
- name: Update feeds
run: cd openwrt && ./scripts/feeds update -a
@@ -97,9 +70,9 @@ jobs:
run: |
[ -e files ] && mv files openwrt/files
[ -e $CONFIG_FILE ] && mv $CONFIG_FILE openwrt/.config
- chmod +x $DIY_P2_SH
+ chmod +x $DIY_SCRIPT
cd openwrt
- $GITHUB_WORKSPACE/$DIY_P2_SH
+ $GITHUB_WORKSPACE/$DIY_SCRIPT
- name: Download package
id: package
@@ -118,19 +91,19 @@ jobs:
make -j$(nproc) || make -j1 || make -j1 V=s
echo "::set-output name=status::success"
grep '^CONFIG_TARGET.*DEVICE.*=y' .config | sed -r 's/.*DEVICE_(.*)=y/\1/' > DEVICE_NAME
- [ -s DEVICE_NAME ] && echo "DEVICE_NAME=$(cat DEVICE_NAME)" >> $GITHUB_ENV
+ [ -s DEVICE_NAME ] && echo "DEVICE_NAME=_$(cat DEVICE_NAME)" >> $GITHUB_ENV
echo "DATE=$(date +"%Y-%m-%d %H:%M:%S")" >> $GITHUB_ENV
- echo "FILE_DATE=$(date +"%Y%m%d%H%M")" >> $GITHUB_ENV
+ echo "FILE_DATE=_$(date +"%Y%m%d%H%M")" >> $GITHUB_ENV
- name: Check space usage
if: (!cancelled())
- run: df -hT
+ run: df -Th
- name: Upload bin directory
uses: actions/upload-artifact@main
if: steps.compile.outputs.status == 'success' && env.UPLOAD_BIN_DIR == 'true'
with:
- name: OpenWrt_bin_${{ env.DEVICE_NAME }}_${{ env.FILE_DATE }}
+ name: OpenWrt_bin${{ env.DEVICE_NAME }}${{ env.FILE_DATE }}
path: openwrt/bin
- name: Organize files
@@ -140,6 +113,7 @@ jobs:
cp openwrt/.config build.config
mkdir -p Packages
mv -f openwrt/bin/packages/*/*/*.ipk Packages
+ mv -f openwrt/bin/targets/*/*/packages/*.ipk Packages
tar -zcvf Packages.tar.gz Packages
mv *.config *.tar.gz openwrt/bin/targets/*/*
cp -rf openwrt/bin/targets lean
@@ -152,7 +126,7 @@ jobs:
uses: actions/upload-artifact@main
if: steps.organize.outputs.status == 'success' && env.UPLOAD_FIRMWARE == 'true' && !cancelled()
with:
- name: OpenWrt_firmware_${{ env.DEVICE_NAME }}_${{ env.FILE_DATE }}
+ name: OpenWrt_firmware${{ env.DEVICE_NAME }}${{ env.FILE_DATE }}
path: ${{ env.FIRMWARE }}
- name: Upload firmware to release
@@ -194,7 +168,7 @@ jobs:
token: ${{ secrets.GITHUB_TOKEN }}
body: |
**This is OpenWrt firmware for Armvirt 64**
- * 这是 ARMv8 精简版,集成一些日常常用插件
+ * 这是 ARMv8 精简版,只集成了一些常用插件
默认 IP:192.168.1.1 默认密码:password
安装到 EMMC:系统 → 晶晨宝盒 → 安装 OpenWrt → 选择型号 → 安装
升级 OpenWrt:系统 → 晶晨宝盒 → 手动上传更新 或者 在线下载更新
diff --git a/.github/workflows/ARMv8_Plus-OpenWrt.yml b/.github/workflows/ARMv8_Plus-OpenWrt.yml
index d57bd3528d..9d9b7e47f4 100644
--- a/.github/workflows/ARMv8_Plus-OpenWrt.yml
+++ b/.github/workflows/ARMv8_Plus-OpenWrt.yml
@@ -12,21 +12,19 @@ on:
repository_dispatch:
workflow_dispatch:
schedule:
- - cron: '0 23 * * *'
+ - cron: '0 21 * * *'
env:
REPO_URL: https://github.com/coolsnowwolf/lede
REPO_BRANCH: master
- FEEDS_CONF: armv8/plus/feeds.conf.default
- CONFIG_FILE: armv8/plus/.config
- DIY_P1_SH: armv8/plus/diy-part1.sh
- DIY_P2_SH: armv8/plus/diy-part2.sh
+ CONFIG_FILE: configs/armv8_plus.config
+ DIY_SCRIPT: diy-script.sh
UPLOAD_BIN_DIR: false
UPLOAD_FIRMWARE: false
UPLOAD_RELEASE: true
- TZ: Asia/Shanghai
FILE_NAME: ROOTFS_PLUS
PRODUCT_NAME: ARMv8_PLUS
+ TZ: Asia/Shanghai
jobs:
build:
@@ -36,29 +34,11 @@ jobs:
- name: Checkout
uses: actions/checkout@main
- - name: Check server configuration
- run: |
- echo "警告⚠"
- echo "若分配的服务器性能不足,务必及时取消,重新运行!"
- echo "已知编译成功CPU型号:8370C,8171M"
- echo "已知性能不足CPU型号:8272CL"
- echo -e "-------------- ------------CPU信息------------------------------------------\n"
- echo "CPU物理数量:$(cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l)"
- echo -e "CPU核心及版本信息:$(cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c) \n"
- echo "-------------------------------内存信息-------------------------------------------"
- echo "已安装内存详细信息:"
- sudo lshw -short -C memory | grep GiB
- echo -e "\n"
- echo "-----------------------------硬盘信息---------------------------------------------"
- echo -e "硬盘数量:$(ls /dev/sd* | grep -v [1-9] | wc -l) \n"
- echo "硬盘详情:"
- df -Th
-
- name: Initialization environment
env:
DEBIAN_FRONTEND: noninteractive
run: |
- docker rmi `docker images -q`
+ docker rmi $(docker images -q)
sudo rm -rf /etc/apt/sources.list.d/* /usr/share/dotnet /etc/mysql /etc/php /usr/local/lib/android /opt/ghc
sudo -E apt-get -y purge azure-cli ghc* zulu* hhvm llvm* firefox google* dotnet* powershell openjdk* adoptopenjdk* mysql* php* mongodb* dotnet* moby* snapd* || true
sudo -E apt-get -qq update
@@ -80,13 +60,6 @@ jobs:
useVersionInfo=$(git show -s --date=short --format="Author: %an
date: %cd
commit: %s
commit hash: %H")
echo "useVersionInfo=$useVersionInfo" >> $GITHUB_ENV
- - name: Load custom feeds
- run: |
- [ -e $FEEDS_CONF ] && mv $FEEDS_CONF openwrt/feeds.conf.default
- chmod +x $DIY_P1_SH
- cd openwrt
- $GITHUB_WORKSPACE/$DIY_P1_SH
-
- name: Update feeds
run: cd openwrt && ./scripts/feeds update -a
@@ -97,9 +70,9 @@ jobs:
run: |
[ -e files ] && mv files openwrt/files
[ -e $CONFIG_FILE ] && mv $CONFIG_FILE openwrt/.config
- chmod +x $DIY_P2_SH
+ chmod +x $DIY_SCRIPT
cd openwrt
- $GITHUB_WORKSPACE/$DIY_P2_SH
+ $GITHUB_WORKSPACE/$DIY_SCRIPT
- name: Download package
id: package
@@ -118,19 +91,19 @@ jobs:
make -j$(nproc) || make -j1 || make -j1 V=s
echo "::set-output name=status::success"
grep '^CONFIG_TARGET.*DEVICE.*=y' .config | sed -r 's/.*DEVICE_(.*)=y/\1/' > DEVICE_NAME
- [ -s DEVICE_NAME ] && echo "DEVICE_NAME=$(cat DEVICE_NAME)" >> $GITHUB_ENV
+ [ -s DEVICE_NAME ] && echo "DEVICE_NAME=_$(cat DEVICE_NAME)" >> $GITHUB_ENV
echo "DATE=$(date +"%Y-%m-%d %H:%M:%S")" >> $GITHUB_ENV
- echo "FILE_DATE=$(date +"%Y%m%d%H%M")" >> $GITHUB_ENV
+ echo "FILE_DATE=_$(date +"%Y%m%d%H%M")" >> $GITHUB_ENV
- name: Check space usage
if: (!cancelled())
- run: df -hT
+ run: df -Th
- name: Upload bin directory
uses: actions/upload-artifact@main
if: steps.compile.outputs.status == 'success' && env.UPLOAD_BIN_DIR == 'true'
with:
- name: OpenWrt_bin_${{ env.DEVICE_NAME }}_${{ env.FILE_DATE }}
+ name: OpenWrt_bin${{ env.DEVICE_NAME }}${{ env.FILE_DATE }}
path: openwrt/bin
- name: Organize files
@@ -140,6 +113,7 @@ jobs:
cp openwrt/.config build.config
mkdir -p Packages
mv -f openwrt/bin/packages/*/*/*.ipk Packages
+ mv -f openwrt/bin/targets/*/*/packages/*.ipk Packages
tar -zcvf Packages.tar.gz Packages
mv *.config *.tar.gz openwrt/bin/targets/*/*
cp -rf openwrt/bin/targets lean
@@ -152,7 +126,7 @@ jobs:
uses: actions/upload-artifact@main
if: steps.organize.outputs.status == 'success' && env.UPLOAD_FIRMWARE == 'true' && !cancelled()
with:
- name: OpenWrt_firmware_${{ env.DEVICE_NAME }}_${{ env.FILE_DATE }}
+ name: OpenWrt_firmware${{ env.DEVICE_NAME }}${{ env.FILE_DATE }}
path: ${{ env.FIRMWARE }}
- name: Upload firmware to release
diff --git a/.github/workflows/Delete-Older-Artifacts.yml b/.github/workflows/Delete-Older-Artifacts.yml
index c7c8d562fc..b339b07f85 100644
--- a/.github/workflows/Delete-Older-Artifacts.yml
+++ b/.github/workflows/Delete-Older-Artifacts.yml
@@ -3,7 +3,7 @@ name: Delete Older Artifacts
on:
workflow_dispatch:
schedule:
- - cron: '0 0 * * *'
+ - cron: '0 2 * * *'
jobs:
Cleaning:
diff --git a/.github/workflows/NanoPi_R2S-OpenWrt.yml b/.github/workflows/RaspberryPi4-OpenWrt.yml
similarity index 68%
rename from .github/workflows/NanoPi_R2S-OpenWrt.yml
rename to .github/workflows/RaspberryPi4-OpenWrt.yml
index 43711fa78b..ed37736b00 100644
--- a/.github/workflows/NanoPi_R2S-OpenWrt.yml
+++ b/.github/workflows/RaspberryPi4-OpenWrt.yml
@@ -6,26 +6,25 @@
# https://github.com/P3TERX
#===============================================
-name: NanoPi_R2S OpenWrt
+name: RaspberryPi4 OpenWrt
on:
repository_dispatch:
workflow_dispatch:
schedule:
- - cron: '0 21 * * *'
+ - cron: '0 16 * * *'
env:
REPO_URL: https://github.com/coolsnowwolf/lede
REPO_BRANCH: master
- FEEDS_CONF: nanopi/feeds.conf.default
- CONFIG_FILE: nanopi/r2s.config
- DIY_P1_SH: nanopi/diy-part1.sh
- DIY_P2_SH: nanopi/diy-part2.sh
+ CONFIG_FILE: configs/rpi4.config
+ EXTRA_CONFIG: configs/extra.config
+ DIY_SCRIPT: diy-script.sh
UPLOAD_BIN_DIR: false
UPLOAD_FIRMWARE: false
UPLOAD_RELEASE: true
+ FILE_NAME: RaspberryPi4
TZ: Asia/Shanghai
- FILE_NAME: NanoPi_R2S
jobs:
build:
@@ -35,29 +34,11 @@ jobs:
- name: Checkout
uses: actions/checkout@main
- - name: Check server configuration
- run: |
- echo "警告⚠"
- echo "若分配的服务器性能不足,务必及时取消,重新运行!"
- echo "已知编译成功CPU型号:8370C,8171M"
- echo "已知性能不足CPU型号:8272CL"
- echo -e "-------------- ------------CPU信息------------------------------------------\n"
- echo "CPU物理数量:$(cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l)"
- echo -e "CPU核心及版本信息:$(cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c) \n"
- echo "-------------------------------内存信息-------------------------------------------"
- echo "已安装内存详细信息:"
- sudo lshw -short -C memory | grep GiB
- echo -e "\n"
- echo "-----------------------------硬盘信息---------------------------------------------"
- echo -e "硬盘数量:$(ls /dev/sd* | grep -v [1-9] | wc -l) \n"
- echo "硬盘详情:"
- df -Th
-
- name: Initialization environment
env:
DEBIAN_FRONTEND: noninteractive
run: |
- docker rmi `docker images -q`
+ docker rmi $(docker images -q)
sudo rm -rf /etc/apt/sources.list.d/* /usr/share/dotnet /etc/mysql /etc/php /usr/local/lib/android /opt/ghc
sudo -E apt-get -y purge azure-cli ghc* zulu* hhvm llvm* firefox google* dotnet* powershell openjdk* adoptopenjdk* mysql* php* mongodb* dotnet* moby* snapd* || true
sudo -E apt-get -qq update
@@ -79,13 +60,6 @@ jobs:
useVersionInfo=$(git show -s --date=short --format="Author: %an
date: %cd
commit: %s
commit hash: %H")
echo "useVersionInfo=$useVersionInfo" >> $GITHUB_ENV
- - name: Load custom feeds
- run: |
- [ -e $FEEDS_CONF ] && mv $FEEDS_CONF openwrt/feeds.conf.default
- chmod +x $DIY_P1_SH
- cd openwrt
- $GITHUB_WORKSPACE/$DIY_P1_SH
-
- name: Update feeds
run: cd openwrt && ./scripts/feeds update -a
@@ -96,9 +70,10 @@ jobs:
run: |
[ -e files ] && mv files openwrt/files
[ -e $CONFIG_FILE ] && mv $CONFIG_FILE openwrt/.config
- chmod +x $DIY_P2_SH
+ cat $EXTRA_CONFIG >> openwrt/.config
+ chmod +x $DIY_SCRIPT
cd openwrt
- $GITHUB_WORKSPACE/$DIY_P2_SH
+ $GITHUB_WORKSPACE/$DIY_SCRIPT
- name: Download package
id: package
@@ -117,19 +92,19 @@ jobs:
make -j$(nproc) || make -j1 || make -j1 V=s
echo "::set-output name=status::success"
grep '^CONFIG_TARGET.*DEVICE.*=y' .config | sed -r 's/.*DEVICE_(.*)=y/\1/' > DEVICE_NAME
- [ -s DEVICE_NAME ] && echo "DEVICE_NAME=$(cat DEVICE_NAME)" >> $GITHUB_ENV
+ [ -s DEVICE_NAME ] && echo "DEVICE_NAME=_$(cat DEVICE_NAME)" >> $GITHUB_ENV
echo "DATE=$(date +"%Y-%m-%d %H:%M:%S")" >> $GITHUB_ENV
- echo "FILE_DATE=$(date +"%Y%m%d%H%M")" >> $GITHUB_ENV
+ echo "FILE_DATE=_$(date +"%Y%m%d%H%M")" >> $GITHUB_ENV
- name: Check space usage
if: (!cancelled())
- run: df -hT
+ run: df -Th
- name: Upload bin directory
uses: actions/upload-artifact@main
if: steps.compile.outputs.status == 'success' && env.UPLOAD_BIN_DIR == 'true'
with:
- name: OpenWrt_bin_${{ env.DEVICE_NAME }}_${{ env.FILE_DATE }}
+ name: OpenWrt_bin${{ env.DEVICE_NAME }}${{ env.FILE_DATE }}
path: openwrt/bin
- name: Organize files
@@ -139,6 +114,7 @@ jobs:
cp openwrt/.config build.config
mkdir -p Packages
mv -f openwrt/bin/packages/*/*/*.ipk Packages
+ mv -f openwrt/bin/targets/*/*/packages/*.ipk Packages
tar -zcvf Packages.tar.gz Packages
mv *.config *.tar.gz openwrt/bin/targets/*/*
cd openwrt/bin/targets/*/*
@@ -150,7 +126,7 @@ jobs:
uses: actions/upload-artifact@main
if: steps.organize.outputs.status == 'success' && env.UPLOAD_FIRMWARE == 'true' && !cancelled()
with:
- name: OpenWrt_firmware_${{ env.DEVICE_NAME }}_${{ env.FILE_DATE }}
+ name: OpenWrt_firmware${{ env.DEVICE_NAME }}${{ env.FILE_DATE }}
path: ${{ env.FIRMWARE }}
- name: Upload firmware to release
@@ -163,8 +139,8 @@ jobs:
tag: ${{ env.FILE_NAME }}
token: ${{ secrets.GITHUB_TOKEN }}
body: |
- **This is OpenWrt firmware for NanoPi_R2S**
- * 这是 NanoPi_R2S 使用的 OpenWrt 固件
+ **This is OpenWrt firmware for RaspberryPi4**
+ * 这是 RaspberryPi4 使用的 OpenWrt 固件
默认 IP:192.168.1.1 默认密码:password
当前使用版本:【编译前的最后一次[➦主源码](https://github.com/coolsnowwolf/lede)更新记录】
${{ env.useVersionInfo }}
diff --git a/.github/workflows/NanoPi_R4S-OpenWrt.yml b/.github/workflows/Rockchip-OpenWrt.yml
similarity index 67%
rename from .github/workflows/NanoPi_R4S-OpenWrt.yml
rename to .github/workflows/Rockchip-OpenWrt.yml
index c990ec15a9..05b092ce42 100644
--- a/.github/workflows/NanoPi_R4S-OpenWrt.yml
+++ b/.github/workflows/Rockchip-OpenWrt.yml
@@ -6,26 +6,25 @@
# https://github.com/P3TERX
#===============================================
-name: NanoPi_R4S OpenWrt
+name: Rockchip OpenWrt
on:
repository_dispatch:
workflow_dispatch:
schedule:
- - cron: '0 21 * * *'
+ - cron: '0 17 * * *'
env:
REPO_URL: https://github.com/coolsnowwolf/lede
REPO_BRANCH: master
- FEEDS_CONF: nanopi/feeds.conf.default
- CONFIG_FILE: nanopi/r4s.config
- DIY_P1_SH: nanopi/diy-part1.sh
- DIY_P2_SH: nanopi/diy-part2.sh
+ CONFIG_FILE: configs/rockchip.config
+ EXTRA_CONFIG: configs/extra.config
+ DIY_SCRIPT: diy-script.sh
UPLOAD_BIN_DIR: false
UPLOAD_FIRMWARE: false
UPLOAD_RELEASE: true
+ FILE_NAME: Rockchip
TZ: Asia/Shanghai
- FILE_NAME: NanoPi_R4S
jobs:
build:
@@ -35,29 +34,11 @@ jobs:
- name: Checkout
uses: actions/checkout@main
- - name: Check server configuration
- run: |
- echo "警告⚠"
- echo "若分配的服务器性能不足,务必及时取消,重新运行!"
- echo "已知编译成功CPU型号:8370C,8171M"
- echo "已知性能不足CPU型号:8272CL"
- echo -e "-------------- ------------CPU信息------------------------------------------\n"
- echo "CPU物理数量:$(cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l)"
- echo -e "CPU核心及版本信息:$(cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c) \n"
- echo "-------------------------------内存信息-------------------------------------------"
- echo "已安装内存详细信息:"
- sudo lshw -short -C memory | grep GiB
- echo -e "\n"
- echo "-----------------------------硬盘信息---------------------------------------------"
- echo -e "硬盘数量:$(ls /dev/sd* | grep -v [1-9] | wc -l) \n"
- echo "硬盘详情:"
- df -Th
-
- name: Initialization environment
env:
DEBIAN_FRONTEND: noninteractive
run: |
- docker rmi `docker images -q`
+ docker rmi $(docker images -q)
sudo rm -rf /etc/apt/sources.list.d/* /usr/share/dotnet /etc/mysql /etc/php /usr/local/lib/android /opt/ghc
sudo -E apt-get -y purge azure-cli ghc* zulu* hhvm llvm* firefox google* dotnet* powershell openjdk* adoptopenjdk* mysql* php* mongodb* dotnet* moby* snapd* || true
sudo -E apt-get -qq update
@@ -79,13 +60,6 @@ jobs:
useVersionInfo=$(git show -s --date=short --format="Author: %an
date: %cd
commit: %s
commit hash: %H")
echo "useVersionInfo=$useVersionInfo" >> $GITHUB_ENV
- - name: Load custom feeds
- run: |
- [ -e $FEEDS_CONF ] && mv $FEEDS_CONF openwrt/feeds.conf.default
- chmod +x $DIY_P1_SH
- cd openwrt
- $GITHUB_WORKSPACE/$DIY_P1_SH
-
- name: Update feeds
run: cd openwrt && ./scripts/feeds update -a
@@ -96,9 +70,10 @@ jobs:
run: |
[ -e files ] && mv files openwrt/files
[ -e $CONFIG_FILE ] && mv $CONFIG_FILE openwrt/.config
- chmod +x $DIY_P2_SH
+ cat $EXTRA_CONFIG >> openwrt/.config
+ chmod +x $DIY_SCRIPT
cd openwrt
- $GITHUB_WORKSPACE/$DIY_P2_SH
+ $GITHUB_WORKSPACE/$DIY_SCRIPT
- name: Download package
id: package
@@ -116,20 +91,19 @@ jobs:
echo -e "$(nproc) thread compile"
make -j$(nproc) || make -j1 || make -j1 V=s
echo "::set-output name=status::success"
- grep '^CONFIG_TARGET.*DEVICE.*=y' .config | sed -r 's/.*DEVICE_(.*)=y/\1/' > DEVICE_NAME
- [ -s DEVICE_NAME ] && echo "DEVICE_NAME=$(cat DEVICE_NAME)" >> $GITHUB_ENV
+ echo "DEVICE_NAME=_rockchip-armv8" >> $GITHUB_ENV
echo "DATE=$(date +"%Y-%m-%d %H:%M:%S")" >> $GITHUB_ENV
- echo "FILE_DATE=$(date +"%Y%m%d%H%M")" >> $GITHUB_ENV
+ echo "FILE_DATE=_$(date +"%Y%m%d%H%M")" >> $GITHUB_ENV
- name: Check space usage
if: (!cancelled())
- run: df -hT
+ run: df -Th
- name: Upload bin directory
uses: actions/upload-artifact@main
if: steps.compile.outputs.status == 'success' && env.UPLOAD_BIN_DIR == 'true'
with:
- name: OpenWrt_bin_${{ env.DEVICE_NAME }}_${{ env.FILE_DATE }}
+ name: OpenWrt_bin${{ env.DEVICE_NAME }}${{ env.FILE_DATE }}
path: openwrt/bin
- name: Organize files
@@ -139,6 +113,7 @@ jobs:
cp openwrt/.config build.config
mkdir -p Packages
mv -f openwrt/bin/packages/*/*/*.ipk Packages
+ mv -f openwrt/bin/targets/*/*/packages/*.ipk Packages
tar -zcvf Packages.tar.gz Packages
mv *.config *.tar.gz openwrt/bin/targets/*/*
cd openwrt/bin/targets/*/*
@@ -150,7 +125,7 @@ jobs:
uses: actions/upload-artifact@main
if: steps.organize.outputs.status == 'success' && env.UPLOAD_FIRMWARE == 'true' && !cancelled()
with:
- name: OpenWrt_firmware_${{ env.DEVICE_NAME }}_${{ env.FILE_DATE }}
+ name: OpenWrt_firmware${{ env.DEVICE_NAME }}${{ env.FILE_DATE }}
path: ${{ env.FIRMWARE }}
- name: Upload firmware to release
@@ -163,8 +138,8 @@ jobs:
tag: ${{ env.FILE_NAME }}
token: ${{ secrets.GITHUB_TOKEN }}
body: |
- **This is OpenWrt firmware for NanoPi_R4S**
- * 这是 NanoPi_R4S 使用的 OpenWrt 固件
+ **This is OpenWrt firmware for Rockchip**
+ * 这是 Rockchip 平台使用的 OpenWrt 固件
默认 IP:192.168.1.1 默认密码:password
当前使用版本:【编译前的最后一次[➦主源码](https://github.com/coolsnowwolf/lede)更新记录】
${{ env.useVersionInfo }}
diff --git a/.github/workflows/X86_64-OpenWrt.yml b/.github/workflows/X86_64-OpenWrt.yml
index c40efd44e5..46150dca1e 100644
--- a/.github/workflows/X86_64-OpenWrt.yml
+++ b/.github/workflows/X86_64-OpenWrt.yml
@@ -12,20 +12,18 @@ on:
repository_dispatch:
workflow_dispatch:
schedule:
- - cron: '0 22 * * *'
+ - cron: '0 19 * * *'
env:
REPO_URL: https://github.com/coolsnowwolf/lede
REPO_BRANCH: master
- FEEDS_CONF: x86/feeds.conf.default
- CONFIG_FILE: x86/.config
- DIY_P1_SH: x86/diy-part1.sh
- DIY_P2_SH: x86/diy-part2.sh
+ CONFIG_FILE: configs/x86_64.config
+ DIY_SCRIPT: diy-script.sh
UPLOAD_BIN_DIR: false
UPLOAD_FIRMWARE: false
UPLOAD_RELEASE: true
- TZ: Asia/Shanghai
FILE_NAME: X86_64
+ TZ: Asia/Shanghai
jobs:
build:
@@ -34,30 +32,12 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@main
-
- - name: Check server configuration
- run: |
- echo "警告⚠"
- echo "若分配的服务器性能不足,务必及时取消,重新运行!"
- echo "已知编译成功CPU型号:8370C,8171M"
- echo "已知性能不足CPU型号:8272CL"
- echo -e "-------------- ------------CPU信息------------------------------------------\n"
- echo "CPU物理数量:$(cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l)"
- echo -e "CPU核心及版本信息:$(cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c) \n"
- echo "-------------------------------内存信息-------------------------------------------"
- echo "已安装内存详细信息:"
- sudo lshw -short -C memory | grep GiB
- echo -e "\n"
- echo "-----------------------------硬盘信息---------------------------------------------"
- echo -e "硬盘数量:$(ls /dev/sd* | grep -v [1-9] | wc -l) \n"
- echo "硬盘详情:"
- df -Th
- name: Initialization environment
env:
DEBIAN_FRONTEND: noninteractive
run: |
- docker rmi `docker images -q`
+ docker rmi $(docker images -q)
sudo rm -rf /etc/apt/sources.list.d/* /usr/share/dotnet /etc/mysql /etc/php /usr/local/lib/android /opt/ghc
sudo -E apt-get -y purge azure-cli ghc* zulu* hhvm llvm* firefox google* dotnet* powershell openjdk* adoptopenjdk* mysql* php* mongodb* dotnet* moby* snapd* || true
sudo -E apt-get -qq update
@@ -79,13 +59,6 @@ jobs:
useVersionInfo=$(git show -s --date=short --format="Author: %an
date: %cd
commit: %s
commit hash: %H")
echo "useVersionInfo=$useVersionInfo" >> $GITHUB_ENV
- - name: Load custom feeds
- run: |
- [ -e $FEEDS_CONF ] && mv $FEEDS_CONF openwrt/feeds.conf.default
- chmod +x $DIY_P1_SH
- cd openwrt
- $GITHUB_WORKSPACE/$DIY_P1_SH
-
- name: Update feeds
run: cd openwrt && ./scripts/feeds update -a
@@ -96,9 +69,9 @@ jobs:
run: |
[ -e files ] && mv files openwrt/files
[ -e $CONFIG_FILE ] && mv $CONFIG_FILE openwrt/.config
- chmod +x $DIY_P2_SH
+ chmod +x $DIY_SCRIPT
cd openwrt
- $GITHUB_WORKSPACE/$DIY_P2_SH
+ $GITHUB_WORKSPACE/$DIY_SCRIPT
- name: Download package
id: package
@@ -117,19 +90,19 @@ jobs:
make -j$(nproc) || make -j1 || make -j1 V=s
echo "::set-output name=status::success"
grep '^CONFIG_TARGET.*DEVICE.*=y' .config | sed -r 's/.*DEVICE_(.*)=y/\1/' > DEVICE_NAME
- [ -s DEVICE_NAME ] && echo "DEVICE_NAME=$(cat DEVICE_NAME)" >> $GITHUB_ENV
+ [ -s DEVICE_NAME ] && echo "DEVICE_NAME=_$(cat DEVICE_NAME)" >> $GITHUB_ENV
echo "DATE=$(date +"%Y-%m-%d %H:%M:%S")" >> $GITHUB_ENV
- echo "FILE_DATE=$(date +"%Y%m%d%H%M")" >> $GITHUB_ENV
+ echo "FILE_DATE=_$(date +"%Y%m%d%H%M")" >> $GITHUB_ENV
- name: Check space usage
if: (!cancelled())
- run: df -hT
+ run: df -Th
- name: Upload bin directory
uses: actions/upload-artifact@main
if: steps.compile.outputs.status == 'success' && env.UPLOAD_BIN_DIR == 'true'
with:
- name: OpenWrt_bin_${{ env.DEVICE_NAME }}_${{ env.FILE_DATE }}
+ name: OpenWrt_bin${{ env.DEVICE_NAME }}${{ env.FILE_DATE }}
path: openwrt/bin
- name: Organize files
@@ -139,6 +112,7 @@ jobs:
cp openwrt/.config build.config
mkdir -p Packages
mv -f openwrt/bin/packages/*/*/*.ipk Packages
+ mv -f openwrt/bin/targets/*/*/packages/*.ipk Packages
tar -zcvf Packages.tar.gz Packages
mv *.config *.tar.gz openwrt/bin/targets/*/*
cd openwrt/bin/targets/*/*
@@ -150,7 +124,7 @@ jobs:
uses: actions/upload-artifact@main
if: steps.organize.outputs.status == 'success' && env.UPLOAD_FIRMWARE == 'true' && !cancelled()
with:
- name: OpenWrt_firmware_${{ env.DEVICE_NAME }}_${{ env.FILE_DATE }}
+ name: OpenWrt_firmware${{ env.DEVICE_NAME }}${{ env.FILE_DATE }}
path: ${{ env.FIRMWARE }}
- name: Upload firmware to release
diff --git a/README.md b/README.md
index 1eb729bbd3..ef93ed8947 100644
--- a/README.md
+++ b/README.md
@@ -1,40 +1,42 @@
-
+
OpenWrt — 多设备固件云编译
-
+
-[![](https://img.shields.io/badge/-目录:-696969.svg)](#readme) [![](https://img.shields.io/badge/-项目说明-FFFFFF.svg)](#项目说明-) [![](https://img.shields.io/badge/-固件下载-FFFFFF.svg)](#固件下载-) [![](https://img.shields.io/badge/-近期更新-FFFFFF.svg)](#近期更新-) [![](https://img.shields.io/badge/-插件预览-FFFFFF.svg)](#插件预览-) [![](https://img.shields.io/badge/-编译教程-FFFFFF.svg)](#编译教程-) [![](https://img.shields.io/badge/-特别提示-FFFFFF.svg)](#特别提示-) [![](https://img.shields.io/badge/-捐助项目-FFFFFF.svg)](#捐助项目-) [![](https://img.shields.io/badge/-鸣谢-FFFFFF.svg)](#鸣谢-)
+[![](https://img.shields.io/badge/-目录:-696969.svg)](#readme) [![](https://img.shields.io/badge/-项目说明-FFFFFF.svg)](#项目说明-) [![](https://img.shields.io/badge/-固件下载-FFFFFF.svg)](#固件下载-) [![](https://img.shields.io/badge/-近期更新-FFFFFF.svg)](#近期更新-) [![](https://img.shields.io/badge/-插件预览-FFFFFF.svg)](#插件预览-) [![](https://img.shields.io/badge/-定制固件-FFFFFF.svg)](#定制固件-) [![](https://img.shields.io/badge/-特别提示-FFFFFF.svg)](#特别提示-) [![](https://img.shields.io/badge/-捐助项目-FFFFFF.svg)](#捐助项目-) [![](https://img.shields.io/badge/-鸣谢-FFFFFF.svg)](#鸣谢-)
## 项目说明 [![](https://img.shields.io/badge/-项目基本介绍-FFFFFF.svg)](#项目说明-)
-- 固件来源:[![Lean](https://img.shields.io/badge/Lede-Lean-red.svg?style=flat&logo=appveyor)](https://github.com/coolsnowwolf/lede) [![P3TERX](https://img.shields.io/badge/OpenWrt-P3TERX-blueviolet.svg?style=flat&logo=appveyor)](https://github.com/P3TERX/Actions-OpenWrt) [![Sirpdboy](https://img.shields.io/badge/Package-Sirpdboy-orange.svg?style=flat&logo=appveyor)](https://github.com/sirpdboy/sirpdboy-package) [![Haiibo](https://img.shields.io/badge/Build-Haiibo-success.svg?style=flat&logo=appveyor)](https://github.com/haiibo/OpenWrt)
-- 项目使用 Github Actions 拉取 [Lean](https://github.com/coolsnowwolf/lede) 的 `Openwrt` 源码仓库进行云编译
-- 设置定时自动编译(北京时间每天早上6点左右自动触发编译)
-- 固件默认 IP 地址:`192.168.1.1` 默认密码:`password`
-- 适配的软路由设备有:`X86_64`、`NanoPi_R2S`、`NanoPi_R4S`、`R68S`
-- 适配的 ARM 盒子设备有:`微加云`、`贝壳云`、`我家云`、`斐讯N1`、`章鱼星球`、`S905x3`(包括常见的 `HK1`、`H96`、`X96` 等盒子)、`S922x`(目前支持 `GT-King`、`GT-King Pro`、`Odroid N2` 三款盒子)
-- ARM 盒子固件分为 [Mini版](https://github.com/haiibo/OpenWrt/releases/tag/ARMv8_MINI) 和 [Plus版](https://github.com/haiibo/OpenWrt/releases/tag/ARMv8_PLUS),Mini 精简版适合科学上网为主要需求的用户,Plus 多功能版插件多适合喜欢折腾的用户
-- 仓库编译的固件插件均为最新版本,最新版意味着可能有 BUG,如果之前使用稳定,则无需追新
-- 如固件使用有什么问题,可以直接在 [Issues](https://github.com/haiibo/OpenWrt/issues) 内留言,我会根据大家的问题进行修改
-- 喜欢的可以给个 Star,感谢各位!想要自己编译固件的请看下方编译教程!
+- 固件来源:[![Lean](https://img.shields.io/badge/Lede-Lean-ff69b4.svg?style=flat&logo=appveyor)](https://github.com/coolsnowwolf/lede) [![P3TERX](https://img.shields.io/badge/OpenWrt-P3TERX-blueviolet.svg?style=flat&logo=appveyor)](https://github.com/P3TERX/Actions-OpenWrt) [![Flippy](https://img.shields.io/badge/Package-Flippy-orange.svg?style=flat&logo=appveyor)](https://github.com/unifreq/openwrt_packit) [![Haiibo](https://img.shields.io/badge/Build-Haiibo-32C955.svg?style=flat&logo=appveyor)](https://github.com/haiibo/OpenWrt)
+- 项目使用 Github Actions 拉取 [Lean](https://github.com/coolsnowwolf/lede) 的 Openwrt 源码仓库进行云编译
+- 每天定时自动编译,更新内核版本和插件,确保获得最新体验
+- 固件默认管理地址:`192.168.1.1` 默认用户:`root` 默认密码:`password`
+- 适配的软路由设备:`X86_64`、`NanoPi R2C`、`NanoPi R2S`、`NanoPi R4S`、`NanoPi R5S`、`树莓派 4B`、`R68S`
+- 适配的 ARM 盒子设备:`微加云`、`贝壳云`、`我家云`、`斐讯N1`、`章鱼星球`、`S905x2`、`S905x3`(包括常见的 HK1、H96、X96 等盒子)、`S922x`(目前支持 GT-King、GT-King Pro、Odroid N2 三款盒子)
+- ARM 盒子固件分为 [Mini版](https://github.com/haiibo/OpenWrt/releases/tag/ARMv8_MINI) 和 [Plus版](https://github.com/haiibo/OpenWrt/releases/tag/ARMv8_PLUS),Mini 精简版以科学上网为主,Plus 多功能版插件多适合折腾
+- 固件集成的所有 ipk 插件全部打包在 Packages 文件中,可以在 [Releases](https://github.com/haiibo/OpenWrt/releases) 内进行下载
+- 仓库编译的固件插件均为最新版本,最新版可能有 BUG,如果之前使用稳定,则无需追新
+- 喜欢的可以给个 Star,感谢各位!想要自己编译固件的请看下方定制固件!
## 固件下载 [![](https://img.shields.io/badge/-编译状态及下载链接-FFFFFF.svg)](#固件下载-)
点击下表中 [![](https://img.shields.io/badge/下载-链接-blueviolet.svg?style=flat&logo=hack-the-box)](https://github.com/haiibo/OpenWrt/releases) 即可跳转到该设备固件下载页面
-| 序号 | 平台+设备名称 | 固件编译状态 | 插件配置 | 固件下载 |
-| :-------------: | :-------------: | :-------------: | :-------------: | :-------------: |
-| 1 | [![](https://img.shields.io/badge/OpenWrt-X86_64位-green.svg?logo=openwrt)](https://github.com/haiibo/OpenWrt/blob/main/.github/workflows/X86_64-OpenWrt.yml) | [![](https://github.com/haiibo/OpenWrt/actions/workflows/X86_64-OpenWrt.yml/badge.svg)](https://github.com/haiibo/OpenWrt/actions/workflows/X86_64-OpenWrt.yml) | [![](https://img.shields.io/badge/编译-配置-orange.svg?logo=apache-spark)](https://github.com/haiibo/OpenWrt/blob/main/x86/.config) | [![](https://img.shields.io/badge/下载-链接-blueviolet.svg?logo=hack-the-box)](https://github.com/haiibo/OpenWrt/releases/tag/X86_64) |
-| 2 | [![](https://img.shields.io/badge/OpenWrt-ARMv8_Mini-green.svg?logo=openwrt)](https://github.com/haiibo/OpenWrt/blob/main/.github/workflows/ARMv8_Mini-OpenWrt.yml) | [![](https://github.com/haiibo/OpenWrt/actions/workflows/ARMv8_Mini-OpenWrt.yml/badge.svg)](https://github.com/haiibo/OpenWrt/actions/workflows/ARMv8_Mini-OpenWrt.yml) | [![](https://img.shields.io/badge/编译-配置-orange.svg?logo=apache-spark)](https://github.com/haiibo/OpenWrt/blob/main/armv8/mini/.config) | [![](https://img.shields.io/badge/下载-链接-blueviolet.svg?logo=hack-the-box)](https://github.com/haiibo/OpenWrt/releases/tag/ARMv8_MINI) |
-| 3 | [![](https://img.shields.io/badge/OpenWrt-ARMv8_Plus-green.svg?logo=openwrt)](https://github.com/haiibo/OpenWrt/blob/main/.github/workflows/ARMv8_Plus-OpenWrt.yml) | [![](https://github.com/haiibo/OpenWrt/actions/workflows/ARMv8_Plus-OpenWrt.yml/badge.svg)](https://github.com/haiibo/OpenWrt/actions/workflows/ARMv8_Plus-OpenWrt.yml) | [![](https://img.shields.io/badge/编译-配置-orange.svg?logo=apache-spark)](https://github.com/haiibo/OpenWrt/blob/main/armv8/plus/.config) | [![](https://img.shields.io/badge/下载-链接-blueviolet.svg?logo=hack-the-box)](https://github.com/haiibo/OpenWrt/releases/tag/ARMv8_PLUS) |
-| 4 | [![](https://img.shields.io/badge/OpenWrt-NanoPi_R2S-green.svg?logo=openwrt)](https://github.com/haiibo/OpenWrt/blob/main/.github/workflows/NanoPi_R2S-OpenWrt.yml) | [![](https://github.com/haiibo/OpenWrt/actions/workflows/NanoPi_R2S-OpenWrt.yml/badge.svg)](https://github.com/haiibo/OpenWrt/actions/workflows/NanoPi_R2S-OpenWrt.yml) | [![](https://img.shields.io/badge/编译-配置-orange.svg?logo=apache-spark)](https://github.com/haiibo/OpenWrt/blob/main/nanopi/r2s.config) | [![](https://img.shields.io/badge/下载-链接-blueviolet.svg?logo=hack-the-box)](https://github.com/haiibo/OpenWrt/releases/tag/NanoPi_R2S) |
-| 5 | [![](https://img.shields.io/badge/OpenWrt-NanoPi_R4S-green.svg?logo=openwrt)](https://github.com/haiibo/OpenWrt/blob/main/.github/workflows/NanoPi_R4S-OpenWrt.yml) | [![](https://github.com/haiibo/OpenWrt/actions/workflows/NanoPi_R4S-OpenWrt.yml/badge.svg)](https://github.com/haiibo/OpenWrt/actions/workflows/NanoPi_R4S-OpenWrt.yml) | [![](https://img.shields.io/badge/编译-配置-orange.svg?logo=apache-spark)](https://github.com/haiibo/OpenWrt/blob/main/nanopi/r4s.config) | [![](https://img.shields.io/badge/下载-链接-blueviolet.svg?logo=hack-the-box)](https://github.com/haiibo/OpenWrt/releases/tag/NanoPi_R4S) |
-
-**提示:**[![](https://img.shields.io/badge/设备-passing-32CD32.svg?logo=github)](https://github.com/haiibo/OpenWrt/actions) 标志为正常,[![](https://img.shields.io/badge/设备-failing-DC143C.svg?logo=github)](https://github.com/haiibo/OpenWrt/actions) 不代表所有编译均失败,请点击 [![](https://img.shields.io/badge/设备-状态-32CD32.svg?logo=github)](https://github.com/haiibo/OpenWrt/actions) 到 Actions 进一步查看
+| 平台+设备名称 | 固件编译状态 | 配置文件 | 固件下载 |
+| :-------------: | :-------------: | :-------------: | :-------------: |
+| [![](https://img.shields.io/badge/OpenWrt-X86_64位-32C955.svg?logo=openwrt)](https://github.com/haiibo/OpenWrt/blob/main/.github/workflows/X86_64-OpenWrt.yml) | [![](https://github.com/haiibo/OpenWrt/actions/workflows/X86_64-OpenWrt.yml/badge.svg)](https://github.com/haiibo/OpenWrt/actions/workflows/X86_64-OpenWrt.yml) | [![](https://img.shields.io/badge/编译-配置-orange.svg?logo=apache-spark)](https://github.com/haiibo/OpenWrt/blob/main/configs/x86_64.config) | [![](https://img.shields.io/badge/下载-链接-blueviolet.svg?logo=hack-the-box)](https://github.com/haiibo/OpenWrt/releases/tag/X86_64) |
+| [![](https://img.shields.io/badge/OpenWrt-ARMv8_Mini-32C955.svg?logo=openwrt)](https://github.com/haiibo/OpenWrt/blob/main/.github/workflows/ARMv8_Mini-OpenWrt.yml) | [![](https://github.com/haiibo/OpenWrt/actions/workflows/ARMv8_Mini-OpenWrt.yml/badge.svg)](https://github.com/haiibo/OpenWrt/actions/workflows/ARMv8_Mini-OpenWrt.yml) | [![](https://img.shields.io/badge/编译-配置-orange.svg?logo=apache-spark)](https://github.com/haiibo/OpenWrt/blob/main/configs/armv8_mini.config) | [![](https://img.shields.io/badge/下载-链接-blueviolet.svg?logo=hack-the-box)](https://github.com/haiibo/OpenWrt/releases/tag/ARMv8_MINI) |
+| [![](https://img.shields.io/badge/OpenWrt-ARMv8_Plus-32C955.svg?logo=openwrt)](https://github.com/haiibo/OpenWrt/blob/main/.github/workflows/ARMv8_Plus-OpenWrt.yml) | [![](https://github.com/haiibo/OpenWrt/actions/workflows/ARMv8_Plus-OpenWrt.yml/badge.svg)](https://github.com/haiibo/OpenWrt/actions/workflows/ARMv8_Plus-OpenWrt.yml) | [![](https://img.shields.io/badge/编译-配置-orange.svg?logo=apache-spark)](https://github.com/haiibo/OpenWrt/blob/main/configs/armv8_plus.config) | [![](https://img.shields.io/badge/下载-链接-blueviolet.svg?logo=hack-the-box)](https://github.com/haiibo/OpenWrt/releases/tag/ARMv8_PLUS) |
+| [![](https://img.shields.io/badge/OpenWrt-NanoPi_R2C-32C955.svg?logo=openwrt)](https://github.com/haiibo/OpenWrt/blob/main/.github/workflows/Rockchip-OpenWrt.yml) | [![](https://github.com/haiibo/OpenWrt/actions/workflows/Rockchip-OpenWrt.yml/badge.svg)](https://github.com/haiibo/OpenWrt/actions/workflows/Rockchip-OpenWrt.yml) | [![](https://img.shields.io/badge/编译-配置-orange.svg?logo=apache-spark)](https://github.com/haiibo/OpenWrt/blob/main/configs/rockchip.config) | [![](https://img.shields.io/badge/下载-链接-blueviolet.svg?logo=hack-the-box)](https://github.com/haiibo/OpenWrt/releases/tag/Rockchip) |
+| [![](https://img.shields.io/badge/OpenWrt-NanoPi_R2S-32C955.svg?logo=openwrt)](https://github.com/haiibo/OpenWrt/blob/main/.github/workflows/Rockchip-OpenWrt.yml) | [![](https://github.com/haiibo/OpenWrt/actions/workflows/Rockchip-OpenWrt.yml/badge.svg)](https://github.com/haiibo/OpenWrt/actions/workflows/Rockchip-OpenWrt.yml) | [![](https://img.shields.io/badge/编译-配置-orange.svg?logo=apache-spark)](https://github.com/haiibo/OpenWrt/blob/main/configs/rockchip.config) | [![](https://img.shields.io/badge/下载-链接-blueviolet.svg?logo=hack-the-box)](https://github.com/haiibo/OpenWrt/releases/tag/Rockchip) |
+| [![](https://img.shields.io/badge/OpenWrt-NanoPi_R4S-32C955.svg?logo=openwrt)](https://github.com/haiibo/OpenWrt/blob/main/.github/workflows/Rockchip-OpenWrt.yml) | [![](https://github.com/haiibo/OpenWrt/actions/workflows/Rockchip-OpenWrt.yml/badge.svg)](https://github.com/haiibo/OpenWrt/actions/workflows/Rockchip-OpenWrt.yml) | [![](https://img.shields.io/badge/编译-配置-orange.svg?logo=apache-spark)](https://github.com/haiibo/OpenWrt/blob/main/configs/rockchip.config) | [![](https://img.shields.io/badge/下载-链接-blueviolet.svg?logo=hack-the-box)](https://github.com/haiibo/OpenWrt/releases/tag/Rockchip) |
+| [![](https://img.shields.io/badge/OpenWrt-NanoPi_R5S-32C955.svg?logo=openwrt)](https://github.com/haiibo/OpenWrt/blob/main/.github/workflows/Rockchip-OpenWrt.yml) | [![](https://github.com/haiibo/OpenWrt/actions/workflows/Rockchip-OpenWrt.yml/badge.svg)](https://github.com/haiibo/OpenWrt/actions/workflows/Rockchip-OpenWrt.yml) | [![](https://img.shields.io/badge/编译-配置-orange.svg?logo=apache-spark)](https://github.com/haiibo/OpenWrt/blob/main/configs/rockchip.config) | [![](https://img.shields.io/badge/下载-链接-blueviolet.svg?logo=hack-the-box)](https://github.com/haiibo/OpenWrt/releases/tag/Rockchip) |
+| [![](https://img.shields.io/badge/OpenWrt-香橙派_R1_Plus-32C955.svg?logo=openwrt)](https://github.com/haiibo/OpenWrt/blob/main/.github/workflows/Rockchip-OpenWrt.yml) | [![](https://github.com/haiibo/OpenWrt/actions/workflows/Rockchip-OpenWrt.yml/badge.svg)](https://github.com/haiibo/OpenWrt/actions/workflows/Rockchip-OpenWrt.yml) | [![](https://img.shields.io/badge/编译-配置-orange.svg?logo=apache-spark)](https://github.com/haiibo/OpenWrt/blob/main/configs/rockchip.config) | [![](https://img.shields.io/badge/下载-链接-blueviolet.svg?logo=hack-the-box)](https://github.com/haiibo/OpenWrt/releases/tag/Rockchip) |
+| [![](https://img.shields.io/badge/OpenWrt-树莓派_4B-32C955.svg?logo=openwrt)](https://github.com/haiibo/OpenWrt/blob/main/.github/workflows/RaspberryPi4-OpenWrt.yml) | [![](https://github.com/haiibo/OpenWrt/actions/workflows/RaspberryPi4-OpenWrt.yml/badge.svg)](https://github.com/haiibo/OpenWrt/actions/workflows/RaspberryPi4-OpenWrt.yml) | [![](https://img.shields.io/badge/编译-配置-orange.svg?logo=apache-spark)](https://github.com/haiibo/OpenWrt/blob/main/configs/rpi4.config) | [![](https://img.shields.io/badge/下载-链接-blueviolet.svg?logo=hack-the-box)](https://github.com/haiibo/OpenWrt/releases/tag/RaspberryPi4) |
## 近期更新 [![](https://img.shields.io/badge/-近期固件更新-FFFFFF.svg)](#近期更新-)
@@ -45,13 +47,13 @@
ARM 盒子 Mini 精简版本插件预览
-
+
ARM 盒子 Plus 多功能版插件预览
-
+
@@ -187,25 +189,21 @@
-## 编译教程 [![](https://img.shields.io/badge/-项目基本编译教程-FFFFFF.svg)](#编译教程-)
-1. 点击右上角 `Fork`,Fork 本项目到你自己的仓库
-
-2. 创建个人访问令牌,如果已创建请跳过第三步(固件发布会调用,否则无法发布)
+## 定制固件 [![](https://img.shields.io/badge/-项目基本编译教程-FFFFFF.svg)](#定制固件-)
+1. 首先登录 Gihub 账号,Fork 此项目到你自己的仓库
-3. 点击右上角自己头像 → `Settings` → `Developer settings` → `Personal access tokens` → `Generate new token` Note 名字随便写一个,勾选 `repo` 和 `workflow` 点击最下方绿色按钮 `Generate token` 完成创建
+2. 修改 configs 目录对应文件添加或删除插件,或者复制自备的 xx.config 文件内容到配置文件
-4. 编辑对应文件夹下 `.config` 文件,`luci-app-xxx` 为插件名,结尾 `=y` 为选择,`is not set` 为不选择
+3. 插件对应名称及功能请参考恩山网友帖子:[Applications 添加插件应用说明](https://www.right.com.cn/forum/thread-3682029-1-1.html)
-5. 插件对应名称及功能请参考恩山网友帖子:[OpenWrt 编译 LuCI -> Applications 添加插件应用说明-L大](https://www.right.com.cn/forum/thread-3682029-1-1.html)
+4. 如果需要修改默认 IP、添加或删除插件源以及一些其他自定义设置请在 diy-script.sh 文件中进行修改
-6. 如果需要修改默认 IP、添加或删除插件源以及一些其他自定义设置请在 `diy-part2.sh` 文件中进行修改
+5. 点击 Actions → 要编译的 workflow → Run workflow → Run workflow 即可开始编译
-7. 点击 `Actions` → `要编译的workflow` → `Run workflow` → `Run workflow` 一次编译大概需要3~5小时
-
-8. 编译完成后在仓库主页 `Releases` 对应 Tag 标签中查看以及下载固件
+6. 编译大概需要3-5小时,编译完成后可在仓库主页 [Releases](https://github.com/haiibo/OpenWrt/releases) 对应 Tag 标签中查看以及下载固件
- 如果你觉得修改 .config 文件麻烦,那么你可以点击此处尝试本地提取
+ 如果你觉得修改 config 文件麻烦,那么你可以点击此处尝试本地提取
1. 首先装好 Linux 系统,推荐 Debian 11 或 Ubuntu LTS
@@ -226,7 +224,7 @@
./scripts/feeds install -a
```
-4. 复制 diy-part2.sh 文件内所有内容到命令行,添加自定义插件和自定义设置
+4. 复制 diy-script.sh 文件内所有内容到命令行,添加自定义插件和自定义设置
5. 命令行输入 `make menuconfig` 选择配置,选好配置后导出差异部分到 seed.config 文件
@@ -237,9 +235,9 @@
7. 命令行输入 `cat seed.config` 查看这个文件,也可以用文本编辑器打开
-8. 复制 seed.config 文件内所有内容到对应 .config 文件中覆盖就可以了
+8. 复制 seed.config 文件内所有内容到 configs 目录对应文件中覆盖就可以了
- **如果不懂编译界面可以参考 YouTube 视频:[软路由固件 OpenWrt 编译界面设置](https://www.youtube.com/watch?v=jEE_J6-4E3Y&list=WL&index=7)**
+ **如果看不懂编译界面可以参考 YouTube 视频:[软路由固件 OpenWrt 编译界面设置](https://www.youtube.com/watch?v=jEE_J6-4E3Y&list=WL&index=7)**
@@ -249,27 +247,28 @@
- **本人不对任何人因使用本固件所遭受的任何理论或实际的损失承担责任!**
-- **本人保证固件没加入任何后门,保护干净安全的网络环境从我做起!**
-
+- **请务必遵从 “不涉及政治,不涉及宗教,不涉及黄赌毒” 三不原则!**
## 捐助项目 [![](https://img.shields.io/badge/-请我喝咖啡啦-FFFFFF.svg)](#捐助项目-)
-**如果你觉得此项目对你有帮助,可以捐助我们,以鼓励项目能持续发展,更加完善!**
+- 如果你觉得此项目对你有帮助,可以捐助我们,以鼓励项目能持续发展,更加完善!
+
+- 本捐赠渠道仅作捐赠用途之用,付费后不会得到任何形式的额外内容及保证,请知悉!
-**你们的支持就是作者前进的动力!**
+- 捐赠纯属自愿行为,非强制,未捐赠也可以正常使用,未满 18 岁未成年禁止捐赠!
### 捐助方式
| | |
| :-------------: | :-------------: |
-| | |
+| | |
## 鸣谢 [![](https://img.shields.io/badge/-跪谢各大佬-FFFFFF.svg)](#鸣谢-)
-| [ImmortalWrt](https://github.com/immortalwrt) | [coolsnowwolf](https://github.com/coolsnowwolf) | [P3TERX](https://github.com/P3TERX) | [Flippy](https://github.com/unifreq) |
+| [ImmortalWrt](https://github.com/immortalwrt) | [Coolsnowwolf](https://github.com/coolsnowwolf) | [P3TERX](https://github.com/P3TERX) | [Flippy](https://github.com/unifreq) |
| :-------------: | :-------------: | :-------------: | :-------------: |
| | | | |
-| [Ophub](https://github.com/ophub) | [Breakings](https://github.com/breakings) | [QiuSimons](https://github.com/QiuSimons) | [IvanSolis1989](https://github.com/IvanSolis1989) |
-| | | | |
+| [Ophub](https://github.com/ophub) | [SuLingGG](https://github.com/SuLingGG) | [QiuSimons](https://github.com/QiuSimons) | [IvanSolis1989](https://github.com/IvanSolis1989) |
+| | | | |
diff --git a/armv8/mini/diy-part1.sh b/armv8/mini/diy-part1.sh
deleted file mode 100644
index 0eff2c9d00..0000000000
--- a/armv8/mini/diy-part1.sh
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/bash
-#===============================================
-# Description: DIY script part 1
-# File name: diy-part1.sh
-# Lisence: MIT
-# Author: P3TERX
-# Blog: https://p3terx.com
-#===============================================
-
-# Uncomment a feed source
-#sed -i 's/^#\(.*helloworld\)/\1/' feeds.conf.default
-
-# Add a feed source
-#echo 'src-git helloworld https://github.com/fw876/helloworld' >>feeds.conf.default
-#echo 'src-git passwall https://github.com/xiaorouji/openwrt-passwall' >>feeds.conf.default
diff --git a/armv8/plus/diy-part1.sh b/armv8/plus/diy-part1.sh
deleted file mode 100644
index 0eff2c9d00..0000000000
--- a/armv8/plus/diy-part1.sh
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/bash
-#===============================================
-# Description: DIY script part 1
-# File name: diy-part1.sh
-# Lisence: MIT
-# Author: P3TERX
-# Blog: https://p3terx.com
-#===============================================
-
-# Uncomment a feed source
-#sed -i 's/^#\(.*helloworld\)/\1/' feeds.conf.default
-
-# Add a feed source
-#echo 'src-git helloworld https://github.com/fw876/helloworld' >>feeds.conf.default
-#echo 'src-git passwall https://github.com/xiaorouji/openwrt-passwall' >>feeds.conf.default
diff --git a/armv8/mini/.config b/configs/armv8_mini.config
similarity index 100%
rename from armv8/mini/.config
rename to configs/armv8_mini.config
diff --git a/armv8/plus/.config b/configs/armv8_plus.config
similarity index 100%
rename from armv8/plus/.config
rename to configs/armv8_plus.config
diff --git a/nanopi/r4s.config b/configs/extra.config
similarity index 58%
rename from nanopi/r4s.config
rename to configs/extra.config
index ace948266e..dbb7368720 100644
--- a/nanopi/r4s.config
+++ b/configs/extra.config
@@ -1,17 +1,3 @@
-# Build Firmware
-CONFIG_TARGET_rockchip=y
-CONFIG_TARGET_rockchip_armv8=y
-CONFIG_TARGET_rockchip_armv8_DEVICE_friendlyarm_nanopi-r4s=y
-
-# Set firmware size
-CONFIG_TARGET_KERNEL_PARTSIZE=32
-CONFIG_TARGET_ROOTFS_PARTSIZE=900
-
-# Firmware Type
-CONFIG_TARGET_ROOTFS_TARGZ=y
-CONFIG_TARGET_ROOTFS_EXT4FS=y
-CONFIG_TARGET_ROOTFS_SQUASHFS=y
-
# File System Drivers
CONFIG_PACKAGE_kmod-fs-f2fs=y
CONFIG_PACKAGE_kmod-fs-nfs=y
@@ -24,14 +10,9 @@ CONFIG_PACKAGE_kmod-fs-squashfs=y
CONFIG_PACKAGE_kmod-fs-xfs=y
# USB Storage Drivers
-CONFIG_PACKAGE_kmod-usb-acm=y
-CONFIG_PACKAGE_kmod-usb-audio=y
CONFIG_PACKAGE_kmod-usb-ohci=y
CONFIG_PACKAGE_kmod-usb-ohci-pci=y
CONFIG_PACKAGE_kmod-usb-printer=y
-CONFIG_PACKAGE_kmod-usb-serial=y
-CONFIG_PACKAGE_kmod-usb-serial-option=y
-CONFIG_PACKAGE_kmod-usb-serial-wwan=y
CONFIG_PACKAGE_kmod-usb-storage=y
CONFIG_PACKAGE_kmod-usb-storage-extras=y
CONFIG_PACKAGE_kmod-usb-storage-uas=y
@@ -41,7 +22,6 @@ CONFIG_PACKAGE_kmod-usb2-pci=y
CONFIG_PACKAGE_kmod-usb3=y
# USB Net Drivers
-CONFIG_PACKAGE_kmod-usb-net=y
CONFIG_PACKAGE_kmod-usb-net-asix=y
CONFIG_PACKAGE_kmod-usb-net-asix-ax88179=y
CONFIG_PACKAGE_kmod-usb-net-cdc-eem=y
@@ -67,75 +47,7 @@ CONFIG_PACKAGE_kmod-usb-net-smsc95xx=y
CONFIG_PACKAGE_kmod-usb-net-sr9700=y
CONFIG_PACKAGE_kmod-usb-net2280=y
-# USB Wireless Card Drivers
-CONFIG_PACKAGE_kmod-ath=y
-CONFIG_PACKAGE_kmod-ath6kl=y
-CONFIG_PACKAGE_kmod-ath6kl-usb=y
-CONFIG_PACKAGE_kmod-ath9k-common=y
-CONFIG_PACKAGE_kmod-ath9k-htc=y
-CONFIG_PACKAGE_kmod-carl9170=y
-CONFIG_PACKAGE_kmod-lib80211=y
-CONFIG_PACKAGE_kmod-libertas-usb=y
-CONFIG_PACKAGE_kmod-mac80211=y
-CONFIG_PACKAGE_kmod-mt7601u=y
-CONFIG_PACKAGE_kmod-mt7603=y
-CONFIG_PACKAGE_kmod-mt7663u=y
-CONFIG_PACKAGE_kmod-mt76x0u=y
-CONFIG_PACKAGE_kmod-mt76x2u=y
-CONFIG_PACKAGE_kmod-net-prism54=y
-CONFIG_PACKAGE_kmod-net-rtl8192su=y
-CONFIG_PACKAGE_kmod-p54-common=y
-CONFIG_PACKAGE_kmod-p54-usb=y
-CONFIG_PACKAGE_kmod-rsi91x=y
-CONFIG_PACKAGE_kmod-rsi91x-usb=y
-CONFIG_PACKAGE_kmod-rt2500-usb=y
-CONFIG_PACKAGE_kmod-rt2800-lib=y
-CONFIG_PACKAGE_kmod-rt2800-usb=y
-CONFIG_PACKAGE_kmod-rt2x00-lib=y
-CONFIG_PACKAGE_kmod-rt2x00-usb=y
-CONFIG_PACKAGE_kmod-rt73-usb=y
-CONFIG_PACKAGE_kmod-rtl8187=y
-CONFIG_PACKAGE_kmod-rtl8192cu=y
-CONFIG_PACKAGE_kmod-rtl8821cu=y
-CONFIG_PACKAGE_kmod-rtl8192c-common=y
-CONFIG_PACKAGE_kmod-rtlwifi=y
-CONFIG_PACKAGE_kmod-rtlwifi-usb=y
-CONFIG_PACKAGE_kmod-zd1211rw=y
-
-# Wireless Card Firmware
-CONFIG_PACKAGE_ath9k-htc-firmware=y
-CONFIG_PACKAGE_libertas-usb-firmware=y
-CONFIG_PACKAGE_mt7601u-firmware=y
-CONFIG_PACKAGE_p54-usb-firmware=y
-CONFIG_PACKAGE_prism54-firmware=y
-CONFIG_PACKAGE_rs9113-firmware=y
-CONFIG_PACKAGE_rt2800-usb-firmware=y
-CONFIG_PACKAGE_rt73-usb-firmware=y
-CONFIG_PACKAGE_rtl8188eu-firmware=y
-CONFIG_PACKAGE_rtl8192cu-firmware=y
-CONFIG_PACKAGE_rtl8192eu-firmware=y
-CONFIG_PACKAGE_rtl8192su-firmware=y
-CONFIG_PACKAGE_rtl8723au-firmware=y
-CONFIG_PACKAGE_rtl8723bu-firmware=y
-
-# 3G/4G Drivers & Utilities
-CONFIG_PACKAGE_comgt=y
-CONFIG_PACKAGE_comgt-ncm=y
-CONFIG_PACKAGE_kmod-mii=y
-CONFIG_PACKAGE_luci-proto-3g=y
-CONFIG_PACKAGE_luci-proto-ncm=y
-CONFIG_PACKAGE_luci-proto-qmi=y
-CONFIG_PACKAGE_qmi-utils=y
-CONFIG_PACKAGE_umbim=y
-CONFIG_PACKAGE_uqmi=y
-CONFIG_PACKAGE_usb-modeswitch=y
-
-# Mobile Network Sharing
-CONFIG_PACKAGE_libimobiledevice-utils=y
-CONFIG_PACKAGE_libusbmuxd-utils=y
-CONFIG_PACKAGE_usbmuxd=y
-
-# LuCI-app
+# Applications
CONFIG_PACKAGE_luci-app-accesscontrol=y
CONFIG_PACKAGE_luci-app-adbyby-plus=y
CONFIG_PACKAGE_luci-app-adguardhome=y
@@ -149,29 +61,18 @@ CONFIG_PACKAGE_luci-app-aria2=y
CONFIG_PACKAGE_luci-app-arpbind=y
CONFIG_PACKAGE_luci-app-autoreboot=y
CONFIG_PACKAGE_luci-app-bypass=y
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_Shadowsocks_Libev_Client=y
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_Shadowsocks_Libev_Server=y
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_ShadowsocksR_Libev_Client=y
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_ShadowsocksR_Libev_Server=y
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_Simple_obfs=y
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_Simple_obfs_server=y
-# CONFIG_PACKAGE_luci-app-bypass_INCLUDE_V2ray_plugin is not set
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_Xray=y
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_Trojan=y
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_Trojan-Go=y
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_NaiveProxy=y
CONFIG_PACKAGE_luci-app-bypass_INCLUDE_Kcptun=y
+CONFIG_PACKAGE_luci-app-bypass_INCLUDE_NaiveProxy=y
CONFIG_PACKAGE_luci-app-bypass_INCLUDE_Socks5_Proxy=y
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_Socks_Server=y
CONFIG_PACKAGE_luci-app-cifs-mount=y
-CONFIG_PACKAGE_luci-app-cpufreq=y
CONFIG_PACKAGE_luci-app-ddns=y
CONFIG_PACKAGE_luci-app-ddnsto=y
CONFIG_PACKAGE_luci-app-diskman=y
+CONFIG_PACKAGE_luci-app-diskman_INCLUDE_btrfs_progs=y
+CONFIG_PACKAGE_luci-app-diskman_INCLUDE_lsblk=y
CONFIG_PACKAGE_luci-app-dnsfilter=y
CONFIG_PACKAGE_luci-app-dockerman=y
CONFIG_PACKAGE_luci-app-eqos=y
-# CONFIG_PACKAGE_luci-app-familycloud is not set
CONFIG_PACKAGE_luci-app-filebrowser=y
CONFIG_PACKAGE_luci-app-filetransfer=y
CONFIG_PACKAGE_luci-app-firewall=y
@@ -186,7 +87,7 @@ CONFIG_PACKAGE_luci-app-minidlna=y
# CONFIG_PACKAGE_luci-app-mosdns is not set
CONFIG_PACKAGE_luci-app-mwan3=y
CONFIG_PACKAGE_luci-app-mwan3helper=y
-CONFIG_PACKAGE_luci-app-n2n_v2=y
+CONFIG_PACKAGE_luci-app-n2n=y
CONFIG_PACKAGE_luci-app-netdata=y
CONFIG_PACKAGE_luci-app-nfs=y
CONFIG_PACKAGE_luci-app-nlbwmon=y
@@ -195,39 +96,22 @@ CONFIG_PACKAGE_luci-app-oaf=y
CONFIG_PACKAGE_luci-app-openclash=y
CONFIG_PACKAGE_luci-app-openvpn-server=y
CONFIG_PACKAGE_luci-app-passwall=y
-CONFIG_PACKAGE_luci-app-passwall_Transparent_Proxy=y
CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Brook=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_ChinaDNS_NG=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Haproxy=y
CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Hysteria=y
CONFIG_PACKAGE_luci-app-passwall_INCLUDE_IPv6_Nat=y
CONFIG_PACKAGE_luci-app-passwall_INCLUDE_NaiveProxy=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Libev_Client=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Libev_Server=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Rust_Client=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Rust_Server=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_ShadowsocksR_Libev_Client=y
CONFIG_PACKAGE_luci-app-passwall_INCLUDE_ShadowsocksR_Libev_Server=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Simple_Obfs=y
+CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Rust_Server=y
CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Trojan_GO=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Trojan_Plus=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_V2ray=y
# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_V2ray_Plugin is not set
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Xray=y
-# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Xray_Plugin is not set
CONFIG_PACKAGE_luci-app-passwall2=y
-CONFIG_PACKAGE_luci-app-passwall2_Transparent_Proxy=y
CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_Brook=y
CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_Hysteria=y
CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_IPv6_Nat=y
CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_NaiveProxy=y
-CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_Shadowsocks_Libev_Client=y
+CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_ShadowsocksR_Libev_Server=y
CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_Shadowsocks_Libev_Server=y
-CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_Shadowsocks_Rust_Client=y
CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_Shadowsocks_Rust_Server=y
-CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_ShadowsocksR_Libev_Client=y
-CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_ShadowsocksR_Libev_Server=y
-CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_Simple_Obfs=y
CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_V2ray=y
# CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_V2ray_Plugin is not set
CONFIG_PACKAGE_luci-app-poweroff=y
@@ -245,32 +129,21 @@ CONFIG_PACKAGE_luci-app-smartdns=y
CONFIG_PACKAGE_luci-app-softethervpn=y
CONFIG_PACKAGE_luci-app-sqm=y
CONFIG_PACKAGE_luci-app-ssr-plus=y
-# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_NONE_V2RAY is not set
-# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_V2ray is not set
-CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Xray=y
-# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_SagerNet_Core is not set
-CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Kcptun=y
CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Hysteria=y
CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_IPT2Socks=y
+CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Kcptun=y
CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_NaiveProxy=y
CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Redsocks2=y
+CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_ShadowsocksR_Libev_Server=y
CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Libev_Client=y
CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Libev_Server=y
-CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Rust_Client=y
-CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Rust_Server=y
-CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_ShadowsocksR_Libev_Client=y
-CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_ShadowsocksR_Libev_Server=y
CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Simple_Obfs=y
CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Trojan=y
-# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_V2ray_Plugin is not set
CONFIG_PACKAGE_luci-app-syncdial=y
CONFIG_PACKAGE_luci-app-transmission=y
CONFIG_PACKAGE_luci-app-ttyd=y
CONFIG_PACKAGE_luci-app-turboacc=y
CONFIG_PACKAGE_luci-app-turboacc_INCLUDE_OFFLOADING=y
-# CONFIG_PACKAGE_luci-app-turboacc_INCLUDE_SHORTCUT_FE_DRV is not set
-# CONFIG_PACKAGE_luci-app-turboacc_INCLUDE_SHORTCUT_FE is not set
-CONFIG_PACKAGE_luci-app-turboacc_INCLUDE_BBR_CCA=y
CONFIG_PACKAGE_luci-app-turboacc_INCLUDE_DNSFORWARDER=y
CONFIG_PACKAGE_luci-app-turboacc_INCLUDE_DNSPROXY=y
CONFIG_PACKAGE_luci-app-udpxy=y
@@ -286,11 +159,7 @@ CONFIG_PACKAGE_luci-app-verysync=y
CONFIG_PACKAGE_luci-app-vlmcsd=y
CONFIG_PACKAGE_luci-app-vsftpd=y
CONFIG_PACKAGE_luci-app-vssr=y
-CONFIG_PACKAGE_luci-app-vssr_INCLUDE_Xray=y
-CONFIG_PACKAGE_luci-app-vssr_INCLUDE_Trojan=y
CONFIG_PACKAGE_luci-app-vssr_INCLUDE_Kcptun=y
-CONFIG_PACKAGE_luci-app-vssr_INCLUDE_Xray_plugin=y
-CONFIG_PACKAGE_luci-app-vssr_INCLUDE_ShadowsocksR_Libev_Server=y
# CONFIG_PACKAGE_luci-app-watchcat is not set
# CONFIG_PACKAGE_luci-app-webadmin is not set
# CONFIG_PACKAGE_luci-app-wifischedule is not set
@@ -300,9 +169,9 @@ CONFIG_PACKAGE_luci-app-wrtbwmon=y
CONFIG_PACKAGE_luci-app-xlnetacc=y
CONFIG_PACKAGE_luci-app-zerotier=y
-# LuCI-theme
+# Themes
CONFIG_PACKAGE_luci-theme-argon=y
-CONFIG_PACKAGE_luci-theme-atmaterial=y
+CONFIG_PACKAGE_luci-theme-atmaterial_new=y
CONFIG_PACKAGE_luci-theme-darkmatter=y
CONFIG_PACKAGE_luci-theme-edge=y
CONFIG_PACKAGE_luci-theme-infinityfreedom=y
@@ -312,23 +181,44 @@ CONFIG_PACKAGE_luci-theme-opentomcat=y
CONFIG_PACKAGE_luci-theme-opentopd=y
CONFIG_PACKAGE_luci-theme-rosy=y
+# I2C Drivers
+CONFIG_PACKAGE_kmod-i2c-core=y
+
+# Network Support
+CONFIG_PACKAGE_kmod-inet-diag=y
+
+# USB Audio
+CONFIG_PACKAGE_kmod-usb-audio=y
+
+# 3G/4G Drivers & Utilities
+CONFIG_PACKAGE_comgt-ncm=y
+CONFIG_PACKAGE_comgt=y
+CONFIG_PACKAGE_kmod-mii=y
+CONFIG_PACKAGE_kmod-usb-acm=y
+CONFIG_PACKAGE_kmod-usb-serial=y
+CONFIG_PACKAGE_kmod-usb-serial-option=y
+CONFIG_PACKAGE_kmod-usb-serial-wwan=y
+CONFIG_PACKAGE_luci-proto-3g=y
+CONFIG_PACKAGE_luci-proto-ncm=y
+CONFIG_PACKAGE_luci-proto-qmi=y
+CONFIG_PACKAGE_qmi-utils=y
+CONFIG_PACKAGE_umbim=y
+CONFIG_PACKAGE_uqmi=y
+CONFIG_PACKAGE_usb-modeswitch=y
+
+# Mobile Network Sharing
+CONFIG_PACKAGE_libimobiledevice-utils=y
+CONFIG_PACKAGE_libplist-utils=y
+CONFIG_PACKAGE_libudev-fbsd=y
+CONFIG_PACKAGE_libusbmuxd-utils=y
+CONFIG_PACKAGE_usbmuxd=y
+
+# Python
+CONFIG_PACKAGE_python-pip-conf=y
+CONFIG_PACKAGE_python3=y
+
# Software
# CONFIG_PACKAGE_autosamba is not set
-CONFIG_PACKAGE_alpine-keys=y
-CONFIG_PACKAGE_alpine-repositories=y
-CONFIG_PACKAGE_apk=y
-CONFIG_PACKAGE_ariang=y
-CONFIG_PACKAGE_attr=y
-CONFIG_PACKAGE_autocore-arm=y
-CONFIG_PACKAGE_automount=y
-CONFIG_PACKAGE_bash=y
-CONFIG_PACKAGE_bind-dig=y
-CONFIG_PACKAGE_bind-host=y
-CONFIG_PACKAGE_blkid=y
-CONFIG_PACKAGE_bsdtar=y
-CONFIG_PACKAGE_btrfs-progs=y
-CONFIG_PACKAGE_bzip2=y
-CONFIG_PACKAGE_coremark=y
CONFIG_PACKAGE_ddns-scripts_cloudflare.com-v4=y
CONFIG_PACKAGE_ddns-scripts_freedns_42_pl=y
CONFIG_PACKAGE_ddns-scripts_godaddy.com-v1=y
@@ -336,52 +226,15 @@ CONFIG_PACKAGE_ddns-scripts_no-ip_com=y
CONFIG_PACKAGE_ddns-scripts_nsupdate=y
CONFIG_PACKAGE_ddns-scripts_route53-v1=y
CONFIG_PACKAGE_docker-compose=y
-CONFIG_PACKAGE_e2fsprogs=y
-CONFIG_PACKAGE_f2fs-tools=y
-CONFIG_PACKAGE_f2fsck=y
-CONFIG_PACKAGE_fdisk=y
-CONFIG_PACKAGE_fstrim=y
-CONFIG_PACKAGE_getopt=y
-CONFIG_PACKAGE_gpioctl-sysfs=y
-CONFIG_PACKAGE_gpiod-tools=y
-CONFIG_PACKAGE_gzip=y
-CONFIG_PACKAGE_hostapd=y
-CONFIG_PACKAGE_hostapd-common=y
-CONFIG_PACKAGE_hostapd-utils=y
CONFIG_PACKAGE_htop=y
-CONFIG_PACKAGE_iperf=y
CONFIG_PACKAGE_iperf3=y
-CONFIG_PACKAGE_irqbalance=y
-CONFIG_PACKAGE_iw=y
-CONFIG_PACKAGE_iwinfo=y
-CONFIG_PACKAGE_lsblk=y
-CONFIG_PACKAGE_lscpu=y
-CONFIG_PACKAGE_mentohust=y
-CONFIG_PACKAGE_mkf2fs=y
CONFIG_PACKAGE_nano=y
CONFIG_PACKAGE_openssh-sftp-client=y
CONFIG_PACKAGE_openssh-sftp-server=y
-CONFIG_PACKAGE_parted=y
-CONFIG_PACKAGE_ppp-mod-pptp=y
-CONFIG_PACKAGE_resize2fs=y
-CONFIG_PACKAGE_rsync=y
-CONFIG_PACKAGE_rsyncd=y
-CONFIG_PACKAGE_screen=y
-CONFIG_PACKAGE_snmpd=y
-CONFIG_PACKAGE_tmate=y
-CONFIG_PACKAGE_tmux=y
-CONFIG_PACKAGE_tree=y
-CONFIG_PACKAGE_unzip=y
-CONFIG_PACKAGE_usbutils=y
-CONFIG_PACKAGE_vim-fuller=y
-CONFIG_PACKAGE_whereis=y
CONFIG_PACKAGE_luci-proto-wireguard=y
CONFIG_PACKAGE_wireguard-tools=y
-CONFIG_PACKAGE_wpad=y
-CONFIG_PACKAGE_xl2tpd=y
-CONFIG_PACKAGE_zsh=y
-# IPv6
+# Ipv6 Support
CONFIG_PACKAGE_6in4=y
CONFIG_PACKAGE_dnsmasq_full_dhcpv6=y
CONFIG_PACKAGE_ipv6helper=y
diff --git a/configs/rockchip.config b/configs/rockchip.config
new file mode 100644
index 0000000000..91e4ee2283
--- /dev/null
+++ b/configs/rockchip.config
@@ -0,0 +1,18 @@
+# Target Config
+CONFIG_TARGET_rockchip=y
+CONFIG_TARGET_rockchip_armv8=y
+CONFIG_TARGET_MULTI_PROFILE=y
+CONFIG_TARGET_DEVICE_rockchip_armv8_DEVICE_friendlyarm_nanopi-r2c=y
+CONFIG_TARGET_DEVICE_rockchip_armv8_DEVICE_friendlyarm_nanopi-r2s=y
+CONFIG_TARGET_DEVICE_rockchip_armv8_DEVICE_friendlyarm_nanopi-r4s=y
+CONFIG_TARGET_DEVICE_rockchip_armv8_DEVICE_friendlyelec_nanopi-r5s=y
+CONFIG_TARGET_DEVICE_rockchip_armv8_DEVICE_xunlong_orangepi-r1-plus=y
+
+# Set firmware size
+CONFIG_TARGET_KERNEL_PARTSIZE=32
+CONFIG_TARGET_ROOTFS_PARTSIZE=900
+
+# Firmware Type
+CONFIG_TARGET_ROOTFS_TARGZ=y
+CONFIG_TARGET_ROOTFS_EXT4FS=y
+CONFIG_TARGET_ROOTFS_SQUASHFS=y
diff --git a/configs/rpi4.config b/configs/rpi4.config
new file mode 100644
index 0000000000..b8e9b18e95
--- /dev/null
+++ b/configs/rpi4.config
@@ -0,0 +1,13 @@
+# Target Config
+CONFIG_TARGET_bcm27xx=y
+CONFIG_TARGET_bcm27xx_bcm2711=y
+CONFIG_TARGET_bcm27xx_bcm2711_DEVICE_rpi-4=y
+
+# Set firmware size
+CONFIG_TARGET_KERNEL_PARTSIZE=32
+CONFIG_TARGET_ROOTFS_PARTSIZE=900
+
+# Firmware Type
+CONFIG_TARGET_ROOTFS_TARGZ=y
+CONFIG_TARGET_ROOTFS_EXT4FS=y
+CONFIG_TARGET_ROOTFS_SQUASHFS=y
diff --git a/x86/.config b/configs/x86_64.config
similarity index 99%
rename from x86/.config
rename to configs/x86_64.config
index 09622669a4..56f323ada6 100644
--- a/x86/.config
+++ b/configs/x86_64.config
@@ -593,7 +593,7 @@ CONFIG_PACKAGE_luci-lib-docker=y
CONFIG_PACKAGE_luci-lib-json=y
CONFIG_PACKAGE_luci-proto-ipv6=y
CONFIG_PACKAGE_luci-theme-argon=y
-CONFIG_PACKAGE_luci-theme-atmaterial=y
+CONFIG_PACKAGE_luci-theme-atmaterial_new=y
CONFIG_PACKAGE_luci-theme-darkmatter=y
CONFIG_PACKAGE_luci-theme-edge=y
CONFIG_PACKAGE_luci-theme-infinityfreedom=y
diff --git a/armv8/mini/diy-part2.sh b/diy-mini.sh
similarity index 97%
rename from armv8/mini/diy-part2.sh
rename to diy-mini.sh
index 9628e0ad88..e42eb87a0a 100644
--- a/armv8/mini/diy-part2.sh
+++ b/diy-mini.sh
@@ -1,7 +1,7 @@
#!/bin/bash
#===============================================
-# Description: DIY script part 2
-# File name: diy-part2.sh
+# Description: DIY script
+# File name: diy-script.sh
# Lisence: MIT
# Author: P3TERX
# Blog: https://p3terx.com
@@ -14,7 +14,6 @@
sed -i 's/TARGET_rockchip/TARGET_rockchip\|\|TARGET_armvirt/g' package/lean/autocore/Makefile
# Cpufreq
-sed -i 's/LUCI_DEPENDS.*/LUCI_DEPENDS:=\@\(arm\|\|aarch64\)/g' feeds/luci/applications/luci-app-cpufreq/Makefile
sed -i 's/services/system/g' feeds/luci/applications/luci-app-cpufreq/luasrc/controller/cpufreq.lua
# 移除重复软件包
diff --git a/armv8/plus/diy-part2.sh b/diy-script.sh
similarity index 97%
rename from armv8/plus/diy-part2.sh
rename to diy-script.sh
index 85d0299dbc..2ea46d6237 100644
--- a/armv8/plus/diy-part2.sh
+++ b/diy-script.sh
@@ -1,7 +1,7 @@
#!/bin/bash
#===============================================
-# Description: DIY script part 2
-# File name: diy-part2.sh
+# Description: DIY script
+# File name: diy-script.sh
# Lisence: MIT
# Author: P3TERX
# Blog: https://p3terx.com
@@ -14,7 +14,6 @@
sed -i 's/TARGET_rockchip/TARGET_rockchip\|\|TARGET_armvirt/g' package/lean/autocore/Makefile
# Cpufreq
-sed -i 's/LUCI_DEPENDS.*/LUCI_DEPENDS:=\@\(arm\|\|aarch64\)/g' feeds/luci/applications/luci-app-cpufreq/Makefile
sed -i 's/services/system/g' feeds/luci/applications/luci-app-cpufreq/luasrc/controller/cpufreq.lua
# 移除重复软件包
diff --git a/image/mini.png b/images/mini.png
similarity index 100%
rename from image/mini.png
rename to images/mini.png
diff --git a/image/openwrt.png b/images/openwrt.png
similarity index 100%
rename from image/openwrt.png
rename to images/openwrt.png
diff --git a/image/plus.png b/images/plus.png
similarity index 100%
rename from image/plus.png
rename to images/plus.png
diff --git a/nanopi/diy-part1.sh b/nanopi/diy-part1.sh
deleted file mode 100644
index 0eff2c9d00..0000000000
--- a/nanopi/diy-part1.sh
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/bash
-#===============================================
-# Description: DIY script part 1
-# File name: diy-part1.sh
-# Lisence: MIT
-# Author: P3TERX
-# Blog: https://p3terx.com
-#===============================================
-
-# Uncomment a feed source
-#sed -i 's/^#\(.*helloworld\)/\1/' feeds.conf.default
-
-# Add a feed source
-#echo 'src-git helloworld https://github.com/fw876/helloworld' >>feeds.conf.default
-#echo 'src-git passwall https://github.com/xiaorouji/openwrt-passwall' >>feeds.conf.default
diff --git a/nanopi/diy-part2.sh b/nanopi/diy-part2.sh
deleted file mode 100644
index 35f9b3bc43..0000000000
--- a/nanopi/diy-part2.sh
+++ /dev/null
@@ -1,105 +0,0 @@
-#!/bin/bash
-#===============================================
-# Description: DIY script part 2
-# File name: diy-part2.sh
-# Lisence: MIT
-# Author: P3TERX
-# Blog: https://p3terx.com
-#===============================================
-
-# 修改默认IP
-# sed -i 's/192.168.1.1/10.10.10.10/g' package/base-files/files/bin/config_generate
-
-# 移除重复软件包
-rm -rf feeds/packages/net/mosdns
-rm -rf feeds/luci/themes/luci-theme-argon
-rm -rf feeds/luci/themes/luci-theme-netgear
-rm -rf feeds/luci/applications/luci-app-netdata
-rm -rf feeds/luci/applications/luci-app-wrtbwmon
-rm -rf feeds/luci/applications/luci-app-dockerman
-
-# 添加额外软件包
-git clone https://github.com/kongfl888/luci-app-adguardhome.git package/luci-app-adguardhome
-git clone https://github.com/jerrykuku/lua-maxminddb.git package/lua-maxminddb
-git clone https://github.com/jerrykuku/luci-app-vssr.git package/luci-app-vssr
-git clone https://github.com/tty228/luci-app-serverchan.git package/luci-app-serverchan
-git clone https://github.com/iwrt/luci-app-ikoolproxy.git package/luci-app-ikoolproxy
-git clone https://github.com/esirplayground/luci-app-poweroff package/luci-app-poweroff
-git clone https://github.com/destan19/OpenAppFilter.git package/OpenAppFilter
-git clone https://github.com/kiddin9/luci-app-dnsfilter package/luci-app-dnsfilter
-svn co https://github.com/haiibo/packages/trunk/luci-app-advanced package/luci-app-advanced
-svn co https://github.com/kiddin9/openwrt-packages/trunk/luci-app-eqos package/luci-app-eqos
-svn co https://github.com/kiddin9/openwrt-bypass/trunk/luci-app-bypass package/luci-app-bypass
-svn co https://github.com/Lienol/openwrt-package/trunk/luci-app-filebrowser package/luci-app-filebrowser
-svn co https://github.com/lisaac/luci-app-dockerman/trunk/applications/luci-app-dockerman package/luci-app-dockerman
-svn co https://github.com/sirpdboy/sirpdboy-package/trunk/luci-app-smartdns package/luci-app-smartdns
-svn co https://github.com/sirpdboy/sirpdboy-package/trunk/luci-app-netdata package/luci-app-netdata
-
-# 科学上网插件依赖
-svn co https://github.com/vernesong/OpenClash/trunk/luci-app-openclash package/luci-app-openclash
-# 编译 po2lmo (如果有po2lmo可跳过)
-pushd package/luci-app-openclash/tools/po2lmo
-make && sudo make install
-popd
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/brook package/brook
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/chinadns-ng package/chinadns-ng
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/tcping package/tcping
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/trojan-go package/trojan-go
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/trojan-plus package/trojan-plus
-svn co https://github.com/xiaorouji/openwrt-passwall/branches/luci/luci-app-passwall package/luci-app-passwall
-svn co https://github.com/xiaorouji/openwrt-passwall2/trunk/luci-app-passwall2 package/luci-app-passwall2
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/xray-core package/xray-core
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/xray-plugin package/xray-plugin
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/ssocks package/ssocks
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/hysteria package/hysteria
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/v2ray-plugin package/v2ray-plugin
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/v2ray-core package/v2ray-core
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/dns2tcp package/dns2tcp
-svn co https://github.com/fw876/helloworld/trunk/v2ray-geodata package/v2ray-geodata
-svn co https://github.com/fw876/helloworld/trunk/naiveproxy package/naiveproxy
-svn co https://github.com/fw876/helloworld/trunk/sagernet-core package/sagernet-core
-svn co https://github.com/fw876/helloworld/trunk/shadowsocks-rust package/shadowsocks-rust
-svn co https://github.com/fw876/helloworld/trunk/shadowsocksr-libev package/shadowsocksr-libev
-svn co https://github.com/fw876/helloworld/trunk/luci-app-ssr-plus package/luci-app-ssr-plus
-svn co https://github.com/fw876/helloworld/trunk/simple-obfs package/simple-obfs
-svn co https://github.com/fw876/helloworld/trunk/lua-neturl package/lua-neturl
-svn co https://github.com/fw876/helloworld/trunk/trojan package/trojan
-
-# Themes
-svn co https://github.com/haiibo/packages/trunk/luci-theme-edge package/luci-theme-edge
-svn co https://github.com/rosywrt/luci-theme-rosy/trunk/luci-theme-rosy package/luci-theme-rosy
-svn co https://github.com/haiibo/packages/trunk/luci-theme-darkmatter package/luci-theme-darkmatter
-svn co https://github.com/haiibo/packages/trunk/luci-theme-atmaterial package/luci-theme-atmaterial
-svn co https://github.com/haiibo/packages/trunk/luci-theme-opentomcat package/luci-theme-opentomcat
-svn co https://github.com/haiibo/packages/trunk/luci-theme-netgear package/luci-theme-netgear
-git clone https://github.com/xiaoqingfengATGH/luci-theme-infinityfreedom package/luci-theme-infinityfreedom
-git clone -b 18.06 https://github.com/jerrykuku/luci-theme-argon.git package/luci-theme-argon
-git clone https://github.com/jerrykuku/luci-app-argon-config package/luci-app-argon-config
-git clone https://github.com/sirpdboy/luci-theme-opentopd package/luci-theme-opentopd
-git clone https://github.com/thinktip/luci-theme-neobird package/luci-theme-neobird
-
-# MosDNS
-svn co https://github.com/QiuSimons/openwrt-mos/trunk/luci-app-mosdns package/luci-app-mosdns
-svn co https://github.com/QiuSimons/openwrt-mos/trunk/mosdns package/mosdns
-
-# DDNS.to
-svn co https://github.com/linkease/nas-packages-luci/trunk/luci/luci-app-ddnsto package/luci-app-ddnsto
-svn co https://github.com/linkease/nas-packages/trunk/network/services/ddnsto package/ddnsto
-
-# 流量监控
-svn co https://github.com/sirpdboy/sirpdboy-package/trunk/luci-app-wrtbwmon package/luci-app-wrtbwmon
-svn co https://github.com/sirpdboy/sirpdboy-package/trunk/wrtbwmon package/wrtbwmon
-
-# 修改makefile
-find package/*/ -maxdepth 2 -path "*/Makefile" | xargs -i sed -i 's/include\ \.\.\/\.\.\/luci\.mk/include \$(TOPDIR)\/feeds\/luci\/luci\.mk/g' {}
-find package/*/ -maxdepth 2 -path "*/Makefile" | xargs -i sed -i 's/include\ \.\.\/\.\.\/lang\/golang\/golang\-package\.mk/include \$(TOPDIR)\/feeds\/packages\/lang\/golang\/golang\-package\.mk/g' {}
-find package/*/ -maxdepth 2 -path "*/Makefile" | xargs -i sed -i 's/PKG_SOURCE_URL:=\@GHREPO/PKG_SOURCE_URL:=https:\/\/github\.com/g' {}
-find package/*/ -maxdepth 2 -path "*/Makefile" | xargs -i sed -i 's/PKG_SOURCE_URL:=\@GHCODELOAD/PKG_SOURCE_URL:=https:\/\/codeload\.github\.com/g' {}
-
-# 调整V2ray服务到VPN菜单
-sed -i 's/services/vpn/g' feeds/luci/applications/luci-app-v2ray-server/luasrc/controller/*.lua
-sed -i 's/services/vpn/g' feeds/luci/applications/luci-app-v2ray-server/luasrc/model/cbi/v2ray_server/*.lua
-sed -i 's/services/vpn/g' feeds/luci/applications/luci-app-v2ray-server/luasrc/view/v2ray_server/*.htm
-
-./scripts/feeds update -a
-./scripts/feeds install -a
diff --git a/nanopi/r2s.config b/nanopi/r2s.config
deleted file mode 100644
index 6d24bcf805..0000000000
--- a/nanopi/r2s.config
+++ /dev/null
@@ -1,390 +0,0 @@
-# Build Firmware
-CONFIG_TARGET_rockchip=y
-CONFIG_TARGET_rockchip_armv8=y
-CONFIG_TARGET_rockchip_armv8_DEVICE_friendlyarm_nanopi-r2s=y
-
-# Set firmware size
-CONFIG_TARGET_KERNEL_PARTSIZE=32
-CONFIG_TARGET_ROOTFS_PARTSIZE=900
-
-# Firmware Type
-CONFIG_TARGET_ROOTFS_TARGZ=y
-CONFIG_TARGET_ROOTFS_EXT4FS=y
-CONFIG_TARGET_ROOTFS_SQUASHFS=y
-
-# File System Drivers
-CONFIG_PACKAGE_kmod-fs-f2fs=y
-CONFIG_PACKAGE_kmod-fs-nfs=y
-CONFIG_PACKAGE_kmod-fs-nfs-common=y
-CONFIG_PACKAGE_kmod-fs-nfs-common-rpcsec=y
-CONFIG_PACKAGE_kmod-fs-nfs-v3=y
-CONFIG_PACKAGE_kmod-fs-nfs-v4=y
-CONFIG_PACKAGE_kmod-fs-nfsd=y
-CONFIG_PACKAGE_kmod-fs-squashfs=y
-CONFIG_PACKAGE_kmod-fs-xfs=y
-
-# USB Storage Drivers
-CONFIG_PACKAGE_kmod-usb-acm=y
-CONFIG_PACKAGE_kmod-usb-audio=y
-CONFIG_PACKAGE_kmod-usb-ohci=y
-CONFIG_PACKAGE_kmod-usb-ohci-pci=y
-CONFIG_PACKAGE_kmod-usb-printer=y
-CONFIG_PACKAGE_kmod-usb-serial=y
-CONFIG_PACKAGE_kmod-usb-serial-option=y
-CONFIG_PACKAGE_kmod-usb-serial-wwan=y
-CONFIG_PACKAGE_kmod-usb-storage=y
-CONFIG_PACKAGE_kmod-usb-storage-extras=y
-CONFIG_PACKAGE_kmod-usb-storage-uas=y
-CONFIG_PACKAGE_kmod-usb-uhci=y
-CONFIG_PACKAGE_kmod-usb2=y
-CONFIG_PACKAGE_kmod-usb2-pci=y
-CONFIG_PACKAGE_kmod-usb3=y
-
-# USB Net Drivers
-CONFIG_PACKAGE_kmod-usb-net=y
-CONFIG_PACKAGE_kmod-usb-net-asix=y
-CONFIG_PACKAGE_kmod-usb-net-asix-ax88179=y
-CONFIG_PACKAGE_kmod-usb-net-cdc-eem=y
-CONFIG_PACKAGE_kmod-usb-net-cdc-ether=y
-CONFIG_PACKAGE_kmod-usb-net-cdc-mbim=y
-CONFIG_PACKAGE_kmod-usb-net-cdc-ncm=y
-CONFIG_PACKAGE_kmod-usb-net-cdc-subset=y
-CONFIG_PACKAGE_kmod-usb-net-dm9601-ether=y
-CONFIG_PACKAGE_kmod-usb-net-hso=y
-CONFIG_PACKAGE_kmod-usb-net-huawei-cdc-ncm=y
-CONFIG_PACKAGE_kmod-usb-net-ipheth=y
-CONFIG_PACKAGE_kmod-usb-net-kalmia=y
-CONFIG_PACKAGE_kmod-usb-net-kaweth=y
-CONFIG_PACKAGE_kmod-usb-net-mcs7830=y
-CONFIG_PACKAGE_kmod-usb-net-pegasus=y
-CONFIG_PACKAGE_kmod-usb-net-pl=y
-CONFIG_PACKAGE_kmod-usb-net-qmi-wwan=y
-CONFIG_PACKAGE_kmod-usb-net-rndis=y
-CONFIG_PACKAGE_kmod-usb-net-rtl8150=y
-CONFIG_PACKAGE_kmod-usb-net-rtl8152=y
-CONFIG_PACKAGE_kmod-usb-net-sierrawireless=y
-CONFIG_PACKAGE_kmod-usb-net-smsc95xx=y
-CONFIG_PACKAGE_kmod-usb-net-sr9700=y
-CONFIG_PACKAGE_kmod-usb-net2280=y
-
-# USB Wireless Card Drivers
-CONFIG_PACKAGE_kmod-ath=y
-CONFIG_PACKAGE_kmod-ath6kl=y
-CONFIG_PACKAGE_kmod-ath6kl-usb=y
-CONFIG_PACKAGE_kmod-ath9k-common=y
-CONFIG_PACKAGE_kmod-ath9k-htc=y
-CONFIG_PACKAGE_kmod-carl9170=y
-CONFIG_PACKAGE_kmod-lib80211=y
-CONFIG_PACKAGE_kmod-libertas-usb=y
-CONFIG_PACKAGE_kmod-mac80211=y
-CONFIG_PACKAGE_kmod-mt7601u=y
-CONFIG_PACKAGE_kmod-mt7603=y
-CONFIG_PACKAGE_kmod-mt7663u=y
-CONFIG_PACKAGE_kmod-mt76x0u=y
-CONFIG_PACKAGE_kmod-mt76x2u=y
-CONFIG_PACKAGE_kmod-net-prism54=y
-CONFIG_PACKAGE_kmod-net-rtl8192su=y
-CONFIG_PACKAGE_kmod-p54-common=y
-CONFIG_PACKAGE_kmod-p54-usb=y
-CONFIG_PACKAGE_kmod-rsi91x=y
-CONFIG_PACKAGE_kmod-rsi91x-usb=y
-CONFIG_PACKAGE_kmod-rt2500-usb=y
-CONFIG_PACKAGE_kmod-rt2800-lib=y
-CONFIG_PACKAGE_kmod-rt2800-usb=y
-CONFIG_PACKAGE_kmod-rt2x00-lib=y
-CONFIG_PACKAGE_kmod-rt2x00-usb=y
-CONFIG_PACKAGE_kmod-rt73-usb=y
-CONFIG_PACKAGE_kmod-rtl8187=y
-CONFIG_PACKAGE_kmod-rtl8192cu=y
-CONFIG_PACKAGE_kmod-rtl8821cu=y
-CONFIG_PACKAGE_kmod-rtl8192c-common=y
-CONFIG_PACKAGE_kmod-rtlwifi=y
-CONFIG_PACKAGE_kmod-rtlwifi-usb=y
-CONFIG_PACKAGE_kmod-zd1211rw=y
-
-# Wireless Card Firmware
-CONFIG_PACKAGE_ath9k-htc-firmware=y
-CONFIG_PACKAGE_libertas-usb-firmware=y
-CONFIG_PACKAGE_mt7601u-firmware=y
-CONFIG_PACKAGE_p54-usb-firmware=y
-CONFIG_PACKAGE_prism54-firmware=y
-CONFIG_PACKAGE_rs9113-firmware=y
-CONFIG_PACKAGE_rt2800-usb-firmware=y
-CONFIG_PACKAGE_rt73-usb-firmware=y
-CONFIG_PACKAGE_rtl8188eu-firmware=y
-CONFIG_PACKAGE_rtl8192cu-firmware=y
-CONFIG_PACKAGE_rtl8192eu-firmware=y
-CONFIG_PACKAGE_rtl8192su-firmware=y
-CONFIG_PACKAGE_rtl8723au-firmware=y
-CONFIG_PACKAGE_rtl8723bu-firmware=y
-
-# 3G/4G Drivers & Utilities
-CONFIG_PACKAGE_comgt=y
-CONFIG_PACKAGE_comgt-ncm=y
-CONFIG_PACKAGE_kmod-mii=y
-CONFIG_PACKAGE_luci-proto-3g=y
-CONFIG_PACKAGE_luci-proto-ncm=y
-CONFIG_PACKAGE_luci-proto-qmi=y
-CONFIG_PACKAGE_qmi-utils=y
-CONFIG_PACKAGE_umbim=y
-CONFIG_PACKAGE_uqmi=y
-CONFIG_PACKAGE_usb-modeswitch=y
-
-# Mobile Network Sharing
-CONFIG_PACKAGE_libimobiledevice-utils=y
-CONFIG_PACKAGE_libusbmuxd-utils=y
-CONFIG_PACKAGE_usbmuxd=y
-
-# LuCI-app
-CONFIG_PACKAGE_luci-app-accesscontrol=y
-CONFIG_PACKAGE_luci-app-adbyby-plus=y
-CONFIG_PACKAGE_luci-app-adguardhome=y
-# CONFIG_PACKAGE_luci-app-advanced is not set
-CONFIG_PACKAGE_luci-app-airplay2=y
-CONFIG_PACKAGE_luci-app-aliyundrive-fuse=y
-CONFIG_PACKAGE_luci-app-aliyundrive-webdav=y
-CONFIG_PACKAGE_luci-app-amule=y
-CONFIG_PACKAGE_luci-app-argon-config=y
-CONFIG_PACKAGE_luci-app-aria2=y
-CONFIG_PACKAGE_luci-app-arpbind=y
-CONFIG_PACKAGE_luci-app-autoreboot=y
-CONFIG_PACKAGE_luci-app-bypass=y
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_Shadowsocks_Libev_Client=y
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_Shadowsocks_Libev_Server=y
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_ShadowsocksR_Libev_Client=y
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_ShadowsocksR_Libev_Server=y
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_Simple_obfs=y
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_Simple_obfs_server=y
-# CONFIG_PACKAGE_luci-app-bypass_INCLUDE_V2ray_plugin is not set
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_Xray=y
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_Trojan=y
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_Trojan-Go=y
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_NaiveProxy=y
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_Kcptun=y
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_Socks5_Proxy=y
-CONFIG_PACKAGE_luci-app-bypass_INCLUDE_Socks_Server=y
-CONFIG_PACKAGE_luci-app-cifs-mount=y
-CONFIG_PACKAGE_luci-app-cpufreq=y
-CONFIG_PACKAGE_luci-app-ddns=y
-CONFIG_PACKAGE_luci-app-ddnsto=y
-CONFIG_PACKAGE_luci-app-diskman=y
-CONFIG_PACKAGE_luci-app-dnsfilter=y
-CONFIG_PACKAGE_luci-app-dockerman=y
-CONFIG_PACKAGE_luci-app-eqos=y
-# CONFIG_PACKAGE_luci-app-familycloud is not set
-CONFIG_PACKAGE_luci-app-filebrowser=y
-CONFIG_PACKAGE_luci-app-filetransfer=y
-CONFIG_PACKAGE_luci-app-firewall=y
-CONFIG_PACKAGE_luci-app-frpc=y
-CONFIG_PACKAGE_luci-app-frps=y
-# CONFIG_PACKAGE_luci-app-guest-wifi is not set
-CONFIG_PACKAGE_luci-app-hd-idle=y
-CONFIG_PACKAGE_luci-app-ikoolproxy=y
-CONFIG_PACKAGE_luci-app-ipsec-vpnd=y
-CONFIG_PACKAGE_luci-app-kodexplorer=y
-CONFIG_PACKAGE_luci-app-minidlna=y
-# CONFIG_PACKAGE_luci-app-mosdns is not set
-CONFIG_PACKAGE_luci-app-mwan3=y
-CONFIG_PACKAGE_luci-app-mwan3helper=y
-CONFIG_PACKAGE_luci-app-n2n_v2=y
-CONFIG_PACKAGE_luci-app-netdata=y
-CONFIG_PACKAGE_luci-app-nfs=y
-CONFIG_PACKAGE_luci-app-nlbwmon=y
-CONFIG_PACKAGE_luci-app-nps=y
-CONFIG_PACKAGE_luci-app-oaf=y
-CONFIG_PACKAGE_luci-app-openclash=y
-CONFIG_PACKAGE_luci-app-openvpn-server=y
-CONFIG_PACKAGE_luci-app-passwall=y
-CONFIG_PACKAGE_luci-app-passwall_Transparent_Proxy=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Brook=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_ChinaDNS_NG=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Haproxy=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Hysteria=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_IPv6_Nat=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_NaiveProxy=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Libev_Client=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Libev_Server=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Rust_Client=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Rust_Server=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_ShadowsocksR_Libev_Client=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_ShadowsocksR_Libev_Server=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Simple_Obfs=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Trojan_GO=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Trojan_Plus=y
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_V2ray=y
-# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_V2ray_Plugin is not set
-CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Xray=y
-# CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Xray_Plugin is not set
-CONFIG_PACKAGE_luci-app-passwall2=y
-CONFIG_PACKAGE_luci-app-passwall2_Transparent_Proxy=y
-CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_Brook=y
-CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_Hysteria=y
-CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_IPv6_Nat=y
-CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_NaiveProxy=y
-CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_Shadowsocks_Libev_Client=y
-CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_Shadowsocks_Libev_Server=y
-CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_Shadowsocks_Rust_Client=y
-CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_Shadowsocks_Rust_Server=y
-CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_ShadowsocksR_Libev_Client=y
-CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_ShadowsocksR_Libev_Server=y
-CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_Simple_Obfs=y
-CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_V2ray=y
-# CONFIG_PACKAGE_luci-app-passwall2_INCLUDE_V2ray_Plugin is not set
-CONFIG_PACKAGE_luci-app-poweroff=y
-CONFIG_PACKAGE_luci-app-pptp-server=y
-CONFIG_PACKAGE_luci-app-pushbot=y
-CONFIG_PACKAGE_luci-app-qbittorrent=y
-# CONFIG_PACKAGE_luci-app-qbittorrent_static is not set
-CONFIG_PACKAGE_luci-app-qbittorrent_dynamic=y
-CONFIG_PACKAGE_luci-app-ramfree=y
-CONFIG_PACKAGE_luci-app-rclone=y
-# CONFIG_PACKAGE_luci-app-samba is not set
-CONFIG_PACKAGE_luci-app-samba4=y
-CONFIG_PACKAGE_luci-app-serverchan=y
-CONFIG_PACKAGE_luci-app-smartdns=y
-CONFIG_PACKAGE_luci-app-softethervpn=y
-CONFIG_PACKAGE_luci-app-sqm=y
-CONFIG_PACKAGE_luci-app-ssr-plus=y
-# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_NONE_V2RAY is not set
-# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_V2ray is not set
-CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Xray=y
-# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_SagerNet_Core is not set
-CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Kcptun=y
-CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Hysteria=y
-CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_IPT2Socks=y
-CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_NaiveProxy=y
-CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Redsocks2=y
-CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Libev_Client=y
-CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Libev_Server=y
-CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Rust_Client=y
-CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Rust_Server=y
-CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_ShadowsocksR_Libev_Client=y
-CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_ShadowsocksR_Libev_Server=y
-CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Simple_Obfs=y
-CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Trojan=y
-# CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_V2ray_Plugin is not set
-CONFIG_PACKAGE_luci-app-syncdial=y
-CONFIG_PACKAGE_luci-app-transmission=y
-CONFIG_PACKAGE_luci-app-ttyd=y
-CONFIG_PACKAGE_luci-app-turboacc=y
-CONFIG_PACKAGE_luci-app-turboacc_INCLUDE_OFFLOADING=y
-# CONFIG_PACKAGE_luci-app-turboacc_INCLUDE_SHORTCUT_FE_DRV is not set
-# CONFIG_PACKAGE_luci-app-turboacc_INCLUDE_SHORTCUT_FE is not set
-CONFIG_PACKAGE_luci-app-turboacc_INCLUDE_BBR_CCA=y
-CONFIG_PACKAGE_luci-app-turboacc_INCLUDE_DNSFORWARDER=y
-CONFIG_PACKAGE_luci-app-turboacc_INCLUDE_DNSPROXY=y
-CONFIG_PACKAGE_luci-app-udpxy=y
-CONFIG_PACKAGE_luci-app-uhttpd=y
-CONFIG_PACKAGE_luci-app-unblockmusic=y
-CONFIG_PACKAGE_luci-app-unblockmusic_INCLUDE_UnblockNeteaseMusic_Go=y
-CONFIG_PACKAGE_luci-app-unblockmusic_INCLUDE_UnblockNeteaseMusic_NodeJS=y
-CONFIG_PACKAGE_luci-app-upnp=y
-CONFIG_PACKAGE_luci-app-usb-printer=y
-CONFIG_PACKAGE_luci-app-uugamebooster=y
-CONFIG_PACKAGE_luci-app-v2ray-server=y
-CONFIG_PACKAGE_luci-app-verysync=y
-CONFIG_PACKAGE_luci-app-vlmcsd=y
-CONFIG_PACKAGE_luci-app-vsftpd=y
-CONFIG_PACKAGE_luci-app-vssr=y
-CONFIG_PACKAGE_luci-app-vssr_INCLUDE_Xray=y
-CONFIG_PACKAGE_luci-app-vssr_INCLUDE_Trojan=y
-CONFIG_PACKAGE_luci-app-vssr_INCLUDE_Kcptun=y
-CONFIG_PACKAGE_luci-app-vssr_INCLUDE_Xray_plugin=y
-CONFIG_PACKAGE_luci-app-vssr_INCLUDE_ShadowsocksR_Libev_Server=y
-# CONFIG_PACKAGE_luci-app-watchcat is not set
-# CONFIG_PACKAGE_luci-app-webadmin is not set
-# CONFIG_PACKAGE_luci-app-wifischedule is not set
-# CONFIG_PACKAGE_luci-app-wireguard is not set
-CONFIG_PACKAGE_luci-app-wol=y
-CONFIG_PACKAGE_luci-app-wrtbwmon=y
-CONFIG_PACKAGE_luci-app-xlnetacc=y
-CONFIG_PACKAGE_luci-app-zerotier=y
-
-# LuCI-theme
-CONFIG_PACKAGE_luci-theme-argon=y
-CONFIG_PACKAGE_luci-theme-atmaterial=y
-CONFIG_PACKAGE_luci-theme-darkmatter=y
-CONFIG_PACKAGE_luci-theme-edge=y
-CONFIG_PACKAGE_luci-theme-infinityfreedom=y
-CONFIG_PACKAGE_luci-theme-neobird=y
-CONFIG_PACKAGE_luci-theme-netgear=y
-CONFIG_PACKAGE_luci-theme-opentomcat=y
-CONFIG_PACKAGE_luci-theme-opentopd=y
-CONFIG_PACKAGE_luci-theme-rosy=y
-
-# Software
-# CONFIG_PACKAGE_autosamba is not set
-CONFIG_PACKAGE_alpine-keys=y
-CONFIG_PACKAGE_alpine-repositories=y
-CONFIG_PACKAGE_apk=y
-CONFIG_PACKAGE_ariang=y
-CONFIG_PACKAGE_attr=y
-CONFIG_PACKAGE_autocore-arm=y
-CONFIG_PACKAGE_automount=y
-CONFIG_PACKAGE_bash=y
-CONFIG_PACKAGE_bind-dig=y
-CONFIG_PACKAGE_bind-host=y
-CONFIG_PACKAGE_blkid=y
-CONFIG_PACKAGE_bsdtar=y
-CONFIG_PACKAGE_btrfs-progs=y
-CONFIG_PACKAGE_bzip2=y
-CONFIG_PACKAGE_coremark=y
-CONFIG_PACKAGE_ddns-scripts_cloudflare.com-v4=y
-CONFIG_PACKAGE_ddns-scripts_freedns_42_pl=y
-CONFIG_PACKAGE_ddns-scripts_godaddy.com-v1=y
-CONFIG_PACKAGE_ddns-scripts_no-ip_com=y
-CONFIG_PACKAGE_ddns-scripts_nsupdate=y
-CONFIG_PACKAGE_ddns-scripts_route53-v1=y
-CONFIG_PACKAGE_docker-compose=y
-CONFIG_PACKAGE_e2fsprogs=y
-CONFIG_PACKAGE_f2fs-tools=y
-CONFIG_PACKAGE_f2fsck=y
-CONFIG_PACKAGE_fdisk=y
-CONFIG_PACKAGE_fstrim=y
-CONFIG_PACKAGE_getopt=y
-CONFIG_PACKAGE_gpioctl-sysfs=y
-CONFIG_PACKAGE_gpiod-tools=y
-CONFIG_PACKAGE_gzip=y
-CONFIG_PACKAGE_hostapd=y
-CONFIG_PACKAGE_hostapd-common=y
-CONFIG_PACKAGE_hostapd-utils=y
-CONFIG_PACKAGE_htop=y
-CONFIG_PACKAGE_iperf=y
-CONFIG_PACKAGE_iperf3=y
-CONFIG_PACKAGE_irqbalance=y
-CONFIG_PACKAGE_iw=y
-CONFIG_PACKAGE_iwinfo=y
-CONFIG_PACKAGE_lsblk=y
-CONFIG_PACKAGE_lscpu=y
-CONFIG_PACKAGE_mentohust=y
-CONFIG_PACKAGE_mkf2fs=y
-CONFIG_PACKAGE_nano=y
-CONFIG_PACKAGE_openssh-sftp-client=y
-CONFIG_PACKAGE_openssh-sftp-server=y
-CONFIG_PACKAGE_parted=y
-CONFIG_PACKAGE_ppp-mod-pptp=y
-CONFIG_PACKAGE_resize2fs=y
-CONFIG_PACKAGE_rsync=y
-CONFIG_PACKAGE_rsyncd=y
-CONFIG_PACKAGE_screen=y
-CONFIG_PACKAGE_snmpd=y
-CONFIG_PACKAGE_tmate=y
-CONFIG_PACKAGE_tmux=y
-CONFIG_PACKAGE_tree=y
-CONFIG_PACKAGE_unzip=y
-CONFIG_PACKAGE_usbutils=y
-CONFIG_PACKAGE_vim-fuller=y
-CONFIG_PACKAGE_whereis=y
-CONFIG_PACKAGE_luci-proto-wireguard=y
-CONFIG_PACKAGE_wireguard-tools=y
-CONFIG_PACKAGE_wpad=y
-CONFIG_PACKAGE_xl2tpd=y
-CONFIG_PACKAGE_zsh=y
-
-# IPv6
-CONFIG_PACKAGE_6in4=y
-CONFIG_PACKAGE_dnsmasq_full_dhcpv6=y
-CONFIG_PACKAGE_ipv6helper=y
-CONFIG_PACKAGE_ip6tables=y
-CONFIG_PACKAGE_ip6tables-extra=y
-CONFIG_PACKAGE_ip6tables-mod-nat=y
diff --git a/x86/diy-part1.sh b/x86/diy-part1.sh
deleted file mode 100644
index 0eff2c9d00..0000000000
--- a/x86/diy-part1.sh
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/bash
-#===============================================
-# Description: DIY script part 1
-# File name: diy-part1.sh
-# Lisence: MIT
-# Author: P3TERX
-# Blog: https://p3terx.com
-#===============================================
-
-# Uncomment a feed source
-#sed -i 's/^#\(.*helloworld\)/\1/' feeds.conf.default
-
-# Add a feed source
-#echo 'src-git helloworld https://github.com/fw876/helloworld' >>feeds.conf.default
-#echo 'src-git passwall https://github.com/xiaorouji/openwrt-passwall' >>feeds.conf.default
diff --git a/x86/diy-part2.sh b/x86/diy-part2.sh
deleted file mode 100644
index 35f9b3bc43..0000000000
--- a/x86/diy-part2.sh
+++ /dev/null
@@ -1,105 +0,0 @@
-#!/bin/bash
-#===============================================
-# Description: DIY script part 2
-# File name: diy-part2.sh
-# Lisence: MIT
-# Author: P3TERX
-# Blog: https://p3terx.com
-#===============================================
-
-# 修改默认IP
-# sed -i 's/192.168.1.1/10.10.10.10/g' package/base-files/files/bin/config_generate
-
-# 移除重复软件包
-rm -rf feeds/packages/net/mosdns
-rm -rf feeds/luci/themes/luci-theme-argon
-rm -rf feeds/luci/themes/luci-theme-netgear
-rm -rf feeds/luci/applications/luci-app-netdata
-rm -rf feeds/luci/applications/luci-app-wrtbwmon
-rm -rf feeds/luci/applications/luci-app-dockerman
-
-# 添加额外软件包
-git clone https://github.com/kongfl888/luci-app-adguardhome.git package/luci-app-adguardhome
-git clone https://github.com/jerrykuku/lua-maxminddb.git package/lua-maxminddb
-git clone https://github.com/jerrykuku/luci-app-vssr.git package/luci-app-vssr
-git clone https://github.com/tty228/luci-app-serverchan.git package/luci-app-serverchan
-git clone https://github.com/iwrt/luci-app-ikoolproxy.git package/luci-app-ikoolproxy
-git clone https://github.com/esirplayground/luci-app-poweroff package/luci-app-poweroff
-git clone https://github.com/destan19/OpenAppFilter.git package/OpenAppFilter
-git clone https://github.com/kiddin9/luci-app-dnsfilter package/luci-app-dnsfilter
-svn co https://github.com/haiibo/packages/trunk/luci-app-advanced package/luci-app-advanced
-svn co https://github.com/kiddin9/openwrt-packages/trunk/luci-app-eqos package/luci-app-eqos
-svn co https://github.com/kiddin9/openwrt-bypass/trunk/luci-app-bypass package/luci-app-bypass
-svn co https://github.com/Lienol/openwrt-package/trunk/luci-app-filebrowser package/luci-app-filebrowser
-svn co https://github.com/lisaac/luci-app-dockerman/trunk/applications/luci-app-dockerman package/luci-app-dockerman
-svn co https://github.com/sirpdboy/sirpdboy-package/trunk/luci-app-smartdns package/luci-app-smartdns
-svn co https://github.com/sirpdboy/sirpdboy-package/trunk/luci-app-netdata package/luci-app-netdata
-
-# 科学上网插件依赖
-svn co https://github.com/vernesong/OpenClash/trunk/luci-app-openclash package/luci-app-openclash
-# 编译 po2lmo (如果有po2lmo可跳过)
-pushd package/luci-app-openclash/tools/po2lmo
-make && sudo make install
-popd
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/brook package/brook
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/chinadns-ng package/chinadns-ng
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/tcping package/tcping
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/trojan-go package/trojan-go
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/trojan-plus package/trojan-plus
-svn co https://github.com/xiaorouji/openwrt-passwall/branches/luci/luci-app-passwall package/luci-app-passwall
-svn co https://github.com/xiaorouji/openwrt-passwall2/trunk/luci-app-passwall2 package/luci-app-passwall2
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/xray-core package/xray-core
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/xray-plugin package/xray-plugin
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/ssocks package/ssocks
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/hysteria package/hysteria
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/v2ray-plugin package/v2ray-plugin
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/v2ray-core package/v2ray-core
-svn co https://github.com/xiaorouji/openwrt-passwall/trunk/dns2tcp package/dns2tcp
-svn co https://github.com/fw876/helloworld/trunk/v2ray-geodata package/v2ray-geodata
-svn co https://github.com/fw876/helloworld/trunk/naiveproxy package/naiveproxy
-svn co https://github.com/fw876/helloworld/trunk/sagernet-core package/sagernet-core
-svn co https://github.com/fw876/helloworld/trunk/shadowsocks-rust package/shadowsocks-rust
-svn co https://github.com/fw876/helloworld/trunk/shadowsocksr-libev package/shadowsocksr-libev
-svn co https://github.com/fw876/helloworld/trunk/luci-app-ssr-plus package/luci-app-ssr-plus
-svn co https://github.com/fw876/helloworld/trunk/simple-obfs package/simple-obfs
-svn co https://github.com/fw876/helloworld/trunk/lua-neturl package/lua-neturl
-svn co https://github.com/fw876/helloworld/trunk/trojan package/trojan
-
-# Themes
-svn co https://github.com/haiibo/packages/trunk/luci-theme-edge package/luci-theme-edge
-svn co https://github.com/rosywrt/luci-theme-rosy/trunk/luci-theme-rosy package/luci-theme-rosy
-svn co https://github.com/haiibo/packages/trunk/luci-theme-darkmatter package/luci-theme-darkmatter
-svn co https://github.com/haiibo/packages/trunk/luci-theme-atmaterial package/luci-theme-atmaterial
-svn co https://github.com/haiibo/packages/trunk/luci-theme-opentomcat package/luci-theme-opentomcat
-svn co https://github.com/haiibo/packages/trunk/luci-theme-netgear package/luci-theme-netgear
-git clone https://github.com/xiaoqingfengATGH/luci-theme-infinityfreedom package/luci-theme-infinityfreedom
-git clone -b 18.06 https://github.com/jerrykuku/luci-theme-argon.git package/luci-theme-argon
-git clone https://github.com/jerrykuku/luci-app-argon-config package/luci-app-argon-config
-git clone https://github.com/sirpdboy/luci-theme-opentopd package/luci-theme-opentopd
-git clone https://github.com/thinktip/luci-theme-neobird package/luci-theme-neobird
-
-# MosDNS
-svn co https://github.com/QiuSimons/openwrt-mos/trunk/luci-app-mosdns package/luci-app-mosdns
-svn co https://github.com/QiuSimons/openwrt-mos/trunk/mosdns package/mosdns
-
-# DDNS.to
-svn co https://github.com/linkease/nas-packages-luci/trunk/luci/luci-app-ddnsto package/luci-app-ddnsto
-svn co https://github.com/linkease/nas-packages/trunk/network/services/ddnsto package/ddnsto
-
-# 流量监控
-svn co https://github.com/sirpdboy/sirpdboy-package/trunk/luci-app-wrtbwmon package/luci-app-wrtbwmon
-svn co https://github.com/sirpdboy/sirpdboy-package/trunk/wrtbwmon package/wrtbwmon
-
-# 修改makefile
-find package/*/ -maxdepth 2 -path "*/Makefile" | xargs -i sed -i 's/include\ \.\.\/\.\.\/luci\.mk/include \$(TOPDIR)\/feeds\/luci\/luci\.mk/g' {}
-find package/*/ -maxdepth 2 -path "*/Makefile" | xargs -i sed -i 's/include\ \.\.\/\.\.\/lang\/golang\/golang\-package\.mk/include \$(TOPDIR)\/feeds\/packages\/lang\/golang\/golang\-package\.mk/g' {}
-find package/*/ -maxdepth 2 -path "*/Makefile" | xargs -i sed -i 's/PKG_SOURCE_URL:=\@GHREPO/PKG_SOURCE_URL:=https:\/\/github\.com/g' {}
-find package/*/ -maxdepth 2 -path "*/Makefile" | xargs -i sed -i 's/PKG_SOURCE_URL:=\@GHCODELOAD/PKG_SOURCE_URL:=https:\/\/codeload\.github\.com/g' {}
-
-# 调整V2ray服务到VPN菜单
-sed -i 's/services/vpn/g' feeds/luci/applications/luci-app-v2ray-server/luasrc/controller/*.lua
-sed -i 's/services/vpn/g' feeds/luci/applications/luci-app-v2ray-server/luasrc/model/cbi/v2ray_server/*.lua
-sed -i 's/services/vpn/g' feeds/luci/applications/luci-app-v2ray-server/luasrc/view/v2ray_server/*.htm
-
-./scripts/feeds update -a
-./scripts/feeds install -a