diff --git a/OpenWrt/diy-script.sh b/OpenWrt/diy-script.sh new file mode 100644 index 0000000..d501146 --- /dev/null +++ b/OpenWrt/diy-script.sh @@ -0,0 +1,209 @@ +#!/bin/bash + +# 修改默认IP +sed -i 's/192.168.1.1/10.0.0.1/g' package/base-files/files/bin/config_generate + +# profile +sed -i 's#\\u@\\h:\\w\\\$#\\[\\e[32;1m\\][\\u@\\h\\[\\e[0m\\] \\[\\033[01;34m\\]\\W\\[\\033[00m\\]\\[\\e[32;1m\\]]\\[\\e[0m\\]\\\$#g' package/base-files/files/etc/profile +sed -ri 's/(export PATH=")[^"]*/\1%PATH%:\/opt\/bin:\/opt\/sbin:\/opt\/usr\/bin:\/opt\/usr\/sbin/' package/base-files/files/etc/profile +sed -i '/PS1/a\export TERM=xterm-color' package/base-files/files/etc/profile + +# TTYD +sed -i 's/services/system/g' feeds/luci/applications/luci-app-ttyd/root/usr/share/luci/menu.d/luci-app-ttyd.json +sed -i '3 a\\t\t"order": 50,' feeds/luci/applications/luci-app-ttyd/root/usr/share/luci/menu.d/luci-app-ttyd.json +sed -i 's/procd_set_param stdout 1/procd_set_param stdout 0/g' feeds/packages/utils/ttyd/files/ttyd.init +sed -i 's/procd_set_param stderr 1/procd_set_param stderr 0/g' feeds/packages/utils/ttyd/files/ttyd.init + +# bash +sed -i 's#ash#bash#g' package/base-files/files/etc/passwd +sed -i '\#export ENV=/etc/shinit#a export HISTCONTROL=ignoredups' package/base-files/files/etc/profile +mkdir -p files/root +curl -so files/root/.bash_profile https://git.kejizero.online/zhao/files/raw/branch/main/root/.bash_profile +curl -so files/root/.bashrc https://git.kejizero.online/zhao/files/raw/branch/main/root/.bashrc + +# mwan3 +sed -i 's/MultiWAN 管理器/负载均衡/g' feeds/luci/applications/luci-app-mwan3/po/zh_Hans/mwan3.po + +echo -e "\nmsgid \"VPN\"" >> feeds/luci/modules/luci-base/po/zh_Hans/base.po +echo -e "msgstr \"魔法网络\"" >> feeds/luci/modules/luci-base/po/zh_Hans/base.po +echo -e "\nmsgid \"VPN\"" >> feeds/luci/modules/luci-base/po/zh_Hans/base.po +echo -e "msgstr \"魔法网络\"" >> feeds/luci/modules/luci-base/po/zh_Hans/base.po + +# Nginx +sed -i "s/large_client_header_buffers 2 1k/large_client_header_buffers 4 32k/g" feeds/packages/net/nginx-util/files/uci.conf.template +sed -i "s/client_max_body_size 128M/client_max_body_size 2048M/g" feeds/packages/net/nginx-util/files/uci.conf.template +sed -i '/client_max_body_size/a\\tclient_body_buffer_size 8192M;' feeds/packages/net/nginx-util/files/uci.conf.template +sed -i '/client_max_body_size/a\\tserver_names_hash_bucket_size 128;' feeds/packages/net/nginx-util/files/uci.conf.template +sed -i '/ubus_parallel_req/a\ ubus_script_timeout 600;' feeds/packages/net/nginx/files-luci-support/60_nginx-luci-support +sed -ri "/luci-webui.socket/i\ \t\tuwsgi_send_timeout 600\;\n\t\tuwsgi_connect_timeout 600\;\n\t\tuwsgi_read_timeout 600\;" feeds/packages/net/nginx/files-luci-support/luci.locations +sed -ri "/luci-cgi_io.socket/i\ \t\tuwsgi_send_timeout 600\;\n\t\tuwsgi_connect_timeout 600\;\n\t\tuwsgi_read_timeout 600\;" feeds/packages/net/nginx/files-luci-support/luci.locations + +# uwsgi +sed -i 's,procd_set_param stderr 1,procd_set_param stderr 0,g' feeds/packages/net/uwsgi/files/uwsgi.init +sed -i 's,buffer-size = 10000,buffer-size = 131072,g' feeds/packages/net/uwsgi/files-luci-support/luci-webui.ini +sed -i 's,logger = luci,#logger = luci,g' feeds/packages/net/uwsgi/files-luci-support/luci-webui.ini +sed -i '$a cgi-timeout = 600' feeds/packages/net/uwsgi/files-luci-support/luci-*.ini +sed -i 's/threads = 1/threads = 2/g' feeds/packages/net/uwsgi/files-luci-support/luci-webui.ini +sed -i 's/processes = 3/processes = 4/g' feeds/packages/net/uwsgi/files-luci-support/luci-webui.ini +sed -i 's/cheaper = 1/cheaper = 2/g' feeds/packages/net/uwsgi/files-luci-support/luci-webui.ini + +# banner +cp -f $GITHUB_WORKSPACE/diy/banner package/base-files/files/etc/banner + +# luci +pushd feeds/luci + curl -s https://git.kejizero.online/zhao/files/raw/branch/main/patch/luci/0001-luci-mod-status-firewall-disable-legacy-firewall-rul.patch | patch -p1 +popd + +# 移除要替换的包 +rm -rf feeds/packages/net/{xray-core,v2ray-core,v2ray-geodata,sing-box,adguardhome,socat,zerotier} +rm -rf feeds/packages/net/alist feeds/luci/applications/luci-app-alist +rm -rf feeds/packages/utils/v2dat +rm -rf feeds/packages/lang/golang + +# Git稀疏克隆,只克隆指定目录到本地 +function git_sparse_clone() { + branch="$1" repourl="$2" && shift 2 + git clone --depth=1 -b $branch --single-branch --filter=blob:none --sparse $repourl + repodir=$(echo $repourl | awk -F '/' '{print $(NF)}') + cd $repodir && git sparse-checkout set $@ + mv -f $@ ../package + cd .. && rm -rf $repodir +} + +# golong1.23依赖 +#git clone --depth=1 https://github.com/sbwml/packages_lang_golang -b 22.x feeds/packages/lang/golang +git clone https://github.com/sbwml/packages_lang_golang -b 23.x feeds/packages/lang/golang + +# Docker +rm -rf feeds/luci/applications/luci-app-dockerman +rm -rf feeds/luci/collections/luci-lib-docker +git clone https://github.com/lisaac/luci-app-dockerman feeds/luci/applications/luci-app-dockerman +git clone https://github.com/lisaac/luci-lib-docker feeds/luci/collections/luci-lib-docker + +# SSRP & Passwall +git clone https://git.kejizero.online/zhao/openwrt_helloworld.git package/helloworld -b v5 + +# Alist +git clone https://git.kejizero.online/zhao/luci-app-alist package/alist + +# Mosdns +git clone https://git.kejizero.online/zhao/luci-app-mosdns.git -b v5 package/mosdns +git clone https://git.kejizero.online/zhao/v2ray-geodata.git package/v2ray-geodata + +# 晶晨宝盒 +git_sparse_clone main https://github.com/ophub/luci-app-amlogic luci-app-amlogic +sed -i "s|firmware_repo.*|firmware_repo 'https://github.com/oppen321/ZeroWrt'|g" package/luci-app-amlogic/root/etc/config/amlogic +# sed -i "s|kernel_path.*|kernel_path 'https://github.com/ophub/kernel'|g" package/luci-app-amlogic/root/etc/config/amlogic + +# 锐捷认证 +git clone https://github.com/sbwml/luci-app-mentohust package/mentohust + +# Realtek 网卡 - R8168 & R8125 & R8126 & R8152 & R8101 +rm -rf package/kernel/r8168 package/kernel/r8101 package/kernel/r8125 package/kernel/r8126 +git clone https://git.kejizero.online/zhao/package_kernel_r8168 package/kernel/r8168 +git clone https://git.kejizero.online/zhao/package_kernel_r8152 package/kernel/r8152 +git clone https://git.kejizero.online/zhao/package_kernel_r8101 package/kernel/r8101 +git clone https://git.kejizero.online/zhao/package_kernel_r8125 package/kernel/r8125 +git clone https://git.kejizero.online/zhao/package_kernel_r8126 package/kernel/r8126 + +# Adguardhome +git_sparse_clone master https://github.com/kenzok8/openwrt-packages adguardhome luci-app-adguardhome + +# smartdns +rm -rf feeds/{packages/netsmartdns,luci/applications/luci-app-smartdns} +git_sparse_clone master https://github.com/kenzok8/openwrt-packages smartdns luci-app-smartdns + +# luci-app-airplay2 +git clone https://github.com/sbwml/luci-app-airplay2 package/luci-app-airplay2 + +# iStore +# git_sparse_clone main https://github.com/linkease/istore-ui app-store-ui +# git_sparse_clone main https://github.com/linkease/istore luci + +# UPnP +rm -rf feeds/{packages/net/miniupnpd,luci/applications/luci-app-upnp} +git clone https://git.kejizero.online/zhao/miniupnpd feeds/packages/net/miniupnpd -b v2.3.7 +git clone https://git.kejizero.online/zhao/luci-app-upnp feeds/luci/applications/luci-app-upnp -b master + +# Zero-package +git clone --depth=1 https://github.com/oppen321/Zero-package package/Zero-package +sed -i 's/iStoreOS/ZeroWrt/' package/Zero-package/istoreos-files/files/etc/board.d/10_system + +# qBittorrent +git clone https://github.com/sbwml/luci-app-qbittorrent package/luci-app-qbittorrent + +# 修改名称 +sed -i 's/OpenWrt/ZeroWrt/' package/base-files/files/bin/config_generate + +# Theme +git clone https://github.com/jerrykuku/luci-theme-argon 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-kucat package/luci-theme-kucat -b js +# curl -L -o package/luci-theme-argon/luci-theme-argon/htdocs/luci-static/argon/img/bg.webp https://git.kejizero.online/zhao/files/raw/branch/main/%20background/bg.webp +# git clone --depth 1 https://github.com/sbwml/luci-theme-argon package/luci-theme-argon +cp -f $GITHUB_WORKSPACE/images/bg1.jpg package/luci-theme-argon/htdocs/luci-static/argon/img/bg1.jpg +sed -i 's/bing/none/' package/luci-app-argon-config/root/etc/config/argon + +# default-settings +git clone --depth=1 -b openwrt-24.10 https://github.com/oppen321/default-settings package/default-settings + +# Lucky +git clone https://github.com/gdy666/luci-app-lucky.git package/lucky + +# OpenAppFilter +git clone https://git.kejizero.online/zhao/OpenAppFilter --depth=1 package/OpenAppFilter + +# luci-app-webdav +git clone https://git.kejizero.online/zhao/luci-app-webdav package/luci-app-webdav + +# unzip +rm -rf feeds/packages/utils/unzip +git clone https://github.com/sbwml/feeds_packages_utils_unzip feeds/packages/utils/unzip + +# frpc名称 +sed -i 's,发送,Transmission,g' feeds/luci/applications/luci-app-transmission/po/zh_Hans/transmission.po +sed -i 's,frp 服务器,FRP 服务器,g' feeds/luci/applications/luci-app-frps/po/zh_Hans/frps.po +sed -i 's,frp 客户端,FRP 客户端,g' feeds/luci/applications/luci-app-frpc/po/zh_Hans/frpc.po + +# NTP +sed -i 's/0.openwrt.pool.ntp.org/ntp1.aliyun.com/g' package/base-files/files/bin/config_generate +sed -i 's/1.openwrt.pool.ntp.org/ntp2.aliyun.com/g' package/base-files/files/bin/config_generate +sed -i 's/2.openwrt.pool.ntp.org/time1.cloud.tencent.com/g' package/base-files/files/bin/config_generate +sed -i 's/3.openwrt.pool.ntp.org/time2.cloud.tencent.com/g' package/base-files/files/bin/config_generate + +# 修改位置 +sed -i 's/services/vpn/g' package/helloworld/luci-app-passwall/luasrc/controller/*.lua +sed -i 's/services/vpn/g' package/helloworld/luci-app-passwall/luasrc/passwall/*.lua +sed -i 's/services/vpn/g' package/helloworld/luci-app-passwall/luasrc/model/cbi/passwall/client/*.lua +sed -i 's/services/vpn/g' package/helloworld/luci-app-passwall/luasrc/model/cbi/passwall/server/*.lua +sed -i 's/services/vpn/g' package/helloworld/luci-app-passwall/luasrc/view/passwall/app_update/*.htm +sed -i 's/services/vpn/g' package/helloworld/luci-app-passwall/luasrc/view/passwall/socks_auto_switch/*.htm +sed -i 's/services/vpn/g' package/helloworld/luci-app-passwall/luasrc/view/passwall/global/*.htm +sed -i 's/services/vpn/g' package/helloworld/luci-app-passwall/luasrc/view/passwall/haproxy/*.htm +sed -i 's/services/vpn/g' package/helloworld/luci-app-passwall/luasrc/view/passwall/log/*.htm +sed -i 's/services/vpn/g' package/helloworld/luci-app-passwall/luasrc/view/passwall/node_list/*.htm +sed -i 's/services/vpn/g' package/helloworld/luci-app-passwall/luasrc/view/passwall/rule/*.htm +sed -i 's/services/vpn/g' package/helloworld/luci-app-passwall/luasrc/view/passwall/server/*.htm + +sed -i 's/services/vpn/g' package/helloworld/luci-app-homeproxy/root/usr/share/luci/menu.d/luci-app-homeproxy.json + +sed -i 's/services/vpn/g' package/helloworld/luci-app-openclash/luasrc/controller/*.lua +sed -i 's/services/vpn/g' package/helloworld/luci-app-openclash/luasrc/*.lua +sed -i 's/services/vpn/g' package/helloworld/luci-app-openclash/luasrc/model/cbi/openclash/*.lua +sed -i 's/services/vpn/g' package/helloworld/luci-app-openclash/luasrc/view/openclash/*.htm + +sed -i 's/services/vpn/g' package/helloworld/luci-app-nikki/root/usr/share/luci/menu.d/luci-app-nikki.json + +sed -i 's/services/vpn/g' package/helloworld/luci-app-daed/root/usr/share/luci/menu.d/luci-app-daed.json + +sed -i 's/services/nas/g' feeds/luci/applications/luci-app-samba4/root/usr/share/luci/menu.d/luci-app-samba4.json + +sed -i 's/services/nas/g' feeds/luci/applications/luci-app-aria2/root/usr/share/luci/menu.d/luci-app-aria2.json + +sed -i 's/services/nas/g' package/luci-app-qbittorrent/luci-app-qbittorrent/root/usr/share/luci/menu.d/luci-app-qbittorrent.json + +sed -i 's/services/network/g' feeds/luci/applications/luci-app-natmap/root/usr/share/luci/menu.d/luci-app-natmap.json + +./scripts/feeds update -a +./scripts/feeds install -a \ No newline at end of file