├── AmlImg ├── uboot.img ├── .gitattributes ├── README.md ├── dependson ├── diy-part2.sh ├── diy-part1.sh ├── .github └── workflows │ ├── update-checker.yml │ └── build-openwrt.yml ├── gen_burn_img.sh └── .config /AmlImg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xydche/onecloud-openwrt/HEAD/AmlImg -------------------------------------------------------------------------------- /uboot.img: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xydche/onecloud-openwrt/HEAD/uboot.img -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 2 | # 玩客云openwrt自动编译 3 | 4 | 集合常用插件,不定期编译。 5 | 6 | ## 使用方法 7 | 8 | 文件名包含burn的为线刷固件,解压后使用[Amlogic_USB_Burning_Tool](https://androiddatahost.com/khfj4)烧录。\ 9 | 红灯闪是在启动中,启动完成后蓝灯常亮。首次启动时间可能会长一些(五分钟左右)。 10 | 11 | - 登录ip: 192.168.10.99 12 | - 用户名: root 13 | - 密码: password 14 | 15 | ## 感谢 16 | - 自动编译工作流改自 https://github.com/P3TERX/Actions-OpenWrt 17 | - 玩客云u-boot https://github.com/hzyitc/u-boot-onecloud 18 | - openwrt源码 https://github.com/coolsnowwolf/lede 19 | - 线刷包打包工具 https://github.com/hzyitc/AmlImg 20 | - 打包脚本改自 https://github.com/shiyu1314/openwrt-onecloud 21 | - 所有为openwrt做出贡献的人 22 | -------------------------------------------------------------------------------- /dependson: -------------------------------------------------------------------------------- 1 | ack antlr3 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 libfuse-dev libglib2.0-dev libgmp3-dev libltdl-dev libmpc-dev libmpfr-dev libncurses5-dev libncursesw5-dev libpython3-dev libreadline-dev libssl-dev libtool lrzsz mkisofs msmtp ninja-build p7zip p7zip-full patch pkgconf python2.7 python3 python3-pyelftools python3-setuptools qemu-utils rsync scons squashfs-tools subversion swig texinfo uglifyjs upx-ucl unzip vim wget xmlto xxd zlib1g-dev 2 | -------------------------------------------------------------------------------- /diy-part2.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # https://github.com/P3TERX/Actions-OpenWrt 4 | # File name: diy-part2.sh 5 | # Description: OpenWrt DIY script part 2 (After Update feeds) 6 | # 7 | # Copyright (c) 2019-2024 P3TERX 8 | # 9 | # This is free software, licensed under the MIT License. 10 | # See /LICENSE for more information. 11 | # 12 | 13 | # Modify default IP 14 | sed -i 's/192.168.1.1/192.168.10.99/g' package/base-files/files/bin/config_generate 15 | 16 | # Modify default theme 17 | #sed -i 's/luci-theme-bootstrap/luci-theme-argon/g' feeds/luci/collections/luci/Makefile 18 | 19 | # Modify hostname 20 | sed -i 's/LEDE/OneCloud/g' package/base-files/files/bin/config_generate 21 | 22 | # 替换终端为bash 23 | sed -i 's/\/bin\/ash/\/bin\/bash/' package/base-files/files/etc/passwd 24 | -------------------------------------------------------------------------------- /diy-part1.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Copyright (c) 2019-2020 P3TERX 4 | # 5 | # This is free software, licensed under the MIT License. 6 | # See /LICENSE for more information. 7 | # 8 | # https://github.com/P3TERX/Actions-OpenWrt 9 | # File name: diy-part1.sh 10 | # Description: OpenWrt DIY script part 1 (Before Update feeds) 11 | # 12 | 13 | # Uncomment a feed source 14 | #sed -i 's/^#\(.*helloworld\)/\1/' feeds.conf.default 15 | 16 | # Add a feed source 17 | echo "src-git passwall_packages https://github.com/xiaorouji/openwrt-passwall-packages.git;main" >> "feeds.conf.default" 18 | echo "src-git passwall https://github.com/xiaorouji/openwrt-passwall.git;main" >> "feeds.conf.default" 19 | # sed -i '2s/^#//' feeds.conf.default 20 | # sed -i '3s/^/#/' feeds.conf.default 21 | echo 'src-git helloworld https://github.com/fw876/helloworld' >>feeds.conf.default 22 | -------------------------------------------------------------------------------- /.github/workflows/update-checker.yml: -------------------------------------------------------------------------------- 1 | # 2 | # https://github.com/P3TERX/Actions-OpenWrt 3 | # 4 | # File: .github/workflows/update-checker.yml 5 | # Description: Source code update checker 6 | # 7 | # Copyright (c) 2019-2024 P3TERX 8 | # 9 | # This is free software, licensed under the MIT License. 10 | # See /LICENSE for more information. 11 | # 12 | 13 | name: Update Checker 14 | 15 | env: 16 | REPO_URL: https://github.com/coolsnowwolf/lede 17 | REPO_BRANCH: master 18 | 19 | on: 20 | workflow_dispatch: 21 | # schedule: 22 | # - cron: 0 */18 * * * 23 | 24 | jobs: 25 | check: 26 | runs-on: ubuntu-latest 27 | 28 | steps: 29 | 30 | - name: Get Commit Hash 31 | id: getHash 32 | run: | 33 | git clone --depth 1 $REPO_URL -b $REPO_BRANCH . 34 | echo "commitHash=$(git rev-parse HEAD)" >> $GITHUB_OUTPUT 35 | 36 | - name: Compare Commit Hash 37 | id: cacheHash 38 | uses: actions/cache@v3 39 | with: 40 | path: .commitHash 41 | key: commitHash_${{ steps.getHash.outputs.commitHash }} 42 | 43 | - name: Save New Commit Hash 44 | if: steps.cacheHash.outputs.cache-hit != 'true' 45 | run: | 46 | echo ${{ steps.getHash.outputs.commitHash }} | tee .commitHash 47 | 48 | - name: Trigger build 49 | if: steps.cacheHash.outputs.cache-hit != 'true' 50 | uses: peter-evans/repository-dispatch@v2 51 | with: 52 | token: ${{ github.token }} 53 | event-type: Source Code Update 54 | 55 | - name: Delete workflow runs 56 | uses: Mattraks/delete-workflow-runs@v2 57 | with: 58 | retain_days: 0 59 | keep_minimum_runs: 2 -------------------------------------------------------------------------------- /gen_burn_img.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | sudo apt-get install img2simg 3 | ./AmlImg unpack ./uboot.img burn/ 4 | gzip -dk openwrt/bin/targets/*/*/*.gz 5 | 6 | diskimg_path="openwrt/bin/targets/*/*/*.img" 7 | boot_img_name="openwrt.img" 8 | boot_img_mnt="xd" 9 | rootfs_img_mnt="img" 10 | prefix=$(ls $diskimg_path | sed 's/\.img$//') 11 | burnimg_name="${prefix}.burn.img" 12 | 13 | diskimg=$(ls -1 $diskimg_path | head -n 1) 14 | loop=$(sudo losetup --find --show --partscan "$diskimg" | sed 's/[^[:print:]]//g') 15 | 16 | if [ -z "$loop" ]; then 17 | echo "Error: Failed to setup loop device." 18 | exit 1 19 | fi 20 | 21 | dd if=/dev/zero of="${boot_img_name}" bs=1M count=600 status=progress 22 | if [ $? -ne 0 ]; then 23 | echo "Error: Failed to create boot image." 24 | exit 1 25 | fi 26 | 27 | mkfs.ext4 "${boot_img_name}" 28 | if [ $? -ne 0 ]; then 29 | echo "Error: Failed to format boot image." 30 | exit 1 31 | fi 32 | 33 | mkdir -p "${boot_img_mnt}" "${rootfs_img_mnt}" 34 | sudo mount "${boot_img_name}" "${boot_img_mnt}" 35 | if [ $? -ne 0 ]; then 36 | echo "Error: Failed to mount boot image." 37 | exit 1 38 | fi 39 | 40 | sudo mount "${loop}p2" "${rootfs_img_mnt}" 41 | if [ $? -ne 0 ]; then 42 | echo "Error: Failed to mount rootfs partition." 43 | exit 1 44 | fi 45 | 46 | sudo cp -rp ${rootfs_img_mnt}/* "${boot_img_mnt}" 47 | sudo sync 48 | 49 | sudo umount "${boot_img_mnt}" || true 50 | sudo umount "${rootfs_img_mnt}" || true 51 | rm -rf "${boot_img_mnt}" "${rootfs_img_mnt}" 52 | 53 | sudo img2simg "${loop}p1" burn/boot.simg 54 | sudo img2simg "${boot_img_name}" burn/rootfs.simg 55 | sudo rm -f "${boot_img_name}" 56 | 57 | sudo losetup -d "$loop" || true 58 | 59 | printf "PARTITION:boot:sparse:boot.simg\nPARTITION:rootfs:sparse:rootfs.simg\n" >> burn/commands.txt 60 | 61 | ./AmlImg pack "${burnimg_name}" burn/ 62 | sha256sum "${burnimg_name}" > "${burnimg_name}.sha" 63 | xz -9 --threads=0 --compress "${burnimg_name}" 64 | rm -rf burn 65 | rm ${diskimg_path} 66 | echo "Script execution completed." 67 | -------------------------------------------------------------------------------- /.github/workflows/build-openwrt.yml: -------------------------------------------------------------------------------- 1 | # 2 | # https://github.com/P3TERX/Actions-OpenWrt 3 | # 4 | # File: .github/workflows/openwrt-bulder.yml 5 | # Description: Build OpenWrt using GitHub Actions 6 | # 7 | # Copyright (c) 2019-2024 P3TERX 8 | # 9 | # This is free software, licensed under the MIT License. 10 | # See /LICENSE for more information. 11 | # 12 | 13 | name: OpenWrt Builder 14 | 15 | on: 16 | repository_dispatch: 17 | workflow_dispatch: 18 | 19 | env: 20 | REPO_URL: https://github.com/coolsnowwolf/lede 21 | REPO_BRANCH: master 22 | FEEDS_CONF: feeds.conf.default 23 | CONFIG_FILE: .config 24 | DIY_P1_SH: diy-part1.sh 25 | DIY_P2_SH: diy-part2.sh 26 | GEN_BURN_IMG_SH: gen_burn_img.sh 27 | UPLOAD_FIRMWARE: true 28 | UPLOAD_RELEASE: true 29 | TZ: Asia/Shanghai 30 | 31 | jobs: 32 | build: 33 | runs-on: ubuntu-22.04 34 | 35 | steps: 36 | - name: 释放磁盘空间 37 | uses: jlumbroso/free-disk-space@main 38 | with: 39 | tool-cache: false 40 | android: true 41 | dotnet: true 42 | haskell: true 43 | large-packages: true 44 | docker-images: true 45 | swap-storage: true 46 | 47 | - name: Checkout 48 | uses: actions/checkout@main 49 | 50 | - name: Initialization environment 51 | env: 52 | DEBIAN_FRONTEND: noninteractive 53 | run: | 54 | sudo rm -rf /etc/apt/sources.list.d/* /usr/share/dotnet /usr/local/lib/android /opt/ghc /opt/hostedtoolcache/CodeQL 55 | sudo docker image prune --all --force 56 | sudo sed -i 's/azure\.//' /etc/apt/sources.list 57 | sudo -E apt-get -qq update 58 | sudo -E apt-get -qq install $(cat dependson) 59 | sudo -E apt-get -qq autoremove --purge 60 | sudo -E apt-get -qq clean 61 | sudo timedatectl set-timezone "$TZ" 62 | sudo mkdir -p /workdir 63 | sudo chown $USER:$GROUPS /workdir 64 | 65 | - name: Clone source code 66 | working-directory: /workdir 67 | run: | 68 | df -hT $PWD 69 | git clone $REPO_URL -b $REPO_BRANCH openwrt 70 | ln -sf /workdir/openwrt $GITHUB_WORKSPACE/openwrt 71 | 72 | - name: Load custom feeds 73 | run: | 74 | [ -e $FEEDS_CONF ] && mv $FEEDS_CONF openwrt/feeds.conf.default 75 | chmod +x $DIY_P1_SH 76 | cd openwrt 77 | $GITHUB_WORKSPACE/$DIY_P1_SH 78 | 79 | - name: Update feeds 80 | run: cd openwrt && ./scripts/feeds update -a 81 | 82 | - name: Install feeds 83 | run: cd openwrt && ./scripts/feeds install -a 84 | 85 | - name: Load custom configuration 86 | run: | 87 | [ -e files ] && mv files openwrt/files 88 | [ -e $CONFIG_FILE ] && mv $CONFIG_FILE openwrt/.config 89 | chmod +x $DIY_P2_SH 90 | cd openwrt 91 | $GITHUB_WORKSPACE/$DIY_P2_SH 92 | 93 | - name: Download package 94 | id: package 95 | run: | 96 | cd openwrt 97 | make defconfig 98 | make download -j8 99 | find dl -size -1024c -exec ls -l {} \; 100 | find dl -size -1024c -exec rm -f {} \; 101 | 102 | - name: Compile the firmware 103 | id: compile 104 | run: | 105 | set -e 106 | cd openwrt 107 | echo -e "$(nproc) thread compile" 108 | echo "status=failed" >> $GITHUB_OUTPUT 109 | if ! ( make -j$(nproc) || make -j1 || make -j1 V=s ); then 110 | echo "❌ Make failed" 111 | exit 1 112 | fi 113 | echo "status=success" >> $GITHUB_OUTPUT 114 | grep '^CONFIG_TARGET.*DEVICE.*=y' .config | sed -r 's/.*DEVICE_(.*)=y/\1/' > DEVICE_NAME 115 | [ -s DEVICE_NAME ] && echo "DEVICE_NAME=_$(cat DEVICE_NAME)" >> $GITHUB_ENV 116 | echo "FILE_DATE=_$(date +"%Y%m%d%H%M")" >> $GITHUB_ENV 117 | 118 | - name: 生成直刷包 119 | if: steps.compile.outputs.status == 'success' 120 | run: | 121 | chmod +x $GEN_BURN_IMG_SH 122 | chmod +x AmlImg 123 | $GITHUB_WORKSPACE/$GEN_BURN_IMG_SH 124 | 125 | - name: Check space usage 126 | if: (!cancelled()) 127 | run: df -hT 128 | 129 | - name: Organize files 130 | id: organize 131 | if: env.UPLOAD_FIRMWARE == 'true' && !cancelled() 132 | run: | 133 | cd openwrt/bin/targets/*/* 134 | rm -rf packages feeds.buildinfo version.buildinfo sha256sums profiles.json *.sha *.manifest 135 | echo "FIRMWARE=$PWD" >> $GITHUB_ENV 136 | echo "status=success" >> $GITHUB_OUTPUT 137 | 138 | - name: Upload firmware directory 139 | uses: actions/upload-artifact@main 140 | if: steps.organize.outputs.status == 'success' && !cancelled() 141 | with: 142 | name: OpenWrt_firmware${{ env.DEVICE_NAME }}${{ env.FILE_DATE }} 143 | path: ${{ env.FIRMWARE }} 144 | 145 | - name: Generate release tag 146 | id: tag 147 | if: env.UPLOAD_RELEASE == 'true' && !cancelled() 148 | run: | 149 | echo "release_tag=$(date +"%Y.%m.%d-%H%M")" >> $GITHUB_OUTPUT 150 | touch release.txt 151 | [ ${UPLOAD_GOFILE} = true && ${{ steps.gofile.outputs.url }} ] && echo "🔗 [GoFile](${{ steps.gofile.outputs.url }})" >> release.txt 152 | echo "status=success" >> $GITHUB_OUTPUT 153 | 154 | - name: Upload firmware to release 155 | uses: softprops/action-gh-release@v2.1.0 156 | if: steps.tag.outputs.status == 'success' && !cancelled() 157 | env: 158 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 159 | with: 160 | tag_name: ${{ steps.tag.outputs.release_tag }} 161 | body_path: release.txt 162 | files: ${{ env.FIRMWARE }}/* 163 | 164 | - name: Delete workflow runs 165 | uses: Mattraks/delete-workflow-runs@main 166 | with: 167 | retain_days: 0 168 | keep_minimum_runs: 2 169 | 170 | - name: Remove old Releases 171 | uses: dev-drprasad/delete-older-releases@master 172 | if: env.UPLOAD_RELEASE == 'true' && !cancelled() 173 | with: 174 | keep_latest: 3 175 | delete_tags: true 176 | env: 177 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 178 | 179 | - name: Send msg to Wechat 180 | env: 181 | SENDKEY: ${{ secrets.SENDKEY }} 182 | TAG: ${{ steps.tag.outputs.release_tag }} 183 | run: curl -d "text=OpenWrt编译结束&desp=https://github.com/${GITHUB_REPOSITORY}/releases/${TAG}" https://sctapi.ftqq.com/${SENDKEY}.send 184 | -------------------------------------------------------------------------------- /.config: -------------------------------------------------------------------------------- 1 | CONFIG_TARGET_amlogic=y 2 | CONFIG_TARGET_amlogic_meson8b=y 3 | CONFIG_TARGET_amlogic_meson8b_DEVICE_thunder-onecloud=y 4 | CONFIG_CGROUPFS_MOUNT_KERNEL_CGROUPS=y 5 | CONFIG_DOCKER_CGROUP_OPTIONS=y 6 | CONFIG_DOCKER_NET_MACVLAN=y 7 | CONFIG_DOCKER_OPTIONAL_FEATURES=y 8 | CONFIG_DOCKER_STO_EXT4=y 9 | CONFIG_KERNEL_ARM_PMU=y 10 | CONFIG_KERNEL_CFQ_GROUP_IOSCHED=y 11 | CONFIG_KERNEL_CGROUP_DEVICE=y 12 | CONFIG_KERNEL_CGROUP_FREEZER=y 13 | CONFIG_KERNEL_CGROUP_HUGETLB=y 14 | CONFIG_KERNEL_CGROUP_NET_PRIO=y 15 | CONFIG_KERNEL_CGROUP_PERF=y 16 | CONFIG_KERNEL_HUGETLBFS=y 17 | CONFIG_KERNEL_HUGETLB_PAGE=y 18 | CONFIG_KERNEL_MEMCG_SWAP_ENABLED=y 19 | CONFIG_KERNEL_NET_CLS_CGROUP=y 20 | CONFIG_KERNEL_PERF_EVENTS=y 21 | CONFIG_KERNEL_TRANSPARENT_HUGEPAGE=y 22 | CONFIG_KERNEL_TRANSPARENT_HUGEPAGE_ALWAYS=y 23 | CONFIG_PACKAGE_6in4=y 24 | CONFIG_PACKAGE_adblock-fast=y 25 | # CONFIG_PACKAGE_automount is not set 26 | CONFIG_PACKAGE_autosamba=y 27 | CONFIG_PACKAGE_bash=y 28 | CONFIG_PACKAGE_blkid=y 29 | CONFIG_PACKAGE_boost=y 30 | CONFIG_PACKAGE_boost-chrono=y 31 | CONFIG_PACKAGE_boost-random=y 32 | CONFIG_PACKAGE_boost-system=y 33 | CONFIG_PACKAGE_btrfs-progs=y 34 | CONFIG_PACKAGE_cgroupfs-mount=y 35 | CONFIG_PACKAGE_chinadns-ng=y 36 | CONFIG_PACKAGE_containerd=y 37 | CONFIG_PACKAGE_coreutils-nohup=y 38 | CONFIG_PACKAGE_ddns-scripts-cloudflare=y 39 | CONFIG_PACKAGE_dnsmasq_full_nftset=y 40 | CONFIG_PACKAGE_docker=y 41 | CONFIG_PACKAGE_dockerd=y 42 | # CONFIG_PACKAGE_etherwake is not set 43 | CONFIG_PACKAGE_firewall=m 44 | CONFIG_PACKAGE_firewall4=y 45 | CONFIG_PACKAGE_frpc=y 46 | CONFIG_PACKAGE_geoview=y 47 | CONFIG_PACKAGE_haproxy=y 48 | CONFIG_PACKAGE_haveged=y 49 | CONFIG_PACKAGE_hd-idle=y 50 | CONFIG_PACKAGE_ipt2socks=y 51 | CONFIG_PACKAGE_iptables-mod-conntrack-extra=m 52 | CONFIG_PACKAGE_iptables-mod-fullconenat=m 53 | # CONFIG_PACKAGE_iptables-mod-iprange is not set 54 | # CONFIG_PACKAGE_iptables-mod-socket is not set 55 | CONFIG_PACKAGE_ipv6helper=y 56 | CONFIG_PACKAGE_jansson=y 57 | CONFIG_PACKAGE_kmod-br-netfilter=y 58 | CONFIG_PACKAGE_kmod-crypto-acompress=y 59 | CONFIG_PACKAGE_kmod-crypto-ccm=y 60 | CONFIG_PACKAGE_kmod-crypto-cmac=y 61 | CONFIG_PACKAGE_kmod-crypto-ctr=y 62 | CONFIG_PACKAGE_kmod-crypto-des=y 63 | CONFIG_PACKAGE_kmod-crypto-gcm=y 64 | CONFIG_PACKAGE_kmod-crypto-gf128=y 65 | CONFIG_PACKAGE_kmod-crypto-ghash=y 66 | CONFIG_PACKAGE_kmod-crypto-hmac=y 67 | CONFIG_PACKAGE_kmod-crypto-md4=y 68 | CONFIG_PACKAGE_kmod-crypto-md5=y 69 | CONFIG_PACKAGE_kmod-crypto-rng=y 70 | CONFIG_PACKAGE_kmod-crypto-seqiv=y 71 | CONFIG_PACKAGE_kmod-crypto-sha256=y 72 | CONFIG_PACKAGE_kmod-crypto-sha3=y 73 | CONFIG_PACKAGE_kmod-crypto-sha512=y 74 | CONFIG_PACKAGE_kmod-dnsresolver=y 75 | CONFIG_PACKAGE_kmod-dummy=y 76 | CONFIG_PACKAGE_kmod-fs-btrfs=y 77 | CONFIG_PACKAGE_kmod-fs-cifs=y 78 | # CONFIG_PACKAGE_kmod-fs-exfat is not set 79 | # CONFIG_PACKAGE_kmod-fs-ext4 is not set 80 | CONFIG_PACKAGE_kmod-fs-ksmbd=y 81 | # CONFIG_PACKAGE_kmod-fs-ntfs3 is not set 82 | CONFIG_PACKAGE_kmod-fs-smbfs-common=y 83 | # CONFIG_PACKAGE_kmod-fs-vfat is not set 84 | CONFIG_PACKAGE_kmod-inet-diag=y 85 | CONFIG_PACKAGE_kmod-ipt-conntrack-extra=m 86 | CONFIG_PACKAGE_kmod-ipt-fullconenat=m 87 | # CONFIG_PACKAGE_kmod-ipt-iprange is not set 88 | CONFIG_PACKAGE_kmod-ipt-physdev=y 89 | # CONFIG_PACKAGE_kmod-ipt-socket is not set 90 | CONFIG_PACKAGE_kmod-iptunnel=y 91 | CONFIG_PACKAGE_kmod-iptunnel4=y 92 | # CONFIG_PACKAGE_kmod-lib-crc16 is not set 93 | CONFIG_PACKAGE_kmod-lib-crc32c=y 94 | CONFIG_PACKAGE_kmod-lib-lzo=y 95 | CONFIG_PACKAGE_kmod-lib-raid6=y 96 | CONFIG_PACKAGE_kmod-lib-xor=y 97 | CONFIG_PACKAGE_kmod-lib-zlib-deflate=y 98 | CONFIG_PACKAGE_kmod-lib-zlib-inflate=y 99 | CONFIG_PACKAGE_kmod-lib-zstd=y 100 | CONFIG_PACKAGE_kmod-netlink-diag=y 101 | CONFIG_PACKAGE_kmod-nf-ipvs=y 102 | CONFIG_PACKAGE_kmod-nft-core=y 103 | CONFIG_PACKAGE_kmod-nft-fib=y 104 | CONFIG_PACKAGE_kmod-nft-fullcone=y 105 | CONFIG_PACKAGE_kmod-nft-nat=y 106 | CONFIG_PACKAGE_kmod-nft-offload=y 107 | CONFIG_PACKAGE_kmod-nft-socket=y 108 | CONFIG_PACKAGE_kmod-nft-tproxy=y 109 | # CONFIG_PACKAGE_kmod-nls-cp437 is not set 110 | # CONFIG_PACKAGE_kmod-nls-iso8859-1 is not set 111 | CONFIG_PACKAGE_kmod-oid-registry=y 112 | # CONFIG_PACKAGE_kmod-scsi-core is not set 113 | CONFIG_PACKAGE_kmod-sit=y 114 | # CONFIG_PACKAGE_kmod-usb-core is not set 115 | # CONFIG_PACKAGE_kmod-usb-storage is not set 116 | # CONFIG_PACKAGE_kmod-usb-storage-extras is not set 117 | # CONFIG_PACKAGE_kmod-usb-storage-uas is not set 118 | CONFIG_PACKAGE_kmod-veth=y 119 | CONFIG_PACKAGE_ksmbd-server=y 120 | CONFIG_PACKAGE_libattr=y 121 | CONFIG_PACKAGE_libcap=y 122 | # CONFIG_PACKAGE_libcares is not set 123 | CONFIG_PACKAGE_libhavege=y 124 | CONFIG_PACKAGE_libltdl=y 125 | CONFIG_PACKAGE_liblua5.3=y 126 | CONFIG_PACKAGE_liblzma=y 127 | CONFIG_PACKAGE_liblzo=y 128 | # CONFIG_PACKAGE_libmbedtls is not set 129 | CONFIG_PACKAGE_libminiupnpc=y 130 | CONFIG_PACKAGE_libmount=y 131 | CONFIG_PACKAGE_libnatpmp=y 132 | CONFIG_PACKAGE_libnftnl=y 133 | CONFIG_PACKAGE_libnl-core=y 134 | CONFIG_PACKAGE_libnl-genl=y 135 | CONFIG_PACKAGE_libparted=y 136 | CONFIG_PACKAGE_libpcre2-16=y 137 | CONFIG_PACKAGE_libreadline=y 138 | CONFIG_PACKAGE_libseccomp=y 139 | CONFIG_PACKAGE_libuv=y 140 | CONFIG_PACKAGE_libwebsockets-full=y 141 | CONFIG_PACKAGE_lsblk=y 142 | CONFIG_PACKAGE_luci-app-adblock-fast=y 143 | CONFIG_PACKAGE_luci-app-adguardhome=y 144 | CONFIG_PACKAGE_luci-app-adguardhome_INCLUDE_binary=y 145 | CONFIG_PACKAGE_luci-app-advancedsetting=y 146 | CONFIG_PACKAGE_luci-app-cifs-mount=y 147 | CONFIG_PACKAGE_luci-app-diskman=y 148 | CONFIG_PACKAGE_luci-app-dockerman=y 149 | CONFIG_PACKAGE_luci-app-frpc=y 150 | CONFIG_PACKAGE_luci-app-hd-idle=y 151 | CONFIG_PACKAGE_luci-app-homeproxy=y 152 | CONFIG_PACKAGE_luci-app-ksmbd=y 153 | CONFIG_PACKAGE_luci-app-mosdns=y 154 | CONFIG_PACKAGE_luci-app-openlist=y 155 | CONFIG_PACKAGE_luci-app-p910nd=y 156 | CONFIG_PACKAGE_luci-app-passwall=y 157 | CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Geoview=y 158 | CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Haproxy=y 159 | CONFIG_PACKAGE_luci-app-passwall_INCLUDE_SingBox=y 160 | CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Xray=y 161 | CONFIG_PACKAGE_luci-app-passwall_Nftables_Transparent_Proxy=y 162 | CONFIG_PACKAGE_luci-app-qbittorrent=y 163 | # CONFIG_PACKAGE_luci-app-rclone_INCLUDE_rclone-ng is not set 164 | # CONFIG_PACKAGE_luci-app-rclone_INCLUDE_rclone-webui is not set 165 | CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_ChinaDNS_NG=y 166 | # CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_ShadowsocksR_Libev_Client is not set 167 | # CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_ShadowsocksR_Libev_Server is not set 168 | # CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Libev_Client is not set 169 | # CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Libev_Server is not set 170 | CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_NONE_Client=y 171 | CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_NONE_Server=y 172 | # CONFIG_PACKAGE_luci-app-ssr-plus_INCLUDE_Shadowsocks_Simple_Obfs is not set 173 | # CONFIG_PACKAGE_luci-app-ssr-plus_Iptables_Transparent_Proxy is not set 174 | CONFIG_PACKAGE_luci-app-ssr-plus_Nftables_Transparent_Proxy=y 175 | CONFIG_PACKAGE_luci-app-tailscale=y 176 | CONFIG_PACKAGE_luci-app-ttyd=y 177 | CONFIG_PACKAGE_luci-app-watchcat=y 178 | # CONFIG_PACKAGE_luci-app-wol is not set 179 | CONFIG_PACKAGE_luci-app-zerotier=y 180 | CONFIG_PACKAGE_luci-i18n-adblock-fast-zh-cn=y 181 | CONFIG_PACKAGE_luci-i18n-adguardhome-zh-cn=y 182 | CONFIG_PACKAGE_luci-i18n-advancedsetting-zh-cn=y 183 | CONFIG_PACKAGE_luci-i18n-cifs-mount-zh-cn=y 184 | CONFIG_PACKAGE_luci-i18n-diskman-zh-cn=y 185 | CONFIG_PACKAGE_luci-i18n-dockerman-zh-cn=y 186 | CONFIG_PACKAGE_luci-i18n-frpc-zh-cn=y 187 | CONFIG_PACKAGE_luci-i18n-hd-idle-zh-cn=y 188 | CONFIG_PACKAGE_luci-i18n-homeproxy-zh-cn=y 189 | CONFIG_PACKAGE_luci-i18n-ksmbd-zh-cn=y 190 | CONFIG_PACKAGE_luci-i18n-mosdns-zh-cn=y 191 | CONFIG_PACKAGE_luci-i18n-openlist-zh-cn=y 192 | CONFIG_PACKAGE_luci-i18n-p910nd-zh-cn=y 193 | CONFIG_PACKAGE_luci-i18n-passwall-zh-cn=y 194 | CONFIG_PACKAGE_luci-i18n-qbittorrent-zh-cn=y 195 | CONFIG_PACKAGE_luci-i18n-tailscale-zh-cn=y 196 | CONFIG_PACKAGE_luci-i18n-ttyd-zh-cn=y 197 | CONFIG_PACKAGE_luci-i18n-watchcat-zh-cn=y 198 | CONFIG_PACKAGE_luci-i18n-zerotier-zh-cn=y 199 | CONFIG_PACKAGE_luci-lib-docker=y 200 | CONFIG_PACKAGE_luci-theme-argon=y 201 | CONFIG_PACKAGE_luci-theme-material=y 202 | CONFIG_PACKAGE_mount-utils=y 203 | CONFIG_PACKAGE_nftables-json=y 204 | CONFIG_PACKAGE_openlist=y 205 | CONFIG_PACKAGE_p910nd=y 206 | CONFIG_PACKAGE_parted=y 207 | CONFIG_PACKAGE_qbittorrent=y 208 | CONFIG_PACKAGE_qt5-core=y 209 | CONFIG_PACKAGE_qt5-network=y 210 | CONFIG_PACKAGE_qt5-sql=y 211 | CONFIG_PACKAGE_qt5-xml=y 212 | CONFIG_PACKAGE_rblibtorrent=y 213 | CONFIG_PACKAGE_rng-tools=y 214 | CONFIG_PACKAGE_runc=y 215 | # CONFIG_PACKAGE_shadowsocks-libev-ss-local is not set 216 | # CONFIG_PACKAGE_shadowsocks-libev-ss-redir is not set 217 | # CONFIG_PACKAGE_shadowsocks-libev-ss-server is not set 218 | # CONFIG_PACKAGE_shadowsocksr-libev-ssr-local is not set 219 | # CONFIG_PACKAGE_shadowsocksr-libev-ssr-redir is not set 220 | # CONFIG_PACKAGE_shadowsocksr-libev-ssr-server is not set 221 | # CONFIG_PACKAGE_simple-obfs-client is not set 222 | CONFIG_PACKAGE_sing-box=y 223 | CONFIG_PACKAGE_smartmontools=y 224 | CONFIG_PACKAGE_tailscale=y 225 | CONFIG_PACKAGE_tini=y 226 | CONFIG_PACKAGE_ttyd=y 227 | CONFIG_PACKAGE_unzip=y 228 | CONFIG_PACKAGE_v2dat=y 229 | CONFIG_PACKAGE_v2ray-geoip=y 230 | CONFIG_PACKAGE_v2ray-geosite=y 231 | CONFIG_PACKAGE_watchcat=y 232 | CONFIG_PACKAGE_wsdd2=y 233 | CONFIG_PACKAGE_xz=y 234 | CONFIG_PACKAGE_xz-utils=y 235 | CONFIG_PACKAGE_zerotier=y 236 | CONFIG_PACKAGE_zoneinfo-asia=y 237 | CONFIG_PACKAGE_zoneinfo-core=y 238 | CONFIG_PARTED_READLINE=y 239 | CONFIG_SING_BOX_BUILD_ACME=y 240 | CONFIG_SING_BOX_BUILD_CLASH_API=y 241 | CONFIG_SING_BOX_BUILD_GVISOR=y 242 | CONFIG_SING_BOX_BUILD_QUIC=y 243 | CONFIG_SING_BOX_BUILD_TAILSCALE=y 244 | CONFIG_SING_BOX_BUILD_UTLS=y 245 | CONFIG_SING_BOX_BUILD_WIREGUARD=y 246 | CONFIG_TARGET_KERNEL_PARTSIZE=32 247 | CONFIG_TARGET_ROOTFS_PARTSIZE=600 248 | # CONFIG_TARGET_ROOTFS_SQUASHFS is not set 249 | CONFIG_boost-compile-visibility-hidden=y 250 | CONFIG_boost-runtime-shared=y 251 | CONFIG_boost-static-and-shared-libs=y 252 | CONFIG_boost-variant-release=y 253 | # CONFIG_PACKAGE_boost-program_options is not set 254 | # CONFIG_PACKAGE_libcares is not set 255 | # CONFIG_PACKAGE_libmbedtls is not set 256 | # CONFIG_PACKAGE_luci-app-passwall_INCLUDE_ShadowsocksR_Libev_Client is not set 257 | # CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Libev_Client is not set 258 | # CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Shadowsocks_Libev_Server is not set 259 | # CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Simple_Obfs is not set 260 | # CONFIG_PACKAGE_luci-app-passwall_INCLUDE_Trojan_Plus is not set 261 | # CONFIG_PACKAGE_luci-app-passwall_INCLUDE_V2ray_Plugin is not set 262 | # CONFIG_PACKAGE_shadowsocks-libev-ss-local is not set 263 | # CONFIG_PACKAGE_shadowsocks-libev-ss-redir is not set 264 | # CONFIG_PACKAGE_shadowsocks-libev-ss-server is not set 265 | # CONFIG_PACKAGE_shadowsocksr-libev-ssr-local is not set 266 | # CONFIG_PACKAGE_shadowsocksr-libev-ssr-redir is not set 267 | # CONFIG_PACKAGE_simple-obfs-client is not set 268 | # CONFIG_PACKAGE_trojan-plus is not set 269 | # CONFIG_PACKAGE_v2ray-plugin is not set 270 | --------------------------------------------------------------------------------