61 lines
2.9 KiB
Bash
61 lines
2.9 KiB
Bash
#!/bin/bash
|
||
|
||
# 这个脚本的作用是从不同的仓库中克隆openwrt相关的代码,并进行一些处理
|
||
|
||
# 定义一个函数,用来克隆指定的仓库和分支
|
||
clone_repo() {
|
||
# 参数1是仓库地址,参数2是分支名,参数3是目标目录
|
||
repo_url=$1
|
||
branch_name=$2
|
||
target_dir=$3
|
||
# 克隆仓库到目标目录,并指定分支名和深度为1
|
||
git clone -b $branch_name --depth 1 $repo_url $target_dir
|
||
}
|
||
|
||
# 定义一些变量,存储仓库地址和分支名
|
||
openwrt_release="$(curl -s https://github.com/openwrt/openwrt/tags | grep -Eo "v[0-9\.]+\-*r*c*[0-9]*.tar.gz" | sed -n '/[2-9][4-9]/p' | sed -n 1p | sed 's/.tar.gz//g')"
|
||
immortalwrt_release="$(curl -s https://github.com/immortalwrt/immortalwrt/tags | grep -Eo "v[0-9\.]+\-*r*c*[0-9]*.tar.gz" | sed -n '/[2-9][4-9]/p' | sed -n 1p | sed 's/.tar.gz//g')"
|
||
openwrt_repo="https://github.com/openwrt/openwrt.git"
|
||
immortalwrt_repo="https://github.com/immortalwrt/immortalwrt.git"
|
||
openwrt_patch="https://github.com/oppen321/OpenWrt-Patch"
|
||
openwrt_add_repo="https://github.com/oppen321/openwrt-package"
|
||
dockerman_repo="https://github.com/oppen321/luci-app-dockerman"
|
||
golang_repo="https://github.com/sbwml/packages_lang_golang"
|
||
node_repo="https://github.com/sbwml/feeds_packages_lang_node-prebuilt"
|
||
nginx_repo="https://github.com/oppen321/feeds_packages_net_nginx"
|
||
default_settings="https://github.com/oppen321/default-settings"
|
||
miniupnpd_repo="https://git.kejizero.online/zhao/miniupnpd"
|
||
upnp_repo="https://git.kejizero.online/zhao/luci-app-upnp"
|
||
docker_repo="https://git.kejizero.online/zhao/packages_utils_docker"
|
||
dockerd_repo="https://git.kejizero.online/zhao/packages_utils_dockerd"
|
||
containerd_repo="https://git.kejizero.online/zhao/packages_utils_containerd"
|
||
runc_repo="https://git.kejizero.online/zhao/packages_utils_runc"
|
||
|
||
# 开始克隆仓库,并行执行
|
||
clone_repo $openwrt_repo $openwrt_release openwrt &
|
||
clone_repo $immortalwrt_repo $immortalwrt_release immortalwrt &
|
||
clone_repo $openwrt_repo openwrt-24.10 openwrt_24
|
||
clone_repo $openwrt_patch kernel-6.6 OpenWrt-Patch
|
||
clone_repo $openwrt_add_repo v24.10 openwrt-package
|
||
clone_repo $openwrt_add_repo helloworld helloworld
|
||
clone_repo $dockerman_repo main luci-app-dockerman
|
||
clone_repo $golang_repo 24.x golang
|
||
clone_repo $nginx_repo openwrt-24.10 nginx
|
||
clone_repo $node_repo packages-24.10 node
|
||
clone_repo $default_settings openwrt-24.10 default_settings
|
||
clone_repo $docker_repo main docker
|
||
clone_repo $dockerd_repo master dockerd
|
||
clone_repo $containerd_repo main containerd
|
||
clone_repo $runc_repo main runc
|
||
|
||
# 等待所有后台任务完成
|
||
wait
|
||
|
||
# 进行一些处理
|
||
find openwrt/package/* -maxdepth 0 ! -name 'firmware' ! -name 'kernel' ! -name 'base-files' ! -name 'Makefile' -exec rm -rf {} +
|
||
rm -rf ./openwrt_24/package/firmware ./openwrt_snap/package/kernel ./openwrt_snap/package/base-files ./openwrt_snap/package/Makefile
|
||
cp -rf ./openwrt_24/package/* ./openwrt/package/
|
||
cp -rf ./openwrt_24/feeds.conf.default ./openwrt/feeds.conf.default
|
||
|
||
# 退出脚本
|
||
exit 0 |