update 2025-08-28 09:17:50
This commit is contained in:
parent
711cae04f5
commit
9c2ae877aa
@ -1136,6 +1136,7 @@ function renderNodeSettings(section, data, features, main_node, routing_mode) {
|
|||||||
o.modalonly = true;
|
o.modalonly = true;
|
||||||
|
|
||||||
o = s.option(form.Flag, 'tls_reality', _('REALITY'));
|
o = s.option(form.Flag, 'tls_reality', _('REALITY'));
|
||||||
|
o.depends({'tls': '1', 'type': 'anytls'});
|
||||||
o.depends({'tls': '1', 'type': 'vless'});
|
o.depends({'tls': '1', 'type': 'vless'});
|
||||||
o.modalonly = true;
|
o.modalonly = true;
|
||||||
|
|
||||||
|
@ -522,10 +522,10 @@ if (!isEmpty(main_node)) {
|
|||||||
enabled: true,
|
enabled: true,
|
||||||
server_name: cfg.tls_sni
|
server_name: cfg.tls_sni
|
||||||
} : null,
|
} : null,
|
||||||
domain_resolver: {
|
domain_resolver: (cfg.address_resolver || cfg.address_strategy) ? {
|
||||||
server: get_resolver(cfg.address_resolver),
|
server: get_resolver(cfg.address_resolver || dns_default_server),
|
||||||
strategy: cfg.address_strategy
|
strategy: cfg.address_strategy
|
||||||
},
|
} : null,
|
||||||
detour: get_outbound(cfg.outbound)
|
detour: get_outbound(cfg.outbound)
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_VERSION:=1.24.0
|
PKG_VERSION:=1.24.1
|
||||||
|
|
||||||
LUCI_TITLE:=LuCI Support for nikki
|
LUCI_TITLE:=LuCI Support for nikki
|
||||||
LUCI_DEPENDS:=+luci-base +nikki
|
LUCI_DEPENDS:=+luci-base +nikki
|
||||||
|
@ -3,17 +3,35 @@
|
|||||||
local api = require "luci.passwall.api"
|
local api = require "luci.passwall.api"
|
||||||
local appname = 'passwall'
|
local appname = 'passwall'
|
||||||
local map = self.map
|
local map = self.map
|
||||||
local ss_type = map:get("@global_subscribe[0]", "ss_type") or "xray"
|
|
||||||
local trojan_type = map:get("@global_subscribe[0]", "trojan_type") or "xray"
|
local has_ss = api.is_finded("ss-redir")
|
||||||
local vmess_type = map:get("@global_subscribe[0]", "vmess_type") or "xray"
|
local has_ss_rust = api.is_finded("sslocal")
|
||||||
local vless_type = map:get("@global_subscribe[0]", "vless_type") or "xray"
|
local has_trojan_plus = api.is_finded("trojan-plus")
|
||||||
local hysteria2_type = map:get("@global_subscribe[0]", "hysteria2_type") or "sing-box"
|
local has_singbox = api.finded_com("sing-box")
|
||||||
|
local has_xray = api.finded_com("xray")
|
||||||
|
local has_hysteria2 = api.finded_com("hysteria")
|
||||||
|
|
||||||
|
local function get_core(field, candidates)
|
||||||
|
local v = map:get(appname, "@global_subscribe[0]", field)
|
||||||
|
if not v or v == "" then
|
||||||
|
for _, c in ipairs(candidates) do
|
||||||
|
if c[1] then return c[2] end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return v
|
||||||
|
end
|
||||||
|
|
||||||
|
local ss_type = get_core("ss_type", {{has_ss,"shadowsocks-libev"},{has_ss_rust,"shadowsocks-rust"},{has_singbox,"sing-box"},{has_xray,"xray"}})
|
||||||
|
local trojan_type = get_core("trojan_type", {{has_trojan_plus,"trojan-plus"},{has_singbox,"sing-box"},{has_xray,"xray"}})
|
||||||
|
local vmess_type = get_core("vmess_type", {{has_xray,"xray"},{has_singbox,"sing-box"}})
|
||||||
|
local vless_type = get_core("vless_type", {{has_xray,"xray"},{has_singbox,"sing-box"}})
|
||||||
|
local hysteria2_type = get_core("hysteria2_type", {{has_hysteria2,"hysteria2"},{has_singbox,"sing-box"}})
|
||||||
-%>
|
-%>
|
||||||
<script src="<%=resource%>/qrcode.min.js"></script>
|
<script src="<%=resource%>/qrcode.min.js"></script>
|
||||||
<script type="text/javascript">//<![CDATA[
|
<script type="text/javascript">//<![CDATA[
|
||||||
let has_singbox = "<%=api.finded_com("sing-box")%>"
|
let has_singbox = "<%=has_singbox%>"
|
||||||
let has_xray = "<%=api.finded_com("xray")%>"
|
let has_xray = "<%=has_xray%>"
|
||||||
let has_hysteria2 = "<%=api.finded_com("hysteria")%>"
|
let has_hysteria2 = "<%=has_hysteria2%>"
|
||||||
let ss_type = "<%=ss_type%>"
|
let ss_type = "<%=ss_type%>"
|
||||||
let trojan_type = "<%=trojan_type%>"
|
let trojan_type = "<%=trojan_type%>"
|
||||||
let vmess_type = "<%=vmess_type%>"
|
let vmess_type = "<%=vmess_type%>"
|
||||||
|
@ -29,11 +29,22 @@ local has_singbox = api.finded_com("sing-box")
|
|||||||
local has_xray = api.finded_com("xray")
|
local has_xray = api.finded_com("xray")
|
||||||
local has_hysteria2 = api.finded_com("hysteria")
|
local has_hysteria2 = api.finded_com("hysteria")
|
||||||
local allowInsecure_default = nil
|
local allowInsecure_default = nil
|
||||||
local ss_type_default = uci:get(appname, "@global_subscribe[0]", "ss_type") or "shadowsocks-libev"
|
-- 取节点使用core类型(节点订阅页面未设置时,自动取默认)
|
||||||
local trojan_type_default = uci:get(appname, "@global_subscribe[0]", "trojan_type") or "trojan-plus"
|
local function get_core(field, candidates)
|
||||||
local vmess_type_default = uci:get(appname, "@global_subscribe[0]", "vmess_type") or "xray"
|
local v = uci:get(appname, "@global_subscribe[0]", field)
|
||||||
local vless_type_default = uci:get(appname, "@global_subscribe[0]", "vless_type") or "xray"
|
if not v or v == "" then
|
||||||
local hysteria2_type_default = uci:get(appname, "@global_subscribe[0]", "hysteria2_type") or "hysteria2"
|
for _, c in ipairs(candidates) do
|
||||||
|
if c[1] then return c[2] end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return v
|
||||||
|
end
|
||||||
|
local ss_type_default = get_core("ss_type", {{has_ss,"shadowsocks-libev"},{has_ss_rust,"shadowsocks-rust"},{has_singbox,"sing-box"},{has_xray,"xray"}})
|
||||||
|
local trojan_type_default = get_core("trojan_type", {{has_trojan_plus,"trojan-plus"},{has_singbox,"sing-box"},{has_xray,"xray"}})
|
||||||
|
local vmess_type_default = get_core("vmess_type", {{has_xray,"xray"},{has_singbox,"sing-box"}})
|
||||||
|
local vless_type_default = get_core("vless_type", {{has_xray,"xray"},{has_singbox,"sing-box"}})
|
||||||
|
local hysteria2_type_default = get_core("hysteria2_type", {{has_hysteria2,"hysteria2"},{has_singbox,"sing-box"}})
|
||||||
|
----
|
||||||
local domain_strategy_default = uci:get(appname, "@global_subscribe[0]", "domain_strategy") or ""
|
local domain_strategy_default = uci:get(appname, "@global_subscribe[0]", "domain_strategy") or ""
|
||||||
local domain_strategy_node = ""
|
local domain_strategy_node = ""
|
||||||
local preproxy_node_group, to_node_group, chain_node_type = "", "", ""
|
local preproxy_node_group, to_node_group, chain_node_type = "", "", ""
|
||||||
|
@ -1,15 +1,15 @@
|
|||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=nikki
|
PKG_NAME:=nikki
|
||||||
PKG_VERSION:=2025.07.27
|
PKG_VERSION:=2025.08.27
|
||||||
PKG_RELEASE:=2
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||||
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
|
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_URL:=https://github.com/MetaCubeX/mihomo.git
|
PKG_SOURCE_URL:=https://github.com/MetaCubeX/mihomo.git
|
||||||
PKG_SOURCE_VERSION:=v1.19.12
|
PKG_SOURCE_VERSION:=v1.19.13
|
||||||
PKG_MIRROR_HASH:=9ca38753d1b76268892cbf22e7d0f1348f58c0c6cff7305e87e41ea8193aba55
|
PKG_MIRROR_HASH:=94fdba59d158a4ac28358ab87d6152fe581ed3fbff71ad56b4a2aba462a485d6
|
||||||
|
|
||||||
PKG_LICENSE:=GPL3.0+
|
PKG_LICENSE:=GPL3.0+
|
||||||
PKG_MAINTAINER:=Joseph Mory <morytyann@gmail.com>
|
PKG_MAINTAINER:=Joseph Mory <morytyann@gmail.com>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user