diff --git a/aliyundrive-fuse/Makefile b/aliyundrive-fuse/Makefile index 5f39ec2ad..d7fbcfd52 100644 --- a/aliyundrive-fuse/Makefile +++ b/aliyundrive-fuse/Makefile @@ -1,7 +1,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=aliyundrive-fuse -PKG_VERSION:=0.1.8 +PKG_VERSION:=0.1.9 PKG_RELEASE:=$(AUTORELEASE) PKG_LICENSE:=MIT diff --git a/dat/geoip.dat b/dat/geoip.dat index aa7e7cb8a..858cc0cf4 100644 Binary files a/dat/geoip.dat and b/dat/geoip.dat differ diff --git a/luci-app-aliyundrive-fuse/Makefile b/luci-app-aliyundrive-fuse/Makefile index 6c4438673..03820f73f 100644 --- a/luci-app-aliyundrive-fuse/Makefile +++ b/luci-app-aliyundrive-fuse/Makefile @@ -1,7 +1,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=luci-app-aliyundrive-fuse -PKG_VERSION:=0.1.8 +PKG_VERSION:=0.1.9 PKG_RELEASE:=1 PKG_PO_VERSION:=$(PKG_VERSION)-$(PKG_RELEASE) diff --git a/luci-app-passwall2/Makefile b/luci-app-passwall2/Makefile index d5a292a5b..dac48ab0e 100644 --- a/luci-app-passwall2/Makefile +++ b/luci-app-passwall2/Makefile @@ -6,7 +6,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=luci-app-passwall2 PKG_VERSION:=1.2 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_CONFIG_DEPENDS:= \ CONFIG_PACKAGE_$(PKG_NAME)_Transparent_Proxy \ diff --git a/luci-app-passwall2/luasrc/controller/passwall2.lua b/luci-app-passwall2/luasrc/controller/passwall2.lua index 94c4ed66a..6d41f6ec1 100644 --- a/luci-app-passwall2/luasrc/controller/passwall2.lua +++ b/luci-app-passwall2/luasrc/controller/passwall2.lua @@ -163,7 +163,7 @@ end function status() local e = {} - e["global_status"] = luci.sys.call(string.format("top -bn1 | grep -v -E 'grep|acl/|acl_' | grep '%s/bin/' | grep -i 'global' >/dev/null", appname)) == 0 + e["global_status"] = luci.sys.call(string.format("top -bn1 | grep -v -E 'grep|acl/|acl_' | grep '%s/bin/' | grep -i 'global\\.json' >/dev/null", appname)) == 0 luci.http.prepare_content("application/json") luci.http.write_json(e) end diff --git a/luci-app-passwall2/luasrc/model/cbi/passwall2/api/gen_v2ray.lua b/luci-app-passwall2/luasrc/model/cbi/passwall2/api/gen_v2ray.lua index 71502ff38..81db3f09a 100644 --- a/luci-app-passwall2/luasrc/model/cbi/passwall2/api/gen_v2ray.lua +++ b/luci-app-passwall2/luasrc/model/cbi/passwall2/api/gen_v2ray.lua @@ -464,17 +464,17 @@ if true then local source = nil if e.source then source = {} - string.gsub(e.source, '[^' .. "\r\n" .. ']+', function(w) + string.gsub(e.source, '[^' .. " " .. ']+', function(w) table.insert(source, w) end) end local rule = { type = "field", outboundTag = outboundTag, - network = e["network"], + network = e["network"] or "tcp,udp", source = source, - sourcePort = e["sourcePort"] and e["sourcePort"] ~= "", - port = e["port"] and e["port"] ~= "", + sourcePort = e["sourcePort"] ~= "" and e["sourcePort"] or nil, + port = e["port"] ~= "" and e["port"] or nil, protocol = protocols } if domains then diff --git a/luci-app-passwall2/luasrc/model/cbi/passwall2/client/shunt_rules.lua b/luci-app-passwall2/luasrc/model/cbi/passwall2/client/shunt_rules.lua index d47712eda..0488c42cf 100644 --- a/luci-app-passwall2/luasrc/model/cbi/passwall2/client/shunt_rules.lua +++ b/luci-app-passwall2/luasrc/model/cbi/passwall2/client/shunt_rules.lua @@ -23,8 +23,75 @@ network:value("tcp,udp", "TCP UDP") network:value("tcp", "TCP") network:value("udp", "UDP") -source = s:option(TextValue, "source", translate("Source")) -source.wrap = "off" +source = s:option(DynamicList, "source", translate("Source")) +source.description = "" +source.cast = "string" +source.cfgvalue = function(self, section) + local value + if self.tag_error[section] then + value = self:formvalue(section) + else + value = self.map:get(section, self.option) + if type(value) == "string" then + local value2 = {} + string.gsub(value, '[^' .. " " .. ']+', function(w) table.insert(value2, w) end) + value = value2 + end + end + return value +end +source.validate = function(self, value, t) + local err = {} + for _, v in ipairs(value) do + local flag = false + if datatypes.ip4addr(v) then + flag = true + end + + if flag == false and v:find("geoip:") and v:find("geoip:") == 1 then + flag = true + end + + if flag == false then + err[#err + 1] = v + end + end + + if #err > 0 then + self:add_error(t, "invalid", translate("Not true format, please re-enter!")) + for _, v in ipairs(err) do + self:add_error(t, "invalid", v) + end + end + + return value +end + +local dynamicList_write = function(self, section, value) + local t = {} + local t2 = {} + if type(value) == "table" then + local x + for _, x in ipairs(value) do + if x and #x > 0 then + if not t2[x] then + t2[x] = x + t[#t+1] = x + end + end + end + else + t = { value } + end + t = table.concat(t, " ") + return DynamicList.write(self, section, t) +end + +source.write = dynamicList_write sourcePort = s:option(Value, "sourcePort", translate("Source port")) diff --git a/luci-app-passwall2/root/usr/share/passwall2/0_default_config b/luci-app-passwall2/root/usr/share/passwall2/0_default_config index f12275496..bbf73b488 100644 --- a/luci-app-passwall2/root/usr/share/passwall2/0_default_config +++ b/luci-app-passwall2/root/usr/share/passwall2/0_default_config @@ -57,15 +57,17 @@ config nodes 'myshunt' option remarks '分流总节点' option type 'Xray' option protocol '_shunt' - option AD 'nil' - option BT '_direct' - option TVB 'nil' - option China '_direct' - option default_node 'nil' option LAN '_direct' option Direct '_direct' - option Proxy '_default' + option AD 'nil' + option BT '_direct' option Netflix 'nil' + option TVB 'nil' + option Proxy '_default' + option China '_direct' + option QUIC '_blackhole' + option UDP 'nil' + option default_node 'nil' option domainStrategy 'IPOnDemand' option domainMatcher 'hybrid' @@ -194,4 +196,12 @@ config shunt_rules 'China' option network 'tcp,udp' option ip_list 'geoip:cn' option domain_list 'geosite:cn' - + +config shunt_rules 'QUIC' + option remarks 'QUIC' + option port '80,443' + option network 'udp' + +config shunt_rules 'UDP' + option remarks 'UDP' + option network 'udp' diff --git a/luci-theme-neobird/README.md b/luci-theme-neobird/README.md index 15d97cb5b..90c1e7fd3 100644 --- a/luci-theme-neobird/README.md +++ b/luci-theme-neobird/README.md @@ -1,6 +1,9 @@ # luci-theme-neobird ## 针对移动端优化的Openwrt主题 +For Lean's OpenWRT Only +https://github.com/coolsnowwolf/lede + 六年前用OP,随手把luci-theme-material改成了自己喜欢的Advancedtomato样式 因为用了很短时间便没再用OP了,主题也没再管。 后来便有了lede固件默认使用material主题的修改版做主题,包括今天的luci-theme-netgear和luci-theme-argon还是我的思路,不过都不是我喜欢的样子。 diff --git a/mosdns/Makefile b/mosdns/Makefile index fcf5e2707..c6839d643 100644 --- a/mosdns/Makefile +++ b/mosdns/Makefile @@ -5,7 +5,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mosdns -PKG_VERSION:=c840d4a +PKG_VERSION:=b9a9292 PKG_RELEASE:=$(AUTORELEASE) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz diff --git a/natflow/Makefile b/natflow/Makefile index 3ffb6eead..c917b22b1 100644 --- a/natflow/Makefile +++ b/natflow/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk include $(INCLUDE_DIR)/kernel.mk PKG_NAME:=natflow -PKG_VERSION:=20220406 +PKG_VERSION:=20220407 PKG_SOURCE_URL:=https://codeload.github.com/ptpt52/natflow/tar.gz/$(PKG_VERSION)? PKG_HASH:=skip