mirror of
https://github.com/caiwx86/small-packages.git
synced 2026-11-01 00:05:13 +08:00
update 2026-07-31 01:20:30
This commit is contained in:
1 parent
6702e14108
commit
ac7cd5bc71
14 files changed
+333
-37
No files matched your search
+2
-2
@@ -8,12 +8,12 @@
|
|||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=ddns-go
|
PKG_NAME:=ddns-go
|
||||||
PKG_VERSION:=6.17.3
|
PKG_VERSION:=6.17.4
|
||||||
PKG_RELEASE:=1
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||||
PKG_SOURCE_URL:=https://codeload.github.com/jeessy2/ddns-go/tar.gz/v$(PKG_VERSION)?
|
PKG_SOURCE_URL:=https://codeload.github.com/jeessy2/ddns-go/tar.gz/v$(PKG_VERSION)?
|
||||||
PKG_HASH:=8d12594cd7a8b77effb068181b1a6d0a378e6321b5e4c3ec438e415de5fe4039
|
PKG_HASH:=80f3816d95933949ce7306b988b2612d91b95c6992af8e956378628fde19b615
|
||||||
|
|
||||||
PKG_LICENSE:=MIT
|
PKG_LICENSE:=MIT
|
||||||
PKG_LICENSE_FILES:=LICENSE
|
PKG_LICENSE_FILES:=LICENSE
|
||||||
|
|||||||
@@ -1529,107 +1529,107 @@ get_name() {
|
|||||||
gen_config_file() { #server1 type2 code3 local_port4 socks_port5 chain6 threads5
|
gen_config_file() { #server1 type2 code3 local_port4 socks_port5 chain6 threads5
|
||||||
local server="$1"
|
local server="$1"
|
||||||
local type="$2"
|
local type="$2"
|
||||||
local mode="$3"
|
local code="$3"
|
||||||
local local_port="$4"
|
local local_port="$4"
|
||||||
local socks_port="$5"
|
local socks_port="$5"
|
||||||
local chain="$6"
|
local chain="$6"
|
||||||
local tmp_port
|
local tmp_port
|
||||||
local ss_protocol
|
local ss_protocol
|
||||||
|
|
||||||
case "$mode" in
|
case "$code" in
|
||||||
1)
|
1)
|
||||||
config_file=$tcp_config_file
|
config_file="$tcp_config_file"
|
||||||
chain_config_file=$(echo "${config_file}" | sed 's/ssrplus\//ssrplus\/chain-/')
|
chain_config_file=$(echo "${config_file}" | sed 's/ssrplus\//ssrplus\/chain-/')
|
||||||
;;
|
;;
|
||||||
2)
|
2)
|
||||||
config_file=$udp_config_file
|
config_file="$udp_config_file"
|
||||||
chain_config_file=$(echo "${config_file}" | sed 's/ssrplus\//ssrplus\/chain-/')
|
chain_config_file=$(echo "${config_file}" | sed 's/ssrplus\//ssrplus\/chain-/')
|
||||||
;;
|
;;
|
||||||
3)
|
3)
|
||||||
if [ -n "$tmp_local_port" ]; then
|
if [ -n "$tmp_local_port" ]; then
|
||||||
tmp_port=$tmp_local_port
|
tmp_port="$tmp_local_port"
|
||||||
else
|
else
|
||||||
tmp_port=$tmp_shunt_local_port
|
tmp_port="$tmp_shunt_local_port"
|
||||||
fi
|
fi
|
||||||
config_file=$shunt_config_file
|
config_file="$shunt_config_file"
|
||||||
chain_config_file=$(echo "${config_file}" | sed 's/ssrplus\//ssrplus\/chain-/')
|
chain_config_file=$(echo "${config_file}" | sed 's/ssrplus\//ssrplus\/chain-/')
|
||||||
;;
|
;;
|
||||||
4)
|
4)
|
||||||
ss_protocol="socks"
|
ss_protocol="socks"
|
||||||
config_file=$local_config_file
|
config_file="$local_config_file"
|
||||||
chain_config_file=$(echo "${config_file}" | sed 's/ssrplus\//ssrplus\/chain-/')
|
chain_config_file=$(echo "${config_file}" | sed 's/ssrplus\//ssrplus\/chain-/')
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
case "$type" in
|
case "$type" in
|
||||||
ss | ssr)
|
ss | ssr)
|
||||||
lua /usr/share/shadowsocksr/gen_config.lua "$server" "$mode" "$local_port" "${ss_protocol:-redir}" >"$config_file"
|
lua /usr/share/shadowsocksr/gen_config.lua $server $mode $local_port ${ss_protocol:-redir} >"$config_file"
|
||||||
if [ "$mode" = "3" ]; then
|
if [ "$code" = "3" ]; then
|
||||||
lua /usr/share/shadowsocksr/gen_config.lua "$server" "$mode" "$tmp_port" socks >"$shunt_dns_config_file"
|
lua /usr/share/shadowsocksr/gen_config.lua $server $mode $tmp_port socks >"$shunt_dns_config_file"
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
v2ray)
|
v2ray)
|
||||||
lua /usr/share/shadowsocksr/gen_config.lua "$server" "$mode" "$local_port" "$socks_port" >"$config_file"
|
lua /usr/share/shadowsocksr/gen_config.lua $server $mode $local_port $socks_port >"$config_file"
|
||||||
;;
|
;;
|
||||||
trojan)
|
trojan)
|
||||||
case "$mode" in
|
case "$code" in
|
||||||
1)
|
1)
|
||||||
lua /usr/share/shadowsocksr/gen_config.lua "$server" nat "$local_port" >"$config_file"
|
lua /usr/share/shadowsocksr/gen_config.lua $server nat $local_port >"$config_file"
|
||||||
;;
|
;;
|
||||||
2)
|
2)
|
||||||
lua /usr/share/shadowsocksr/gen_config.lua "$server" client "$local_port" >"$config_file"
|
lua /usr/share/shadowsocksr/gen_config.lua $server client $local_port >"$config_file"
|
||||||
;;
|
;;
|
||||||
3)
|
3)
|
||||||
lua /usr/share/shadowsocksr/gen_config.lua "$server" nat "$local_port" >"$config_file"
|
lua /usr/share/shadowsocksr/gen_config.lua $server nat $local_port >"$config_file"
|
||||||
lua /usr/share/shadowsocksr/gen_config.lua "$server" client "$tmp_port" >"$shunt_dns_config_file"
|
lua /usr/share/shadowsocksr/gen_config.lua $server client $tmp_port >"$shunt_dns_config_file"
|
||||||
;;
|
;;
|
||||||
4)
|
4)
|
||||||
lua /usr/share/shadowsocksr/gen_config.lua "$server" client "$local_port" >"$config_file"
|
lua /usr/share/shadowsocksr/gen_config.lua $server client $local_port >"$config_file"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
;;
|
;;
|
||||||
naiveproxy)
|
naiveproxy)
|
||||||
case "$mode" in
|
case "$code" in
|
||||||
1)
|
1)
|
||||||
lua /usr/share/shadowsocksr/gen_config.lua "$server" redir "$local_port" >"$config_file"
|
lua /usr/share/shadowsocksr/gen_config.lua $server redir $local_port >"$config_file"
|
||||||
;;
|
;;
|
||||||
3)
|
3)
|
||||||
lua /usr/share/shadowsocksr/gen_config.lua "$server" redir "$local_port" >"$config_file"
|
lua /usr/share/shadowsocksr/gen_config.lua $server redir $local_port >"$config_file"
|
||||||
lua /usr/share/shadowsocksr/gen_config.lua "$server" socks "$tmp_port" >"$shunt_dns_config_file"
|
lua /usr/share/shadowsocksr/gen_config.lua $server socks $tmp_port >"$shunt_dns_config_file"
|
||||||
;;
|
;;
|
||||||
4)
|
4)
|
||||||
lua /usr/share/shadowsocksr/gen_config.lua "$server" socks "$local_port" >"$config_file"
|
lua /usr/share/shadowsocksr/gen_config.lua $server socks $local_port >"$config_file"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
;;
|
;;
|
||||||
hysteria2)
|
hysteria2)
|
||||||
lua /usr/share/shadowsocksr/gen_config.lua "$server" "$mode" "$local_port" "$socks_port" >"$config_file"
|
lua /usr/share/shadowsocksr/gen_config.lua $server $mode $local_port $socks_port >"$config_file"
|
||||||
;;
|
;;
|
||||||
tuic)
|
tuic)
|
||||||
case "$mode" in
|
case "$code" in
|
||||||
1|2|4)
|
1|2|4)
|
||||||
lua /usr/share/shadowsocksr/gen_config.lua "$server" "$mode" "$local_port" >"$config_file"
|
lua /usr/share/shadowsocksr/gen_config.lua $server $mode $local_port >"$config_file"
|
||||||
;;
|
;;
|
||||||
3)
|
3)
|
||||||
if [ -z "$chain" ]; then
|
if [ -z "$chain" ]; then
|
||||||
lua /usr/share/shadowsocksr/gen_config.lua "$server" "$mode" "$local_port" >"$shunt_dns_config_file"
|
lua /usr/share/shadowsocksr/gen_config.lua $server $mode $local_port >"$shunt_dns_config_file"
|
||||||
else
|
else
|
||||||
lua /usr/share/shadowsocksr/gen_config.lua "$server" "$mode" "$local_port" >"$config_file"
|
lua /usr/share/shadowsocksr/gen_config.lua $server $mode $local_port >"$config_file"
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
;;
|
;;
|
||||||
shadowtls)
|
shadowtls)
|
||||||
case "$mode" in
|
case "$code" in
|
||||||
1|2|4)
|
1|2|4)
|
||||||
if [ -z "$chain" ]; then
|
if [ -z "$chain" ]; then
|
||||||
lua /usr/share/shadowsocksr/gen_config.lua "$server" "$type" "$local_port" >"$chain_config_file"
|
lua /usr/share/shadowsocksr/gen_config.lua $server $type $local_port >"$chain_config_file"
|
||||||
else
|
else
|
||||||
lua /usr/share/shadowsocksr/gen_config.lua "$server" "$mode" "$local_port" "$socks_port" "$chain" >"$config_file"
|
lua /usr/share/shadowsocksr/gen_config.lua $server $mode $local_port $socks_port $chain >"$config_file"
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
3)
|
3)
|
||||||
lua /usr/share/shadowsocksr/gen_config.lua "$server" "$type" "$local_port" >"$chain_config_file"
|
lua /usr/share/shadowsocksr/gen_config.lua $server $type $local_port >"$chain_config_file"
|
||||||
lua /usr/share/shadowsocksr/gen_config.lua "$server" "$mode" "$local_port" "$socks_port" "$chain" >"$config_file"
|
lua /usr/share/shadowsocksr/gen_config.lua $server $mode $local_port $socks_port $chain >"$config_file"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
;;
|
;;
|
||||||
|
|||||||
@@ -0,0 +1,9 @@
|
|||||||
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
|
LUCI_TITLE:=LuCI support for UUgamebooster
|
||||||
|
LUCI_DEPENDS:=+uugamebooster
|
||||||
|
LUCI_PKGARCH:=all
|
||||||
|
|
||||||
|
include $(TOPDIR)/feeds/luci/luci.mk
|
||||||
|
|
||||||
|
# call BuildPackage - OpenWrt buildroot signature
|
||||||
@@ -0,0 +1,74 @@
|
|||||||
|
'use strict';
|
||||||
|
'require form';
|
||||||
|
'require view';
|
||||||
|
'require poll';
|
||||||
|
'require ui';
|
||||||
|
'require rpc';
|
||||||
|
|
||||||
|
var callServiceList = rpc.declare({
|
||||||
|
object: 'service',
|
||||||
|
method: 'list',
|
||||||
|
params: ['name'],
|
||||||
|
expect: { '': {} }
|
||||||
|
});
|
||||||
|
|
||||||
|
function getServiceStatus() {
|
||||||
|
return L.resolveDefault(callServiceList('uugamebooster'), {}).then(function(res) {
|
||||||
|
var instances = res['uugamebooster'] && res['uugamebooster']['instances'];
|
||||||
|
if (instances) {
|
||||||
|
for (var key in instances) {
|
||||||
|
if (instances[key] && instances[key].running)
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
return view.extend({
|
||||||
|
render: function() {
|
||||||
|
var m, s, o;
|
||||||
|
|
||||||
|
m = new form.Map('uugamebooster', _('UU Game Accelerator'), _('A Paid Game Acceleration service'));
|
||||||
|
|
||||||
|
s = m.section(form.GridSection, '_status', _('Status'));
|
||||||
|
s.render = function() {
|
||||||
|
return E('div', { class: 'cbi-section' }, [
|
||||||
|
E('p', { id: 'uugamebooster_status' }, _('Collecting data...'))
|
||||||
|
]);
|
||||||
|
};
|
||||||
|
|
||||||
|
s = m.section(form.TypedSection, 'uugamebooster', _('Settings'));
|
||||||
|
s.anonymous = true;
|
||||||
|
s.addremove = false;
|
||||||
|
|
||||||
|
o = s.option(form.Flag, 'enabled', _('Enable'));
|
||||||
|
o.default = '0';
|
||||||
|
o.rmempty = false;
|
||||||
|
|
||||||
|
s = m.section(form.GridSection, '_qrcode', _('QR Code'));
|
||||||
|
s.render = function() {
|
||||||
|
return E('div', { class: 'cbi-section' }, [
|
||||||
|
E('p', { id: 'uugamebooster_qcode' }, [
|
||||||
|
E('img', { src: '/uugamebooster/uuios.png', height: '300' }),
|
||||||
|
E('img', { src: '/uugamebooster/uuandriod.png', height: '300' })
|
||||||
|
])
|
||||||
|
]);
|
||||||
|
};
|
||||||
|
|
||||||
|
poll.add(function() {
|
||||||
|
return getServiceStatus().then(function(running) {
|
||||||
|
var node = document.getElementById('uugamebooster_status');
|
||||||
|
if (node) {
|
||||||
|
if (running) {
|
||||||
|
node.innerHTML = '<em><b><font color="green">UU GameAcc ' + _('RUNNING') + '</font></b></em>';
|
||||||
|
} else {
|
||||||
|
node.innerHTML = '<em><b><font color="red">UU GameAcc ' + _('NOT RUNNING') + '</font></b></em>';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}, 3);
|
||||||
|
|
||||||
|
return m.render();
|
||||||
|
}
|
||||||
|
});
|
||||||
@@ -0,0 +1,46 @@
|
|||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||||
|
"Language: zh_Hans\n"
|
||||||
|
|
||||||
|
#: htdocs/luci-static/resources/view/uugamebooster.js:24
|
||||||
|
msgid "Enable"
|
||||||
|
msgstr "启用"
|
||||||
|
|
||||||
|
#: root/usr/share/luci/menu.d/luci-app-uugamebooster.json:3
|
||||||
|
msgid "UU GameAcc"
|
||||||
|
msgstr "UU游戏加速器"
|
||||||
|
|
||||||
|
#: htdocs/luci-static/resources/view/uugamebooster.js:11
|
||||||
|
msgid "UU Game Accelerator"
|
||||||
|
msgstr "UU游戏加速器"
|
||||||
|
|
||||||
|
#: htdocs/luci-static/resources/view/uugamebooster.js:11
|
||||||
|
msgid "A Paid Game Acceleration service"
|
||||||
|
msgstr "一个付费主机游戏加速器 (开启服务后,使用手机APP绑定路由器并指定加速主机)"
|
||||||
|
|
||||||
|
#: htdocs/luci-static/resources/view/uugamebooster.js:13
|
||||||
|
msgid "Status"
|
||||||
|
msgstr "状态"
|
||||||
|
|
||||||
|
#: htdocs/luci-static/resources/view/uugamebooster.js:16
|
||||||
|
msgid "Collecting data..."
|
||||||
|
msgstr "正在收集数据..."
|
||||||
|
|
||||||
|
#: htdocs/luci-static/resources/view/uugamebooster.js:20
|
||||||
|
msgid "Settings"
|
||||||
|
msgstr "设置"
|
||||||
|
|
||||||
|
#: htdocs/luci-static/resources/view/uugamebooster.js:28
|
||||||
|
msgid "QR Code"
|
||||||
|
msgstr "二维码"
|
||||||
|
|
||||||
|
#: htdocs/luci-static/resources/view/uugamebooster.js:44
|
||||||
|
msgid "RUNNING"
|
||||||
|
msgstr "运行中"
|
||||||
|
|
||||||
|
#: htdocs/luci-static/resources/view/uugamebooster.js:46
|
||||||
|
msgid "NOT RUNNING"
|
||||||
|
msgstr "未运行"
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
{
|
||||||
|
"admin/services/uugamebooster": {
|
||||||
|
"title": "UU GameAcc",
|
||||||
|
"action": {
|
||||||
|
"type": "view",
|
||||||
|
"path": "uugamebooster"
|
||||||
|
},
|
||||||
|
"depends": {
|
||||||
|
"acl": [ "luci-app-uugamebooster" ],
|
||||||
|
"uci": { "uugamebooster": true }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
{
|
||||||
|
"luci-app-uugamebooster": {
|
||||||
|
"description": "Grant UCI access for luci-app-uugamebooster",
|
||||||
|
"read": {
|
||||||
|
"uci": [ "uugamebooster" ],
|
||||||
|
"ubus": {
|
||||||
|
"service": [ "list" ]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"write": {
|
||||||
|
"uci": [ "uugamebooster" ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 75 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 7.1 KiB |
@@ -0,0 +1,65 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-3.0-only
|
||||||
|
#
|
||||||
|
# Copyright (C) 2021 ImmortalWrt.org
|
||||||
|
|
||||||
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
|
PKG_NAME:=uugamebooster
|
||||||
|
PKG_VERSION:=14.0.6
|
||||||
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(ARCH).tar.gz
|
||||||
|
PKG_SOURCE_URL:=https://uurouter.gdl.netease.com/uuplugin/openwrt-$(ARCH)/v$(PKG_VERSION)/uu.tar.gz?
|
||||||
|
ifeq ($(ARCH),aarch64)
|
||||||
|
PKG_HASH:=4fe6fcad525c525ad530af69f102d90c1189330e4e3c3183b577ddde27731e2a
|
||||||
|
else ifeq ($(ARCH),arm)
|
||||||
|
PKG_HASH:=e8693a284d0a9445e73f8d2e9c3d330364cc6371d63c19da03f8e8c47f076caf
|
||||||
|
else ifeq ($(ARCH),mipsel)
|
||||||
|
PKG_HASH:=6fd2497bfdcf228de050119f7f593547a0da3eca9c50baa6bf8d5da6e366c575
|
||||||
|
else ifeq ($(ARCH),x86_64)
|
||||||
|
PKG_HASH:=1becd5ef81d257b22002f208cd303b04e421c7da4231523b7d82da2c7193b57f
|
||||||
|
endif
|
||||||
|
|
||||||
|
PKG_LICENSE:=Proprietary
|
||||||
|
PKG_MAINTAINER:=Tianling Shen <cnsztl@immortalwrt.org>
|
||||||
|
|
||||||
|
include $(INCLUDE_DIR)/package.mk
|
||||||
|
|
||||||
|
STRIP:=true
|
||||||
|
|
||||||
|
TAR_CMD=$(HOST_TAR) -C $(1)/ $(TAR_OPTIONS)
|
||||||
|
|
||||||
|
define Package/uugamebooster
|
||||||
|
SECTION:=net
|
||||||
|
CATEGORY:=Network
|
||||||
|
DEPENDS:=@(aarch64||arm||mipsel||x86_64) +kmod-tun
|
||||||
|
TITLE:=NetEase UU Game Booster
|
||||||
|
URL:=https://uu.163.com
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/uugamebooster/description
|
||||||
|
NetEase's UU Game Booster Accelerates Triple-A Gameplay and Market.
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Build/Compile
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/uugamebooster/conffiles
|
||||||
|
/.uuplugin_uuid
|
||||||
|
/usr/share/uugamebooster/uu.conf
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/uugamebooster/install
|
||||||
|
$(INSTALL_DIR) $(1)/usr/bin
|
||||||
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/uuplugin $(1)/usr/bin/uugamebooster
|
||||||
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/xtables-nft-multi $(1)/usr/bin/xtables-nft-multi
|
||||||
|
|
||||||
|
$(INSTALL_DIR) $(1)/usr/share/uugamebooster
|
||||||
|
$(INSTALL_CONF) $(PKG_BUILD_DIR)/uu.conf $(1)/usr/share/uugamebooster/uu.conf
|
||||||
|
|
||||||
|
$(INSTALL_DIR) $(1)/etc/config $(1)/etc/init.d
|
||||||
|
$(INSTALL_CONF) $(CURDIR)/files/uugamebooster.config $(1)/etc/config/uugamebooster
|
||||||
|
$(INSTALL_BIN) $(CURDIR)/files/uugamebooster.init $(1)/etc/init.d/uugamebooster
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(eval $(call BuildPackage,uugamebooster))
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
|
||||||
|
config uugamebooster 'config'
|
||||||
|
option enabled '0'
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
#!/bin/sh /etc/rc.common
|
||||||
|
# Copyright (C) 2021 Tianling Shen <cnsztl@immortalwrt.org>
|
||||||
|
|
||||||
|
USE_PROCD=1
|
||||||
|
START=99
|
||||||
|
|
||||||
|
CONF="uugamebooster"
|
||||||
|
PROG="/usr/bin/uugamebooster"
|
||||||
|
|
||||||
|
UU_CONF="/usr/share/uugamebooster/uu.conf"
|
||||||
|
|
||||||
|
start_service() {
|
||||||
|
config_load "$CONF"
|
||||||
|
local enabled
|
||||||
|
config_get_bool enabled "config" "enabled" "0"
|
||||||
|
[ "$enabled" -eq "1" ] || return 1
|
||||||
|
|
||||||
|
procd_open_instance "$CONF"
|
||||||
|
|
||||||
|
procd_set_param command "$PROG" "$UU_CONF"
|
||||||
|
|
||||||
|
procd_set_param limits core="unlimited"
|
||||||
|
procd_set_param respawn
|
||||||
|
procd_set_param stdout 1
|
||||||
|
procd_set_param stderr 1
|
||||||
|
|
||||||
|
procd_close_instance
|
||||||
|
}
|
||||||
|
|
||||||
|
reload_service() {
|
||||||
|
stop
|
||||||
|
start
|
||||||
|
}
|
||||||
|
|
||||||
|
service_triggers() {
|
||||||
|
procd_add_reload_trigger "$CONF"
|
||||||
|
}
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# SPDX-License-Identifier: GPL-3.0-only
|
||||||
|
#
|
||||||
|
# Copyright (C) 2021 ImmortalWrt.org
|
||||||
|
|
||||||
|
set -x
|
||||||
|
|
||||||
|
export CURDIR="$(cd "$(dirname $0)"; pwd)"
|
||||||
|
|
||||||
|
VERSION="$(curl -fsSL "https://router.uu.163.com/api/plugin?type=openwrt-aarch64" | jq -r ".url" | awk -F '/' '{print $6}' | tr -d 'v')" || exit 1
|
||||||
|
PKG_VERSION="$(awk -F "PKG_VERSION:=" '{print $2}' "$CURDIR/Makefile" | xargs)"
|
||||||
|
[ "$PKG_VERSION" != "$VERSION" ] || exit 0
|
||||||
|
|
||||||
|
for ARCH in "aarch64" "arm" "mipsel" "x86_64"; do
|
||||||
|
FILE_INFO="$(curl -fsSL "https://router.uu.163.com/api/plugin?type=openwrt-$ARCH")"
|
||||||
|
FILE_MD5="$(echo "$FILE_INFO" | jq -r ".md5")"
|
||||||
|
FILE_VER="$(echo "$FILE_INFO" | jq -r ".url" | awk -F '/' '{print $6}' | tr -d 'v')"
|
||||||
|
if [ "$FILE_VER" != "$VERSION" ]; then
|
||||||
|
echo -e "Version mismatch. Expected version: $VERSION, got $FILE_VER."
|
||||||
|
exit 1
|
||||||
|
else
|
||||||
|
curl -fsSL "http://uurouter.gdl04.netease.com/uuplugin/openwrt-$ARCH/v$VERSION/uu.tar.gz" -o "$CURDIR/uu-$ARCH.tar.gz"
|
||||||
|
ACTUAL_MD5="$(md5sum "$CURDIR/uu-$ARCH.tar.gz" | awk '{print $1}')"
|
||||||
|
if [ "$ACTUAL_MD5" != "$FILE_MD5" ]; then
|
||||||
|
echo -e "HASH mismatch. Expected md5: $FILE_MD5, got $ACTUAL_MD5."
|
||||||
|
else
|
||||||
|
FILE_HASH="$(sha256sum "$CURDIR/uu-$ARCH.tar.gz" | awk '{print $1}')"
|
||||||
|
HASH_LINE="$(($(sed -n -e "/(\$(ARCH),$ARCH)/=" "$CURDIR/Makefile") + 1))"
|
||||||
|
sed -i "${HASH_LINE}s/PKG_HASH:=.*/PKG_HASH:=$FILE_HASH/" "$CURDIR/Makefile"
|
||||||
|
fi
|
||||||
|
rm -f "$CURDIR/uu-$ARCH.tar.gz"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
sed -i "s,PKG_VERSION:=.*,PKG_VERSION:=$VERSION,g" "$CURDIR/Makefile"
|
||||||
@@ -21,13 +21,13 @@ define Download/geoip
|
|||||||
HASH:=b71d1999439dde2de2d2b6844a2befa50c50211ff739785c005ca7c230a17d6a
|
HASH:=b71d1999439dde2de2d2b6844a2befa50c50211ff739785c005ca7c230a17d6a
|
||||||
endef
|
endef
|
||||||
|
|
||||||
GEOSITE_VER:=20260730073441
|
GEOSITE_VER:=20260730130613
|
||||||
GEOSITE_FILE:=dlc.dat.$(GEOSITE_VER)
|
GEOSITE_FILE:=dlc.dat.$(GEOSITE_VER)
|
||||||
define Download/geosite
|
define Download/geosite
|
||||||
URL:=https://github.com/v2fly/domain-list-community/releases/download/$(GEOSITE_VER)/
|
URL:=https://github.com/v2fly/domain-list-community/releases/download/$(GEOSITE_VER)/
|
||||||
URL_FILE:=dlc.dat
|
URL_FILE:=dlc.dat
|
||||||
FILE:=$(GEOSITE_FILE)
|
FILE:=$(GEOSITE_FILE)
|
||||||
HASH:=6fb4dfc07d7c92120b866848b8bd5aae7791bc55c32f0a6ca27b3cda2a1b53d3
|
HASH:=4b0a0308e3136813b265ce5ff1ff5c087c715a35df177a78f9c2245db1b1a4e1
|
||||||
endef
|
endef
|
||||||
|
|
||||||
GEOSITE_IRAN_VER:=202607270122
|
GEOSITE_IRAN_VER:=202607270122
|
||||||
|
|||||||
Reference in new issue
Block a user