op-packages/.github/workflows/upstream.yml
2026-06-18 22:22:09 +08:00

538 lines
35 KiB
YAML

#
# This is free software, lisence use MIT.
#
# <https://github.com/kiddin9/op-packages>
#
name: Merge-upstream
on:
push:
paths:
- '.github/workflows/upstream.yml'
- '.gitignore'
- '.github/diy/**'
schedule:
- cron: 0 */12 * * *
workflow_dispatch:
inputs:
ssh:
description: 'ssh'
required: false
default: 'true'
watch:
types: started
repository_dispatch:
jobs:
merge:
if: github.event.repository.owner.id == github.event.sender.id || ! github.event.sender.id || github.event.sender.id == '119362912'
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@main
with:
fetch-depth: 0
- uses: de-vri-es/setup-git-credentials@v2
with:
credentials: https://kiddin9:${{ secrets.TOKEN_KIDDIN9 }}@github.com/
- name: Set git identity
run : |
git config --global user.email "github-actions[bot]@users.noreply.github.com"
git config --global user.name "github-actions[bot]"
sudo timedatectl set-timezone "Asia/Shanghai"
- name: Syn upstream
run: |
shopt -s extglob
set +e
git rm -r --cache * >/dev/null 2>&1 &
rm -rf `find ./* -maxdepth 0 -type d ! -name ".github/diy"` >/dev/null 2>&1
function git_clone() {
git clone --depth 1 $1 $2
if [ "$?" != 0 ]; then
echo "error on $1"
pid="$( ps -q $$ )"
kill $pid
fi
}
function git_sparse_clone() {
trap 'rm -rf "$tmpdir"' EXIT
branch="$1" curl="$2" && shift 2
rootdir="$PWD"
tmpdir="$(mktemp -d)" || exit 1
if [ ${#branch} -lt 10 ]; then
git clone -b "$branch" --depth 1 --filter=blob:none --sparse "$curl" "$tmpdir"
cd "$tmpdir"
else
git clone --filter=blob:none --sparse "$curl" "$tmpdir"
cd "$tmpdir"
git checkout $branch
fi
if [ "$?" != 0 ]; then
echo "error on $curl"
exit 1
fi
git sparse-checkout init --cone
git sparse-checkout set "$@"
mv -n $@ $rootdir/ || true
cd $rootdir
}
function mvdir() {
mv -n `find $1/* -maxdepth 0 -type d` ./
rm -rf $1
}
(
git_clone https://github.com/kiddin9/my-packages && mvdir my-packages
git_clone https://github.com/kiddin9/openwrt-bypass && mvdir openwrt-bypass
git_clone https://github.com/kiddin9/luci-app-dnsfilter
git_clone https://github.com/kiddin9/aria2
git_clone https://github.com/kiddin9/luci-theme-edge
git_clone https://github.com/kiddin9/luci-app-xlnetacc
git_clone https://github.com/kiddin9/luci-app-wizard
git_clone https://github.com/kiddin9/luci-app-adguardhome
git_clone https://github.com/kiddin9/luci-app-cloudreve
git_clone https://github.com/kiddin9/openwrt-filebrowser && mvdir openwrt-filebrowser
# git_clone https://github.com/kiddin9/nginx-ui-openwrt && mvdir nginx-ui-openwrt
) &
(
git_clone https://github.com/kiddin9/openwrt-netdata netdata
git_clone https://github.com/kiddin9/luci-app-syscontrol
git_clone https://github.com/kiddin9/luci-app-chinadns-ng
git_clone https://github.com/kiddin9/openwrt-my-dnshelper && mvdir openwrt-my-dnshelper
git_clone https://github.com/kiddin9/openwrt-lingtigameacc && mvdir openwrt-lingtigameacc
git_clone https://github.com/kiddin9/luci-app-vsftpd
git_clone https://github.com/kiddin9/openwrt-subconverter && mvdir openwrt-subconverter
git_clone https://github.com/kiddin9/luci-app-syncdial
) &
(
git_clone https://github.com/Openwrt-Passwall/openwrt-passwall && mvdir openwrt-passwall
git_clone https://github.com/Openwrt-Passwall/openwrt-passwall-packages && mvdir openwrt-passwall-packages
git_clone https://github.com/sbwml/luci-app-mosdns openwrt-mos && mv -n openwrt-mos/{*mosdns,v2dat} ./; rm -rf openwrt-mos
git_clone https://github.com/Lienol/openwrt-package liep && rm -rf liep/other
git_clone https://github.com/rufengsuixing/luci-app-autoipsetadder
git_clone https://github.com/NateLol/luci-app-beardropper
git_clone https://github.com/riverscn/openwrt-iptvhelper && mvdir openwrt-iptvhelper
git_clone https://github.com/kongfl888/luci-app-timedreboot
git_clone https://github.com/sbwml/luci-app-webdav
git_clone https://github.com/sbwml/package_kernel_tcp-brutal
git_clone https://github.com/sbwml/luci-app-quickfile quickf && mvdir quickf
git_clone https://github.com/hudra0/luci-app-qosmate
) &
(
git_clone https://github.com/sirpdboy/luci-app-advancedplus
git_clone https://github.com/sirpdboy/luci-app-taskplan taskplan && mvdir taskplan
git_clone https://github.com/sirpdboy/luci-app-lucky oplucky && mvdir oplucky
git_clone https://github.com/sirpdboy/luci-app-partexp partexp && mvdir partexp
git_clone https://github.com/sirpdboy/netspeedtest speedtest && mvdir speedtest
git_clone https://github.com/sirpdboy/luci-app-parentcontrol
git_clone https://github.com/sirpdboy/luci-app-poweroffdevice poweroffdevice && mvdir poweroffdevice
git_clone https://github.com/sirpdboy/luci-app-watchdog watchdog1 && mvdir watchdog1
git_clone https://github.com/sirpdboy/luci-app-cupsd cupsd1 && mv -n cupsd1/{luci-app-cupsd,cups} ./ ; rm -rf cupsd1
git_clone https://github.com/sirpdboy/luci-app-timecontrol timecontrol && mvdir timecontrol
git_clone https://github.com/sirpdboy/luci-theme-kucat
git_clone https://github.com/sirpdboy/luci-app-kucat-config
git_clone https://github.com/sirpdboy/luci-app-chatgpt-web
git_clone https://github.com/sirpdboy/luci-app-eqosplus
git_clone https://github.com/sirpdboy/luci-app-netdata lucinetdata && mv lucinetdata/luci-app-netdata ./;rm -rf lucinetdata
) &
(
git_clone https://github.com/destan19/OpenAppFilter && mvdir OpenAppFilter
git_clone https://github.com/lvqier/luci-app-dnsmasq-ipset
git_clone https://github.com/walkingsky/luci-wifidog luci-app-wifidog
git_clone https://github.com/peter-tank/luci-app-autorepeater
git_clone https://github.com/brvphoenix/luci-app-wrtbwmon wrtbwmon1 && mvdir wrtbwmon1
git_clone https://github.com/brvphoenix/wrtbwmon wrtbwmon2 && mvdir wrtbwmon2
git_clone https://github.com/timsaya/luci-app-bandix bandix1 && mv -f bandix1/luci-app-bandix ./;rm -rf bandix1
git_clone https://github.com/timsaya/openwrt-bandix bandix2 && mv -f bandix2/openwrt-bandix ./;rm -rf bandix2
) &
(
git_clone https://github.com/everburstSun/tencentcloud-openwrt-plugin-ddns && mv -n tencentcloud-openwrt-plugin-ddns/tencentcloud_ddns ./luci-app-tencentddns; rm -rf tencentcloud-openwrt-plugin-ddns
git_clone https://github.com/Tencent-Cloud-Plugins/tencentcloud-openwrt-plugin-cos && mv -n tencentcloud-openwrt-plugin-cos/tencentcloud_cos ./luci-app-tencentcloud-cos; rm -rf tencentcloud-openwrt-plugin-cos
git_clone https://github.com/doushang/luci-app-shortcutmenu luci-shortcutmenu && mv -n luci-shortcutmenu/luci-app-shortcutmenu ./ ; rm -rf luci-shortcutmenu
git_clone https://github.com/aa65535/openwrt-dist-luci
# git_clone https://github.com/morytyann/OpenWrt-msd && mvdir OpenWrt-msd
# git_clone https://github.com/messense/aliyundrive-webdav aliyundrive && mv -n aliyundrive/openwrt/* ./ ; rm -rf aliyundrive
# git_clone https://github.com/sbilly/netmaker-openwrt && mv -n netmaker-openwrt/netmaker ./; rm -rf netmaker-openwrt
# git_clone https://github.com/lisaac/luci-app-dockerman dockerman && mv -n dockerman/applications/* ./; rm -rf dockerman
) &
(
git_clone https://github.com/ophub/luci-app-amlogic amlogic && mv -n amlogic/luci-app-amlogic ./;rm -rf amlogic
git_clone https://github.com/mingxiaoyu/luci-app-cloudflarespeedtest cloudflarespeedtest && mv -n cloudflarespeedtest/applications/* ./;rm -rf cloudflarespeedtest
git_clone https://github.com/Openwrt-Passwall/openwrt-passwall2 passwall2 && mv -n passwall2/luci-app-passwall2 ./;rm -rf passwall2
git_clone https://github.com/linkease/nas-packages && mv -n nas-packages/network/services/* ./; rm -rf nas-packages
git_clone https://github.com/linkease/nas-packages-luci && mv -n nas-packages-luci/luci/* ./; rm -rf nas-packages-luci
git_clone https://github.com/linkease/istore && mv -n istore/luci/* ./; rm -rf istore
#git_clone https://github.com/linkease/lcdsimple lcdsimple1 && mvdir lcdsimple1
) &
(
# git_clone https://github.com/frainzy1477/luci-app-clash
# git_clone https://github.com/peter-tank/luci-app-fullconenat
git_clone https://github.com/KFERMercer/luci-app-tcpdump
git_clone https://github.com/ykxVK8yL5L/pikpak-webdav pikpak && mv -n pikpak/openwrt/* ./;rm -rf pikpak
git_clone https://github.com/jjm2473/openwrt-apps && rm -rf openwrt-apps/{luci-app-cpufreq,luci-app-ota,homebox,luci-alias.mk} && sed -i "s/luci-alias.mk/..\/luci.mk/" openwrt-apps/*/Makefile && mvdir openwrt-apps
git_clone https://github.com/nikkinikki-org/OpenWrt-nikki && mv -f OpenWrt-nikki/{luci-app-nikki,nikki,mihomo*} ./;rm -rf OpenWrt-nikki
git_clone https://github.com/nikkinikki-org/OpenWrt-momo && mv -f OpenWrt-momo/{luci-app-momo,momo} ./;rm -rf OpenWrt-momo
git_clone https://github.com/fcshark-org/openwrt-fchomo && mvdir openwrt-fchomo
git clone https://github.com/fw876/helloworld -b dev && mvdir helloworld
) &
(
git_clone https://github.com/ZeaKyX/speedtest-web
git_clone https://github.com/ZeaKyX/luci-app-speedtest-web
git_clone https://github.com/linkease/openwrt-app-actions
git_clone https://github.com/Wulnut/luci-app-suselogin
git_clone https://github.com/mchome/openwrt-dogcom
git_clone https://github.com/lucikap/luci-app-brukamen && mv -n luci-app-brukamen/luci* ./;rm -rf luci-app-brukamen luci-app-autoshell_*.ipk
git_clone https://github.com/yichya/luci-app-xray yichya && mv -f yichya/status ./luci-app-xray-status;mv -f yichya/core ./luci-app-xray;rm -rf yichya
git_clone https://github.com/rafmilecki/luci-app-xjay
git_clone https://github.com/lwb1978/luci-app-timewol
) &
(
git_clone https://github.com/honwen/luci-app-aliddns
git_clone https://github.com/peter-tank/luci-app-dnscrypt-proxy2
git_clone https://github.com/sundaqiang/openwrt-packages && mv -n openwrt-packages/luci-* ./; rm -rf openwrt-packages
git_clone https://github.com/CHN-beta/rkp-ipid
git_clone https://github.com/2018nuoyan/openwrt_nezha && mv -n openwrt_nezha/*nezhav1 ./; rm -rf openwrt_nezha
git clone https://github.com/Ausaci/luci-app-nat6-helper -b main-dev
git_clone https://github.com/vernesong/OpenClash && mv -f OpenClash/luci-app-openclash ./; rm -rf OpenClash
) &
(
# git_clone https://github.com/zzsj0928/luci-app-pushbot
git_clone https://github.com/shanglanxin/luci-app-homebridge
git_clone https://github.com/ykxVK8yL5L/luci-app-synology synology && mv -n synology/luci-app-synology ./ && rm -rf synology
git_clone https://github.com/htynkn/openwrt-switch-lan-play && mv -n openwrt-switch-lan-play/package/* ./ && rm -rf openwrt-switch-lan-play
git_clone https://github.com/xptsp/luci-app-nodogsplash
git_clone https://github.com/xptsp/luci-mod-listening-ports
git_clone https://github.com/xptsp/luci-app-squid-adv
git_clone https://github.com/10000ge10000/luci-app-openclaw
) &
(
git_clone https://github.com/honwen/luci-app-shadowsocks-rust
git_clone https://github.com/Hyy2001X/AutoBuild-Packages && rm -rf AutoBuild-Packages/luci-app-adguardhome && mvdir AutoBuild-Packages
# git_clone https://github.com/lazywalker/mmdvm-openwrt && rm -rf mmdvm-openwrt/misc && mvdir mmdvm-openwrt
git_clone https://github.com/4IceG/luci-app-at-socat at-socat && mvdir at-socat
git_clone https://github.com/4IceG/luci-app-easyconfig-transfer easyconfig && mvdir easyconfig
git_clone https://github.com/4IceG/luci-app-atcommands atcommands && mvdir atcommands
git_clone https://github.com/wukongdaily/luci-app-run run1 && mvdir run1
) &
(
git_clone https://github.com/Diciya/luci-app-broadbandacc
git_clone https://github.com/wiwizcom/WiFiPortal && mvdir WiFiPortal
# git_clone https://github.com/vinewx/NanoHatOLED && mv NanoHatOLED/nanohatoled ./ && rm -rf NanoHatOLED
git_clone https://github.com/zerolabnet/luci-app-torbp
git_clone https://github.com/sbwml/luci-app-airconnect airconnect1 && mv airconnect1/* ./ && rm -rf airconnect1
# git_clone https://github.com/openwrtdiy/luci-app-pppoe-user
git_clone https://github.com/derisamedia/luci-theme-alpha
git_clone https://github.com/animegasan/luci-app-alpha-config
git_clone https://github.com/gofly/openwrt-luci-proto-tinc
git_clone https://github.com/hzyitc/mnh-openwrt && mvdir mnh-openwrt
) &
(
git_clone https://github.com/kenzok8/luci-app-daede daede && mv -f daede/*dae* ./;rm -rf daede
git_clone https://github.com/QiuSimons/luci-app-daed-next daed1 && mvdir daed1
git_clone https://github.com/JiaY-shi/fancontrol fanc && mv fanc/{fancontrol,luci-app-fancontrol} ./;rm -rf fanc
git_sparse_clone master "https://github.com/coolsnowwolf/lede" package/lean package/network/services/shellsync package/qca/shortcut-fe
git_clone https://github.com/Siriling/5G-Modem-Support && rm -rf 5G-Modem-Support/rooter && mvdir 5G-Modem-Support
git_clone https://github.com/linkease/istore-packages
git clone https://github.com/laipeng668/luci-app-gecoosac gecoosac1 && mvdir gecoosac1
) &
(
git_clone https://github.com/muink/luci-app-dnsproxy
git_clone https://github.com/muink/luci-app-einat
git_clone https://github.com/muink/openwrt-einat-ebpf
git_clone https://github.com/muink/openwrt-natmapt
git_clone https://github.com/muink/luci-app-natmapt
git_clone https://github.com/muink/openwrt-stuntman
git_clone https://github.com/muink/openwrt-alwaysonline
git_clone https://github.com/muink/luci-app-alwaysonline
git_clone https://github.com/muink/openwrt-rgmac
git_clone https://github.com/muink/luci-app-change-mac
git_clone https://github.com/muink/luci-app-packagesync
git_clone https://github.com/muink/luci-app-tn-netports
git_clone https://github.com/muink/openwrt-go-stun
git_clone https://github.com/muink/luci-app-tinyfilemanager
git_clone https://github.com/muink/openwrt-Toolkit
git_clone https://github.com/muink/openwrt-fastfetch
) &
(
git_clone https://github.com/gSpotx2f/luci-app-temp-status
git_clone https://github.com/gSpotx2f/luci-app-cpu-perf
git_clone https://github.com/gSpotx2f/luci-app-log
git_clone https://github.com/gSpotx2f/luci-app-internet-detector idetector && mv idetector/*internet-detector* ./;rm -rf idetector
git_clone https://github.com/gSpotx2f/luci-app-disks-info
git_clone https://github.com/gSpotx2f/luci-app-interfaces-statistics
git_clone https://github.com/gSpotx2f/luci-app-cpu-status-mini
git_clone https://github.com/gSpotx2f/luci-app-cpu-status
git_clone https://github.com/Carseason/openwrt-packages Carseason1 && mv -n Carseason1/*/* ./;mv services/* ./;rm -rf Carseason1 services
git_clone https://github.com/Carseason/openwrt-themedog && mv -n openwrt-themedog/luci/* ./;rm -rf openwrt-themedog
git_clone https://github.com/Carseason/openwrt-app-actions Carseason2 && mv -n Carseason2/applications/* ./;rm -rf Carseason2
git_clone https://github.com/Thaolga/openwrt-nekobox && mv openwrt-nekobox/luci-* ./;rm -rf openwrt-nekobox
git_clone https://github.com/nosignals/openwrt-neko && mv openwrt-neko/luci-app-neko ./;rm -rf openwrt-neko
) &
(
git_clone https://github.com/ilxp/luci-app-ikoolproxy
git_clone https://github.com/animegasan/luci-app-droidmodem
git_clone https://github.com/animegasan/luci-app-droidnet
git_clone https://github.com/animegasan/luci-app-ipinfo
git_clone https://github.com/animegasan/luci-app-dnsleaktest
git_clone https://github.com/animegasan/luci-app-gpioled
# git_clone https://github.com/hingbong/hickory-dns-openwrt && mvdir hickory-dns-openwrt
git_clone https://github.com/kenzok78/luci-app-guest-wifi
git_clone https://github.com/EkkoG/openwrt-natmap
git_clone https://github.com/EkkoG/luci-app-natmap
git_clone https://github.com/yichya/openwrt-hv-tools
# git_clone https://github.com/papagaye744/luci-theme-design
) &
(
git_clone https://github.com/EasyTier/luci-app-easytier luci-app-easytier1 && mvdir luci-app-easytier1
git_clone https://github.com/ntlf9t/luci-app-dnspod
git_clone https://github.com/lmq8267/luci-app-vnt opvnt && mv -f opvnt/luci-app-vnt ./;rm -rf opvnt
git_clone https://github.com/RymFred11/luci-app-nettask nettask && mv nettask/luci-app-nettask ./;rm -rf nettask
git_clone https://github.com/jarod360/luci-app-xupnpd
git_clone https://github.com/fuqiang03/openwrt-caddy
git_clone https://github.com/lmq8267/luci-app-caddy luci-caddy && mv luci-caddy/luci-app-caddy ./;rm -rf luci-caddy
git_clone https://github.com/sbwml/luci-app-smbuser
git_clone https://github.com/rushxrushx/luci-app-redsocks
git_clone https://github.com/luochongjun/luci-app-dynv6
git_clone https://github.com/nicholas9698/luci-app-campusnet
git_clone https://github.com/tanghammer/luci-app-switchtools
) &
(
git_clone https://github.com/kingyond/luci-app-accesscontrol-plus accesscontrol-plus && mv accesscontrol-plus/luci-app-accesscontrol-plus ./;rm -rf accesscontrol-plus
git_clone https://github.com/4IceG/luci-app-lite-watchdog lite-watchdog && mv lite-watchdog/luci-app-lite-watchdog ./;rm -rf lite-watchdog
git_clone https://github.com/Mitsuhaxy/luci-app-miniproxy
git_clone https://github.com/tkmsst/luci-app-cellularstatus cellularstatus && mv cellularstatus/luci/applications/* ./;rm -rf cellularstatus
# git_clone https://github.com/tracemouse/luci-app-coredns coredns && mv coredns/luci-app-coredns ./;rm -rf coredns
git_clone https://github.com/arenekosreal/luci-app-nginx
git_clone https://github.com/zfdx123/luci-app-school
git_clone https://github.com/tano-systems/luci-app-tn-lldpd
git_clone https://github.com/DRAWCORE/luci-app-qos-emong
# git_clone https://github.com/wintbiit/luci-app-sakurafrp
git_clone https://github.com/ykxVK8yL5L/luci-app-taskschedule taskschedule && mvdir taskschedule
#git_clone https://github.com/douo/luci-app-tinyfecvpn
) &
(
git_clone https://github.com/ttimasdf/luci-app-jederproxy
git_clone https://github.com/ApeaSuperz/luci-app-cqustdotnet cqustdotnet && mv cqustdotnet/luci-app-cqustdotnet ./;rm -rf cqustdotnet
git_clone https://github.com/xcode75/luci-app-xclient
git_clone https://github.com/chenzhen6666/luci-app-mproxy mproxy && mvdir mproxy
git_clone https://github.com/a904055262/luci-app-ipv6clientfilter
git_clone https://github.com/mukaiu/luci-app-domain-proxy
git_clone https://github.com/danielaskdd/luci-app-smartvpn
git_clone https://github.com/hequan2017/luci-app-forcedata
git_clone https://github.com/sbwml/luci-app-openlist2 oplist && mvdir oplist
git_clone https://github.com/AngelaCooljx/luci-theme-material3
git_clone https://github.com/eamonxg/luci-theme-aurora
) &
(
git_clone https://github.com/bobbyunknown/FusionTunX && mv -f FusionTunX/openwrt/* ./ && rm -rf FusionTunX
git_clone https://github.com/muink/luci-app-ssrust
git_clone https://github.com/hudra0/qosmate
git_clone https://github.com/xptsp/luci-app-ympd
git_clone https://github.com/xptsp/openwrt-ympd
git_clone https://github.com/xptsp/openwrt-peanut
git_clone https://github.com/calfeche13/luci-app-public-ip-monitor
git_sparse_clone master "https://github.com/coolsnowwolf/lede" package/wwan package/lean package/network/services/shellsync package/qca/shortcut-fe && cp -rf wwan/*/* ./ ; rm -Rf wwan
git_clone https://github.com/tty228/luci-app-wechatpush
git_clone https://github.com/sbwml/luci-app-mentohust mentohust1 && mvdir mentohust1
git_clone https://github.com/vernette/beszel-agent-openwrt && mvdir beszel-agent-openwrt
# git_clone https://github.com/natpierce/luci-app-natpierce natpierce && mv natpierce/luci-app-natpierce ./;rm -rf natpierce
) &
(
git_sparse_clone master "https://github.com/coolsnowwolf/packages" multimedia/UnblockNeteaseMusic-Go \
multimedia/UnblockNeteaseMusic multimedia/aliyundrive-webdav net/gowebdav net/kismet net/mstpd \
net/phtunnel net/headscale net/clouddrive2 net/baidupcs-go net/modemband net/daemonlogger net/geth net/gnurl \
net/uugamebooster net/pgyvpn net/vlmcsd net/ooniprobe net/polipo net/rosy-file-server net/qiyougamebooster \
net/sqm-scripts-extra net/tor-fw-helper net/vncrepeater net/verysync \
net/vpnbypass net/vpn-policy-routing utils/qfirehose
git_sparse_clone master "https://github.com/lunatickochiya/Matrix-Action-Openwrt" package/kochiya/brlaser package/kochiya/luci-app-banmac-ipt package/kochiya/luci-app-banmac-nft package/kochiya/luci-app-nvr package/kochiya/luci-app-openvpn-server package/kochiya/luci-app-openvpn-server-client
git_sparse_clone main https://github.com/sbwml/openwrt_pkgs luci-app-socat
) &
(
git_sparse_clone master "https://github.com/xiaoqingfengATGH/feeds-xiaoqingfeng" homeredirect luci-app-homeredirect
git_sparse_clone openwrt-25.12 "https://github.com/immortalwrt/immortalwrt" \
package/kernel/rtl8189es package/emortal/autocore package/emortal/automount \
package/emortal/cpufreq package/network/utils/fullconenat package/network/utils/fullconenat-nft \
package/utils/mhz package/utils/pcat-manager
) &
(
git_sparse_clone master "https://github.com/x-wrt/com.x-wrt" luci-app-macvlan luci-app-xwan
git_sparse_clone master "https://github.com/obsy/packages" oscam luci-proto-wwan 3ginfo
git_sparse_clone istoreos-24.10 "https://github.com/jjm2473/packages" utils/dockerd
git_sparse_clone v24.10 "https://github.com/teleofis/teleofis-feed" luci packages && rm -rf luci/luci-app-{pollmydevice,simman*,strongswan,pingcontrol} luci/luci-theme-teleofis && mvdir luci; \
rm -rf packages/{base-files*,*lt70*,cp210x-cfg,fbfdownloader,pollmydevice,simman*,pingcontrol} && mvdir packages
) &
(
git_sparse_clone develop "https://github.com/Ysurac/openmptcprouter-feeds" \
dsvpn glorytun-udp glorytun grpcurl ipcalc luci-app-dsvpn luci-app-glorytun-tcp luci-app-glorytun-udp luci-app-mail luci-app-mlvpn luci-app-mptcp luci-app-nginx-ha luci-app-sqm-autorate luci-app-packet-capture luci-app-iperf luci-theme-openmptcprouter sqm-autorate speedtestc mlvpn mptcp tcptraceroute tracebox tsping atinout z8102
git_sparse_clone chawrt/24.10 "https://github.com/liudf0716/luci" applications/luci-app-yt-dlp applications/luci-app-apfree-wifidog applications/luci-app-ss-redir
git_sparse_clone chawrt/24.10 "https://github.com/liudf0716/packages" net/ss-redir
) &
git_sparse_clone master "https://github.com/immortalwrt/packages" net/n2n net/qbittorrent \
net/amule net/cdnspeedtest net/minieap net/ddns-go net/sysuh3c net/3proxy net/cloudreve \
net/go-nats net/go-wol net/bitsrunlogin-go net/transfer net/udp2raw net/msd_lite \
net/subconverter net/ngrokc net/scutclient net/gost net/ua2f net/dufs net/qBittorrent-Enhanced-Edition \
net/tinyportmapper net/nexttrace net/rustdesk-server net/tuic-server \
net/ipset-lists net/ShadowVPN net/nps net/dnsforwarder \
net/ps3netsrv net/brook net/q \
net/vsftpd net/smartdns net/miniupnpd net/p910nd \
net/ariang libs/wxbase libs/rapidjson libs/libcron libs/quickjspp libs/toml11 libs/libdvbcsa \
libs/libdouble-conversion libs/qt6base libs/jpcre2 libs/alac libs/libcryptopp libs/antileech \
utils/qt6tools utils/cpulimit utils/sendat utils/cups-bjnp utils/rhash utils/boltbrowser \
utils/phicomm-k3screenctrl utils/joker utils/7z utils/dhrystone utils/supervisor utils/tinymembench utils/pcat-mgr utils/fan2go \
utils/coremark utils/watchcat multimedia/you-get multimedia/lux multimedia/gmediarender multimedia/ykdl multimedia/gallery-dl \
sound/spotifyd devel/go-rice devel/rust-bindgen admin/gotop \
lang/lua/lua-periphery lang/lua/lua-neturl lang/lua/lua-maxminddb lang/golang devel/gn
git_clone https://github.com/koshev-msk/modemfeed && mv -n modemfeed/*/!(telephony)/!(ookla-speedtest) ./; rm -rf modemfeed
git_sparse_clone openwrt-25.12 "https://github.com/immortalwrt/luci" applications collections/luci-nginx protocols/luci-proto-minieap protocols/luci-proto-quectel themes/luci-theme-argon
mv -f applications luciapp && rm -rf luciapp/luci-app-firewall
git_sparse_clone openwrt-25.12 "https://github.com/coolsnowwolf/luci" applications \
modules/luci-base modules/luci-mod-network modules/luci-mod-status modules/luci-mod-system protocols/luci-proto-openvpnc themes/luci-theme-design
mv -n applications/* luciapp/; rm -rf applications
git_sparse_clone master "https://github.com/coolsnowwolf/luci" libs/luci-lib-fs applications collections/luci-lib-docker
mv -n applications/* luciapp/; rm -rf applications
for ipk in $(ls -d luciapp/!(luci-app-rclone|luci-app-upnp|luci-app-dockerman|luci-app-firewall|luci-app-smartdns|luci-app-3ginfo-lite|luci-app-ddns|luci-app-ksmbd|luci-app-samba4|luci-app-watchcat|luci-app-transmission)/); do
if [[ $(ls $ipk/po | wc -l) -gt 4 ]]; then
rm -rf $ipk
fi
done
- name: Delete duplicated packages
run: |
shopt -s extglob
set +e
mv -n luciapp/!(luci-app-noddos|luci-app-filebrowser-go|luci-app-openvpn-server|luci-app-chrony|luci-app-kodexplorer|luci-app-cshark|luci-app-dnscrypt-proxy|luci-app-https-dns-proxy|luci-app-ssr-mudb-server|luci-app-ledtrig-*|luci-app-antiblock) ./ ; rm -Rf luciapp
mv -n lean/!(r8101|r8125|r8126|r8168) ./ ; rm -Rf lean
mv -n liep/!(luci-app-filebrowser) ./ ; rm -Rf liep
mv -n istore-packages/!(qBittorrent*|luci-app-qbittorrent-ee|baidupcs-web|luci-app-LingTiGameAcc|inter_i40e) ./;rm -rf istore-packages
mv -n openwrt-app-actions/applications/* ./;rm -rf openwrt-app-actions
rm -Rf */.git
for pkg in $(ls -d .github/diy/packages/*); do
mv -f $pkg/Makefile.k $pkg/Makefile >/dev/null 2>&1 || true
done
cp -rf .github/diy/packages/* ./ || true
for pkg in $(ls -d .github/diy/packages/*); do
mv -f $pkg/Makefile $pkg/Makefile.k >/dev/null 2>&1 || true
done
rm -rf */.github
- name: SSH connection to Actions
uses: kiddin9/debugger-action@master
if: github.event.inputs.ssh == 'true'
- name: Apply patches
run: |
find ".github/diy/patches" -type f -name '*.patch' -print0 | sort -z | xargs -I % -t -0 -n 1 sh -c "patch -d './' --no-backup-if-mismatch -p1 -F 1 --ignore-whitespace -i '%'" || (curl -k --data chat_id="${{ secrets.TELEGRAM_CHAT_ID }}" --data "text=❌ 软件包更新失败 😂 https://github.com/kiddin9/openwrt-packages/actions" "https://api.telegram.org/bot${{ secrets.TELEGRAM_TOKEN }}/sendMessage";exit 1)
- name: Modify
run: |
shopt -s extglob
set +e
sed -i \
-e "s/\(network\..*\)\.ifname/\1.device/g" \
`find \( -path "*/root/*" -o -path "*/files/*" -o -path "*/luasrc/*" \) ! -path "./base-files/*" ! -path "./dnsmasq/*" ! -path "./luci-base/*" ! -path "./ppp/*" -type f` &
# sed -i -e "s/\(killall .*\)-[0-9] /\1-3 /g" \
-e "s/killall \([^-]+*\)/killall -3 \1/g" \
`find \( -path "*/files/root/etc/init.d/*" -o -path "*/root/etc/init.d/*" -o -path "*/files/*.init" \) -type f` &
(
function latest() {
(curl -gs -H 'Content-Type: application/json' \
-H "Authorization: Bearer ${{ secrets.TOKEN_KIDDIN9 }}" \
-X POST -d '{ "query": "query {repository(owner: \"'"$1"'\", name: \"'"$2"'\"){latestRelease{tagName tagCommit{oid}}refs(refPrefix:\"refs/tags/\",last:1,orderBy:{field:TAG_COMMIT_DATE,direction:ASC}){edges{node{name target{oid}}}}defaultBranchRef{target{...on Commit {oid}}}}}"}' https://api.github.com/graphql)
}
for pkg in $(ls !(luci-*|nikki|mihomo*|openwrt-einat-ebpf|tuic-client|glorytun|dae|daed|shadowsocks-libev|mosdns|spotifyd|miniupnpd|openwrt-Toolkit|libdouble-conversion|wxbase|3proxy|ucode|mergerfs|openwrt-nezhav1|homebox|sub-web|tcptraceroute|frp|openwrt-caddy|mentohust|brlaser|rapidjson|smartdns|hysteria|gecoosac|libcryptopp|naiveproxy|rustdesk-server|shadowsocksr-libev|tuic-server|joker|ps3netsrv|natter|netmaker|openwrt-ympd|subconverter|sms-tool)/Makefile); do
repo="$(grep ^PKG_SOURCE_URL $pkg | grep github | cut -f 4-5 -d '/' | sed -e 's/.git//' | grep -E '[0-9a-zA-Z_-]+$')" || true
if [ "$repo" ]; then
owner="$(echo $repo | cut -f 1 -d '/')"
name="$(echo $repo | cut -f 2 -d '/')"
latest="$(latest $owner $name)"
sed -i "s/PKG_SOURCE_VERSION:=.*/PKG_SOURCE_VERSION:=$(echo $latest | jq -r '.data.repository.defaultBranchRef.target.oid')/" $pkg || true
over="$(grep -E PKG_VERSION:=.*$ $pkg | cut -f 2 -d '=' | sed -e 's/^\(v\|release-\)//' | grep -E "[0-9]")" || true
if [ "$over" ]; then
ver="$(echo $latest | jq -r '.data.repository.latestRelease.tagName' | sed -e 's/^\(v\|release-\)//' | grep -E "^[^()]*$" | grep -E "[0-9]")" || true
# [ "$ver" ] || ver="$(git ls-remote --tags git://github.com/$repo | cut -d/ -f3- | sort -t. -nk1,3 | awk '/^[^{]*$/{version=$1}END{print version}' | grep -o -E "[0-9].*")" || true
echo "$repo-$over-$ver"
if [ "$ver" ]; then
function version_lt() { test "$(echo "$@" | tr " " "\n" | sort -rV | head -n 1)" != "$1"; }
if version_lt "$over" "$ver"; then
latest="$(echo $latest | jq -r '.data.repository.latestRelease.tagCommit.oid' || echo $latest | jq -r '.data.repository.refs.edges[-1].node.target.oid')"
sed -i -e "s/PKG_SOURCE_VERSION:=.*/PKG_SOURCE_VERSION:=$latest/" \
-e "s/PKG_VERSION:=.*/PKG_VERSION:=$ver/" $pkg || true
fi || true
fi
fi
fi
done
touch /tmp/ok
) &
(
for pkg in $(ls -d */ | grep -v "naiveproxy" | grep -v "luci-app-store" | grep -v "luci-app-quickstart"); do
if [[ "$(grep "PKG_VERSION" $pkg/Makefile)" && ! "$(grep "PKG_RELEASE" $pkg/Makefile)" ]]; then
sed -i "s/\(PKG_VERSION:=.*\)/\1\nPKG_RELEASE:=/" $pkg/Makefile || true
fi
if [ "$(grep "PKG_RELEASE" $pkg/Makefile)" ]; then
sed -i "s/PKG_RELEASE:=.*/PKG_RELEASE:=$(git rev-list --count main $pkg)/" $pkg/Makefile || true
fi
done
touch /tmp/ok2
) &
sed -i \
-e 's?include \.\./\.\./\(lang\|devel\)?include $(TOPDIR)/feeds/packages/\1?' \
-e "s/\(\(^\| \| \)\(PKG_HASH\|PKG_MD5SUM\|PKG_MIRROR_HASH\|HASH\):=\).*/\1skip/" \
-e 's?include .*/luci.mk?include $(TOPDIR)/feeds/luci/luci.mk?' \
*/Makefile
sed -i 's/+docker\( \|$\)/+docker +dockerd /' luci-app-!(docker*)/Makefile
sed -i "s/192.168.0.1/10.0.0.1/g" luci-app-onekeyap/{htdocs/luci-static/resources/view/network/onekeyap.js,root/usr/libexec/onekeyap,root/etc/config/onekeyap}
sed -i "s/2026.6.1/3026.6.1/g" luci-app-passwall/luasrc/model/cbi/passwall/client/type/ray.lua
sed -i "s/2026.6.1/3026.6.1/g" luci-app-passwall2/luasrc/model/cbi/passwall2/client/type/ray.lua
chmod +x github/diy/*.sh
bash .github/diy/create_acl_for_luci.sh -a >/dev/null 2>&1 || true
bash .github/diy/convert_translation.sh -a >/dev/null 2>&1 || true
bash .github/diy/create_ucitrack_for_luci.sh -a >/dev/null 2>&1 || true
bash .github/diy/generate_ucitrack.sh -a >/dev/null 2>&1 || true
chmod -R +x luci-*/root/etc/init.d/ luci-*/root/bin/ luci-*/root/sbin/ luci-*/root/usr/libexec/ luci-*/root/usr/bin/ luci-*/root/usr/sbin/
find . -path "./luci-*/root/usr/share/*" -name "*.sh" -type f -exec chmod +x {} \;
#sed -i 's?"http://" + window.location.hostname?window.location.protocol + "//" + window.location.hostname?g' `find luci-app*/luasrc/view/ -maxdepth 2 -name "*.htm"`
sed -i "s/default n/default y/" dockerd/Config.in
sed -i "s/.tar.gz/.tar.xz/" openwrt-natmap/Makefile
mkdir -p luci-app-passwall/root/www/luci-static/passwall luci-app-passwall2/root/www/luci-static/passwall2 luci-app-ssr-plus/root/www/luci-static/shadowsocksr
cp -rf luci-app-bypass/root/www/luci-static/bypass/* luci-app-passwall/root/www/luci-static/passwall/
cp -rf luci-app-bypass/root/www/luci-static/bypass/* luci-app-passwall2/root/www/luci-static/passwall2/
cp -rf luci-app-bypass/root/www/luci-static/bypass/* luci-app-ssr-plus/root/www/luci-static/shadowsocksr/
echo ".page-container>div>div>a:first-child{display:none}" >>luci-app-quickstart/htdocs/luci-static/quickstart/style.css
sed -i 's/icon!=="baby"/icon!==""/' luci-app-quickstart/htdocs/luci-static/quickstart/index.js
sed -i 's/+php8-cgi /+php8-cgi +php8-fpm /' luci-theme-spectra/Makefile
while [[ ! -f /tmp/ok || ! -f /tmp/ok2 || ! -f /tmp/ok3 ]]; do
echo "wait"
sleep 1
done
- name: Apply
run: |
Emoji=("🎉" "🤞" "✨" "🎁" "🎈" "🎄" "🎨" "💋" "🍓" "🍕" "🍉" "💐" "🌴" "🚀" "🛸" "🗽" "⛅" "🌈" "🔥" "⛄" "🐶" "🏅" "🦄" "🐤")
git add .
git commit -m "${Emoji[$[$RANDOM % ${#Emoji[@]}]]} Sync $(date +%Y-%m-%d" "%H:%M:%S)"
for pkg in $(git diff-tree --no-commit-id --name-only HEAD | grep -v "naiveproxy" | grep -v "luci-app-store" | grep -v "luci-app-quickstart"); do
if [ "$(grep "PKG_RELEASE" $pkg/Makefile)" ]; then
sed -i "s/PKG_RELEASE:=.*/PKG_RELEASE:=$(git rev-list --count main $pkg)/" $pkg/Makefile || true
fi
done
git reset --soft HEAD^
git add .
git commit -m "${Emoji[$[$RANDOM % ${#Emoji[@]}]]} Sync $(date +%Y-%m-%d" "%H:%M:%S)"
git push -f
- name: Delete workflow runs
uses: Mattraks/delete-workflow-runs@main
continue-on-error: true
with:
retain_days: 1
keep_minimum_runs: 3