Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 19 additions & 14 deletions .github/workflows/build-openwrt.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ jobs:
runs-on: ubuntu-24.04
strategy:
matrix:
branch: [v24.10.4, openwrt-25.12]
config: [base.config, alderlake.config, tr3000_v1.config, tr3000_v1_ubootmod.config]
branch: [openwrt-25.12]
config: [base.config, alderlake.config, tr3000_v1.config]
# Add more branches/configs as needed
fail-fast: false # Optional: Allow other jobs to continue if one fails
outputs:
Expand Down Expand Up @@ -72,16 +72,6 @@ jobs:
echo 'export CC="ccache gcc"' >> $GITHUB_ENV
echo 'export CXX="ccache g++"' >> $GITHUB_ENV

- name: Restore caches (dl + ccache)
uses: actions/cache@v4
with:
path: |
immortalwrt/dl
~/.ccache
key: ${{ runner.os }}-immortalwrt-${{ matrix.branch }}-${{ matrix.config }}-${{ hashFiles(matrix.config) }}
restore-keys: |
${{ runner.os }}-immortalwrt-${{ matrix.branch }}-${{ matrix.config }}-

- name: Clone ImmortalWrt source code
run: |
echo "Cloning branch ${{ matrix.branch }}"
Expand All @@ -98,6 +88,15 @@ jobs:
run: |
echo "Using config: ${{ matrix.config }}"
cp "${{ github.workspace }}/${{ matrix.config }}" immortalwrt/.config

# # 25.12 package set compatibility: avoid file conflicts during package/install
# if [ "${{ matrix.branch }}" = "openwrt-25.12" ]; then
# sed -i '/^CONFIG_PACKAGE_luci-app-mosdns=/d' immortalwrt/.config
# sed -i '/^CONFIG_PACKAGE_luci-app-openvpn-server=/d' immortalwrt/.config
# echo '# CONFIG_PACKAGE_luci-app-mosdns is not set' >> immortalwrt/.config
# echo '# CONFIG_PACKAGE_luci-app-openvpn-server is not set' >> immortalwrt/.config
# fi

cp "${{ github.workspace }}/build.sh" immortalwrt/build.sh || true # Allow scripts to be optional
cp "${{ github.workspace }}/diy-part1.sh" immortalwrt/diy-part1.sh || true
cp "${{ github.workspace }}/diy-part2.sh" immortalwrt/diy-part2.sh || true
Expand Down Expand Up @@ -135,14 +134,20 @@ jobs:
run: |
cd immortalwrt

# Workaround: intel-microcode parallel build may fail with existing intel-ucode-ipkg dir
rm -rf build_dir/target-*/intel-microcode-*/intel-ucode-ipkg || true

MY_PERSONAL_ID="tosaki"
BUILD_DATE=$(date +"%Y%m%d")
CUSTOM_EXTRA_NAME="${MY_PERSONAL_ID}-${BUILD_DATE}"

echo -e "$(nproc) thread compile for ${{ matrix.branch }} / ${{ matrix.config }}"

make -j2 EXTRA_IMAGE_NAME="${CUSTOM_EXTRA_NAME}" || \
make -j1 V=s EXTRA_IMAGE_NAME="${CUSTOM_EXTRA_NAME}"
make -j$(nproc) EXTRA_IMAGE_NAME="${CUSTOM_EXTRA_NAME}" || { \
rm -rf build_dir/target-*/intel-microcode-*/*ipkg* tmp pkginfo 2>/dev/null || true; \
make package/firmware/intel-microcode/clean V=s || true; \
make -j1 V=s EXTRA_IMAGE_NAME="${CUSTOM_EXTRA_NAME}"; \
}

echo "status=success" >> $GITHUB_OUTPUT

Expand Down
66 changes: 52 additions & 14 deletions alderlake.config
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,8 @@ CONFIG_LIBCURL_CRYPTO_AUTH=y
CONFIG_LIBCURL_FILE=y
CONFIG_LIBCURL_FTP=y
CONFIG_LIBCURL_HTTP=y
CONFIG_LIBCURL_NGHTTP2=y
CONFIG_LIBCURL_HTTP2=y
CONFIG_LIBCURL_HTTP_AUTH=y
CONFIG_LIBCURL_OPENSSL=y
CONFIG_LIBCURL_PROXY=y
CONFIG_LIBCURL_TFTP=y
Expand Down Expand Up @@ -44,6 +45,7 @@ CONFIG_MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_PSK_ENABLED=y
CONFIG_MBEDTLS_SSL_TLS1_3_KEY_EXCHANGE_MODE_PSK_EPHEMERAL_ENABLED=y
CONFIG_MBEDTLS_THREADING_C=y
CONFIG_MBEDTLS_THREADING_PTHREAD=y
CONFIG_OPENVPN_openssl_ENABLE_DCO=y
CONFIG_OPENVPN_openssl_ENABLE_FRAGMENT=y
CONFIG_OPENVPN_openssl_ENABLE_LZ4=y
CONFIG_OPENVPN_openssl_ENABLE_LZO=y
Expand Down Expand Up @@ -74,7 +76,10 @@ CONFIG_PACKAGE_coreutils-nohup=y
CONFIG_PACKAGE_coreutils-sort=y
CONFIG_PACKAGE_curl=y
CONFIG_PACKAGE_dns2socks=y
CONFIG_PACKAGE_dosfstools=y
CONFIG_PACKAGE_etherwake=y
CONFIG_PACKAGE_exfat-fsck=y
CONFIG_PACKAGE_exfat-mkfs=y
CONFIG_PACKAGE_frpc=y
CONFIG_PACKAGE_frps=y
CONFIG_PACKAGE_gawk=y
Expand All @@ -89,6 +94,9 @@ CONFIG_PACKAGE_hysteria=y
CONFIG_PACKAGE_intel-microcode=y
CONFIG_PACKAGE_ip-full=y
CONFIG_PACKAGE_ipt2socks=y
CONFIG_PACKAGE_iptables-mod-ipopt=y
CONFIG_PACKAGE_iptables-nft=y
CONFIG_PACKAGE_irqbalance=y
CONFIG_PACKAGE_iw=y
CONFIG_PACKAGE_iwinfo=y
CONFIG_PACKAGE_iwlwifi-firmware-ax101=y
Expand All @@ -104,6 +112,7 @@ CONFIG_PACKAGE_iwlwifi-firmware-iwl8260c=y
CONFIG_PACKAGE_iwlwifi-firmware-iwl8265=y
CONFIG_PACKAGE_iwlwifi-firmware-iwl9000=y
CONFIG_PACKAGE_iwlwifi-firmware-iwl9260=y
CONFIG_PACKAGE_kmod-asn1-decoder=y
CONFIG_PACKAGE_kmod-cfg80211=y
CONFIG_PACKAGE_kmod-crypto-acompress=y
CONFIG_PACKAGE_kmod-crypto-blake2b=y
Expand All @@ -124,9 +133,13 @@ CONFIG_PACKAGE_kmod-crypto-xxhash=y
CONFIG_PACKAGE_kmod-dnsresolver=y
CONFIG_PACKAGE_kmod-fs-btrfs=y
CONFIG_PACKAGE_kmod-fs-cifs=y
CONFIG_PACKAGE_kmod-fs-msdos=y
CONFIG_PACKAGE_kmod-fs-netfs=y
CONFIG_PACKAGE_kmod-fs-smbfs-common=y
CONFIG_PACKAGE_kmod-ifb=y
CONFIG_PACKAGE_kmod-inet-diag=y
CONFIG_PACKAGE_kmod-ipt-core=y
CONFIG_PACKAGE_kmod-ipt-ipopt=y
CONFIG_PACKAGE_kmod-lib-lzo=y
CONFIG_PACKAGE_kmod-lib-raid6=y
CONFIG_PACKAGE_kmod-lib-xor=y
Expand All @@ -143,16 +156,22 @@ CONFIG_PACKAGE_kmod-mt7921e=y
CONFIG_PACKAGE_kmod-mt7922-firmware=y
CONFIG_PACKAGE_kmod-mt792x-common=y
CONFIG_PACKAGE_kmod-netlink-diag=y
CONFIG_PACKAGE_kmod-nf-ipt=y
CONFIG_PACKAGE_kmod-nf-socket=y
CONFIG_PACKAGE_kmod-nf-tproxy=y
CONFIG_PACKAGE_kmod-nft-bridge=y
CONFIG_PACKAGE_kmod-nft-compat=y
CONFIG_PACKAGE_kmod-nft-netdev=y
CONFIG_PACKAGE_kmod-nft-socket=y
CONFIG_PACKAGE_kmod-nft-tproxy=y
CONFIG_PACKAGE_kmod-nls-cp932=y
CONFIG_PACKAGE_kmod-nls-cp936=y
CONFIG_PACKAGE_kmod-nls-cp950=y
CONFIG_PACKAGE_kmod-nls-ucs2-utils=y
CONFIG_PACKAGE_kmod-oid-registry=y
CONFIG_PACKAGE_kmod-sched-cake=y
CONFIG_PACKAGE_kmod-sched-core=y
CONFIG_PACKAGE_kmod-tcp-bbr=y
CONFIG_PACKAGE_kmod-tun=y
CONFIG_PACKAGE_libatomic=y
CONFIG_PACKAGE_libattr=y
Expand All @@ -166,16 +185,24 @@ CONFIG_PACKAGE_libelf=y
CONFIG_PACKAGE_libev=y
CONFIG_PACKAGE_libffi=y
CONFIG_PACKAGE_libgd=y
CONFIG_PACKAGE_libiptext=y
CONFIG_PACKAGE_libiptext-nft=y
CONFIG_PACKAGE_libiptext6=y
CONFIG_PACKAGE_libjpeg-turbo=y
CONFIG_PACKAGE_libltdl=y
CONFIG_PACKAGE_liblua=y
CONFIG_PACKAGE_liblua5.3=y
CONFIG_PACKAGE_liblua5.4=y
CONFIG_PACKAGE_liblucihttp-lua=y
CONFIG_PACKAGE_liblz4=y
CONFIG_PACKAGE_liblzo=y
CONFIG_PACKAGE_libmbedtls=y
CONFIG_PACKAGE_libminiupnpc=y
CONFIG_PACKAGE_libmount=y
CONFIG_PACKAGE_libnatpmp=y
CONFIG_PACKAGE_libnghttp2=y
CONFIG_PACKAGE_libnl-core=y
CONFIG_PACKAGE_libnl-genl=y
CONFIG_PACKAGE_libopenssl-conf=y
CONFIG_PACKAGE_libparted=y
CONFIG_PACKAGE_libpcre2=y
Expand All @@ -185,34 +212,41 @@ CONFIG_PACKAGE_librrd1=y
CONFIG_PACKAGE_libruby=y
CONFIG_PACKAGE_libsqlite3=y
CONFIG_PACKAGE_libstdcpp=y
CONFIG_PACKAGE_libubus-lua=y
CONFIG_PACKAGE_libuci-lua=y
CONFIG_PACKAGE_libuv=y
CONFIG_PACKAGE_libwebp=y
CONFIG_PACKAGE_libwebsockets-full=y
CONFIG_PACKAGE_libxtables=y
CONFIG_PACKAGE_libyaml=y
CONFIG_PACKAGE_lsblk=y
CONFIG_PACKAGE_lua=y
CONFIG_PACKAGE_luci-app-adblock=y
CONFIG_PACKAGE_luci-app-argon-config=y
CONFIG_PACKAGE_luci-app-autoreboot=y
CONFIG_PACKAGE_luci-app-cloudflared=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-frpc=y
CONFIG_PACKAGE_luci-app-frps=y
CONFIG_PACKAGE_luci-app-hd-idle=y
CONFIG_PACKAGE_luci-app-irqbalance=y
CONFIG_PACKAGE_luci-app-lucky=y
CONFIG_PACKAGE_luci-app-mosdns=y
CONFIG_PACKAGE_luci-app-netdata=y
CONFIG_PACKAGE_luci-app-nft-qos=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_INCLUDE_Hysteria=y
CONFIG_PACKAGE_luci-app-sqm=y
CONFIG_PACKAGE_luci-app-statistics=y
CONFIG_PACKAGE_luci-app-ttyd=y
CONFIG_PACKAGE_luci-app-upnp=y
CONFIG_PACKAGE_luci-app-vnstat2=y
CONFIG_PACKAGE_luci-app-wol=y
CONFIG_PACKAGE_luci-app-zerotier=y
CONFIG_PACKAGE_luci-compat=y
CONFIG_PACKAGE_luci-i18n-adblock-zh-cn=y
CONFIG_PACKAGE_luci-i18n-argon-config-zh-cn=y
CONFIG_PACKAGE_luci-i18n-autoreboot-zh-cn=y
Expand All @@ -221,18 +255,24 @@ CONFIG_PACKAGE_luci-i18n-diskman-zh-cn=y
CONFIG_PACKAGE_luci-i18n-frpc-zh-cn=y
CONFIG_PACKAGE_luci-i18n-frps-zh-cn=y
CONFIG_PACKAGE_luci-i18n-hd-idle-zh-cn=y
CONFIG_PACKAGE_luci-i18n-irqbalance-zh-cn=y
CONFIG_PACKAGE_luci-i18n-lucky-zh-cn=y
CONFIG_PACKAGE_luci-i18n-mosdns-zh-cn=y
CONFIG_PACKAGE_luci-i18n-netdata-zh-cn=y
CONFIG_PACKAGE_luci-i18n-nft-qos-zh-cn=y
CONFIG_PACKAGE_luci-i18n-openvpn-server-zh-cn=y
CONFIG_PACKAGE_luci-i18n-passwall-zh-cn=y
CONFIG_PACKAGE_luci-i18n-sqm-zh-cn=y
CONFIG_PACKAGE_luci-i18n-statistics-zh-cn=y
CONFIG_PACKAGE_luci-i18n-ttyd-zh-cn=y
CONFIG_PACKAGE_luci-i18n-upnp-zh-cn=y
CONFIG_PACKAGE_luci-i18n-vnstat2-zh-cn=y
CONFIG_PACKAGE_luci-i18n-wol-zh-cn=y
CONFIG_PACKAGE_luci-i18n-zerotier-zh-cn=y
CONFIG_PACKAGE_luci-lib-base=y
CONFIG_PACKAGE_luci-lib-ip=y
CONFIG_PACKAGE_luci-lib-jsonc=y
CONFIG_PACKAGE_luci-lib-nixio=y
CONFIG_PACKAGE_luci-lua-runtime=y
CONFIG_PACKAGE_luci-theme-argon=y
CONFIG_PACKAGE_lucky=y
CONFIG_PACKAGE_microsocks=y
Expand All @@ -242,7 +282,6 @@ CONFIG_PACKAGE_mt7622bt-firmware=y
CONFIG_PACKAGE_mt7921bt-firmware=y
CONFIG_PACKAGE_mt7922bt-firmware=y
CONFIG_PACKAGE_netdata=y
CONFIG_PACKAGE_nft-qos=y
CONFIG_PACKAGE_openssl-util=y
CONFIG_PACKAGE_openvpn-easy-rsa=y
CONFIG_PACKAGE_openvpn-openssl=y
Expand All @@ -266,36 +305,32 @@ CONFIG_PACKAGE_shadowsocks-rust-ssserver=y
CONFIG_PACKAGE_simple-obfs-client=y
CONFIG_PACKAGE_sing-box=y
CONFIG_PACKAGE_smartmontools=y
CONFIG_PACKAGE_sqm-scripts=y
CONFIG_PACKAGE_tc-tiny=y
CONFIG_PACKAGE_tcping=y
CONFIG_PACKAGE_ttyd=y
CONFIG_PACKAGE_ucode-mod-digest=y
CONFIG_PACKAGE_ucode-mod-lua=y
CONFIG_PACKAGE_ucode-mod-nl80211=y
CONFIG_PACKAGE_ucode-mod-rtnl=y
CONFIG_PACKAGE_ucode-mod-uloop=y
CONFIG_PACKAGE_unzip=y
CONFIG_PACKAGE_v2dat=y
CONFIG_PACKAGE_v2ray-geoip=y
CONFIG_PACKAGE_v2ray-geosite=y
CONFIG_PACKAGE_v2ray-plugin=y
CONFIG_PACKAGE_vnstat2=y
CONFIG_PACKAGE_vnstati2=y
CONFIG_PACKAGE_wget-ssl=y
CONFIG_PACKAGE_wifi-scripts=y
CONFIG_PACKAGE_wireless-regdb=y
CONFIG_PACKAGE_wpa-cli=y
CONFIG_PACKAGE_wpad-basic-mbedtls=y
CONFIG_PACKAGE_xray-core=y
CONFIG_PACKAGE_xtables-nft=y
CONFIG_PACKAGE_zerotier=y
CONFIG_PACKAGE_zlib=y
CONFIG_PARTED_READLINE=y
CONFIG_PCRE2_JIT_ENABLED=y
CONFIG_RUBY_ENABLE_YJIT=y
CONFIG_SING_BOX_BUILD_ACME=y
CONFIG_SING_BOX_BUILD_CLASH_API=y
CONFIG_SING_BOX_BUILD_ECH=y
CONFIG_SING_BOX_BUILD_GVISOR=y
CONFIG_SING_BOX_BUILD_QUIC=y
CONFIG_SING_BOX_BUILD_REALITY_SERVER=y
CONFIG_SING_BOX_BUILD_UTLS=y
CONFIG_SING_BOX_BUILD_WIREGUARD=y
CONFIG_SQLITE3_COLUMN_METADATA=y
CONFIG_SQLITE3_DYNAMIC_EXTENSIONS=y
CONFIG_SQLITE3_FTS3=y
Expand All @@ -306,6 +341,9 @@ CONFIG_TARGET_KERNEL_PARTSIZE=128
# CONFIG_TARGET_ROOTFS_EXT4FS is not set
CONFIG_TARGET_ROOTFS_PARTSIZE=2048
# CONFIG_TARGET_ROOTFS_TARGZ is not set
CONFIG_USE_GC_SECTIONS=y
CONFIG_USE_LTO=y
CONFIG_USE_MOLD=y
CONFIG_WPA_MBO_SUPPORT=y
CONFIG_WPA_MSG_MIN_PRIORITY=3
CONFIG_DEVEL=y
Expand Down
Loading