Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1216 commits
Select commit Hold shift + click to select a range
c580cef
xray-core: update to 25.7.25
zxlhhyccc Jul 25, 2025
b6a39c9
tuic-client: Update to code compile
zxlhhyccc Jul 25, 2025
1509046
luci-app-ssr-plus: Add resistant quantum `ML-DSA-65` signature verify…
Jul 26, 2025
5dae763
Merge pull request #1761 from zxlhhyccc/custom
zxlhhyccc Jul 26, 2025
179cf4a
xray-core: update to 25.7.26
zxlhhyccc Jul 26, 2025
2047afb
xray-core: update to 25.8.3
zxlhhyccc Aug 4, 2025
1c86ad9
shadowsocksr-libev: update mirror hash
zxlhhyccc Aug 8, 2025
49b0a5f
luci-app-ssr-plus: Freedom: Add maxSplit fragment option; Add applyTo…
Aug 8, 2025
06dd259
Merge pull request #1767 from zxlhhyccc/custom
zxlhhyccc Aug 8, 2025
b940005
luci-app-ssr-plus: fix `simple-obfs` depends
zxlhhyccc Aug 9, 2025
612c959
luci-app-ssr-plus: Fix `ss` configuration import
zxlhhyccc Aug 10, 2025
f5a12e0
luci-app-ssr-plus: support xray ech
Aug 10, 2025
d1f7872
Merge pull request #1769 from zxlhhyccc/custom
zxlhhyccc Aug 10, 2025
cb16d0d
shadowsocks-libev: update mirror hash
zxlhhyccc Aug 11, 2025
83e4546
chinadns-ng: update to 2025.08.09
zxlhhyccc Aug 12, 2025
026b0cf
luci-app-ssr-plus: Optimize the tag value of the shard
zxlhhyccc Aug 12, 2025
2b50567
naiveproxy: update to 139.0.7258.62-1
Aug 12, 2025
f31ce35
gn: update to git HEAD
Aug 13, 2025
c50ca1f
Merge pull request #1773 from zxlhhyccc/custom
zxlhhyccc Aug 13, 2025
502f1c4
shadowsocksr-libev: use local SRC
coolsnowwolf Aug 20, 2025
c0fd358
luci-app-ssr-plus: Fix configuration import and generate configuratio…
Aug 22, 2025
ac6c566
Merge pull request #1777 from zxlhhyccc/custom
zxlhhyccc Aug 22, 2025
8f5ee81
dns2socks-rust: Bump version 0.2.1
zxlhhyccc Aug 22, 2025
0b4e61c
dns2socks-rust: switch to release version build
coolsnowwolf Aug 24, 2025
be514fd
tcping: use local SRC
coolsnowwolf Aug 24, 2025
947c8d9
luci-app-ssr-plus: Merge `xhttp` and `splithttp`.
Aug 29, 2025
01cfdbc
Merge pull request #1782 from zxlhhyccc/custom
zxlhhyccc Aug 29, 2025
3b7277f
trojan: Fix boost 1.89 ver build.
Aug 29, 2025
9a736fd
Merge pull request #1783 from zxlhhyccc/custom
zxlhhyccc Aug 29, 2025
334f00f
trojan: update `boost1.89` build patch.
zxlhhyccc Aug 30, 2025
c341a4f
Update 002-Fix-boost1.89-build.patch
zxlhhyccc Aug 30, 2025
bd2ef70
trojan: Fix boost 1.89 patch.
zxlhhyccc Sep 1, 2025
d08c719
luci-app-ssr-plus: Adapt and optimize configuration code
Sep 1, 2025
96080b0
luci-app-ssr-plus: Adapt and optimize configuration code
zxlhhyccc Sep 1, 2025
735ff2f
xray-core: update to 25.9.5
zxlhhyccc Sep 5, 2025
e343d46
luci-app-ssr-plus: Fix and optimized code. (#1787)
zxlhhyccc Sep 9, 2025
0e0e9ea
luci-app-ssr-plus: Fix issue where node could not jump when it was la…
zxlhhyccc Sep 13, 2025
5cd8cbc
luci-app-ssr-plus: Make sure to always display `Move up` and `Move do…
zxlhhyccc Sep 13, 2025
ef1a455
luci-app-ssr-plus: Enable alpn and optimize code. (#1790)
zxlhhyccc Sep 13, 2025
9c7fb05
luci-app-ssr-plus: remove xmux configuration not compatible with xray…
Sep 13, 2025
c245739
Merge pull request #1791 from zxlhhyccc/custom
zxlhhyccc Sep 13, 2025
bebb99b
xray-core: update to 25.9.11
zxlhhyccc Sep 13, 2025
3c120cb
hysteria: update to 2.6.3
zxlhhyccc Sep 13, 2025
4787135
v2raya: Update to 2.2.7.1
zxlhhyccc Sep 13, 2025
29a8066
Update multi-arch-test-build.yml
zxlhhyccc Sep 13, 2025
77ec5ee
Update multi-arch-test-build.yml
zxlhhyccc Sep 13, 2025
f72602e
Update multi-arch-test-build.yml
zxlhhyccc Sep 13, 2025
d4dc7e0
luci-app-ssr-plus: Fix typo erro.
Sep 15, 2025
5f4ba38
update ci.
Sep 15, 2025
00b380d
Merge pull request #1792 from zxlhhyccc/custom
zxlhhyccc Sep 15, 2025
449e8a4
update CI
Sep 15, 2025
b28c260
Merge branch 'master' into custom
zxlhhyccc Sep 15, 2025
c32322f
Merge pull request #1794 from zxlhhyccc/custom
zxlhhyccc Sep 17, 2025
0ec475e
luci-app-ssr-plus: Add `Xray: shadowsocks` import and subscribe.
Sep 17, 2025
dda13bf
simple-obfs: update mirror hash
Sep 19, 2025
d08227d
Merge pull request #1796 from zxlhhyccc/tmp
zxlhhyccc Sep 19, 2025
c22b0a5
naiveproxy: Update to 140.0.7339.123-1
Sep 20, 2025
7cbed67
gn: update to Git HEAD (2025-09-18)
Sep 20, 2025
d43f502
Merge pull request #1797 from zxlhhyccc/tmp
zxlhhyccc Sep 20, 2025
5468299
dns2socks-rust: update to 0.2.3
zxlhhyccc Sep 21, 2025
2ca4821
luci-app-ssr-plus: add udp ping test node feature
coolsnowwolf Sep 24, 2025
06c4fd4
luci-app-ssr-plus: add udp ping test node feature
coolsnowwolf Sep 25, 2025
596ab4d
luci-app-ssr-plus: add nftables fw4 support
coolsnowwolf Oct 1, 2025
3770270
Merge branch 'master' of https://github.com/fw876/helloworld
coolsnowwolf Oct 1, 2025
2bfc32a
luci-app-ssr-plus: Optimize the import.
zxlhhyccc Oct 3, 2025
90984cd
luci-app-ssr-plus: Update nftables fw4 support.
Oct 3, 2025
19f4450
hysteria: update to 2.6.4
zxlhhyccc Oct 4, 2025
9c97233
v2ray-plugin: update to 5.40.0
zxlhhyccc Oct 4, 2025
56ef2e9
luci-app-ssr-plus: Add common trojan configuration import and optimiz…
zxlhhyccc Oct 7, 2025
ebb2468
luci-app-ssr-plus: Fix the trojan of Xray and optimize the shadowsock…
zxlhhyccc Oct 7, 2025
99cf8fb
naiveproxy: update to 140.0.7339.123-3
zxlhhyccc Oct 7, 2025
f41b299
luci-app-ssr-plus: update subscribe filter words.
zxlhhyccc Oct 9, 2025
f4df419
luci-app-ssr-plus: Optimize subscribe code to ensure all parse of node.
zxlhhyccc Oct 11, 2025
861cf21
luci-app-ssr-plus: Optimize subscribe code.
zxlhhyccc Oct 11, 2025
6d0f276
luci-app-ssr-plus: Fix subscribe code.
zxlhhyccc Oct 12, 2025
a8c7dda
luci-app-ssr-plus: Add `TUIC` configuration import and subscribe.
Oct 13, 2025
82d135e
Merge pull request #1808 from zxlhhyccc/tuic
zxlhhyccc Oct 13, 2025
f02a094
luci-app-ssr-plus: optimize code.
Oct 15, 2025
3cf7f5a
Merge pull request #1809 from zxlhhyccc/tuic
zxlhhyccc Oct 15, 2025
6d6f1b8
Revert "luci-app-ssr-plus: Optimize subscribe code to ensure all pars…
Oct 16, 2025
86572b0
Merge pull request #1810 from zxlhhyccc/tuic
zxlhhyccc Oct 16, 2025
60d063d
Merge pull request #1804 from zxlhhyccc/com
coolsnowwolf Oct 22, 2025
b6abd4a
hysteria: update to 2.6.5
zxlhhyccc Oct 24, 2025
cc093a3
dnsproxy: Update to 0.77.0
zxlhhyccc Oct 25, 2025
5fee63f
v2ray-core: Update to 5.41.0
zxlhhyccc Oct 25, 2025
a048994
v2ray-plugin: update to 5.41.0
zxlhhyccc Oct 25, 2025
c9bffbd
xray-core: update to 25.10.15
zxlhhyccc Oct 25, 2025
2046a79
luci-app-ssr-plus: Fix count `nft rules` .
zxlhhyccc Oct 26, 2025
e438128
luci-app-ssr-plus: Add `ipt` `nft` build options.
Oct 31, 2025
43162b9
luci-app-ssr-plus: Optimize `vless` subscribe code.
Oct 31, 2025
bff8233
Merge pull request #1815 from zxlhhyccc/tuic
zxlhhyccc Oct 31, 2025
d4d2f01
luci-app-ssr-plus: Add missing `nft` support and optimize code
Oct 31, 2025
9c37482
Merge pull request #1816 from zxlhhyccc/tuic
zxlhhyccc Oct 31, 2025
6375085
luci-app-ssr-plus: Fix and optimize tuic protocol.
Nov 3, 2025
5d98b74
Merge pull request #1817 from zxlhhyccc/tuic
zxlhhyccc Nov 4, 2025
7328747
tuic-client: update to 1.6.2
Nov 4, 2025
7455090
Merge pull request #1819 from zxlhhyccc/tuic
zxlhhyccc Nov 7, 2025
3dd8c94
luci-app-ssr-plus: Fix nftables fw4 support.
Nov 8, 2025
25292fb
Merge pull request #1820 from zxlhhyccc/tuic
zxlhhyccc Nov 9, 2025
e7385f6
luci-app-ssr-plus: Full fix nftables fw4 support.
Nov 12, 2025
3ccd511
Merge pull request #1822 from zxlhhyccc/tuic
zxlhhyccc Nov 16, 2025
27a1ac6
luci-app-ssr-plus: Fix nftables fw4 support typo erro and optimized c…
Nov 16, 2025
537c9e8
Merge pull request #1824 from zxlhhyccc/tuic
zxlhhyccc Nov 16, 2025
215e330
luci-app-ssr-plus: optimize nftables fw4 rules.
Nov 21, 2025
9c0af25
Merge pull request #1827 from zxlhhyccc/tuic
zxlhhyccc Nov 21, 2025
1f64e69
luci-app-ssr-plus: Update configuration import and subscribe code.
Nov 21, 2025
2e07d3b
Merge pull request #1828 from zxlhhyccc/tuic
zxlhhyccc Nov 22, 2025
5b34028
luci-app-ssr-plus: Fix `trojan` subscribe code.
zxlhhyccc Nov 26, 2025
e9f9c2b
update xray-core-v25.12.2
jiaopengzi Dec 3, 2025
45f3e6e
luci-app-ssr-plus: add mosdns custom dns server option
xpflying Nov 24, 2025
94c2d41
Merge pull request #1835 from jiaopengzi/feature/update-xray-core-v25…
coolsnowwolf Dec 3, 2025
58934dd
Merge pull request #1834 from xpflying/master
zxlhhyccc Dec 7, 2025
033fdd4
luci-app-ssr-plus: optimize nftables fw4 rules and Add nftables rule …
Dec 7, 2025
08dd79a
Merge pull request #1838 from zxlhhyccc/tuic
zxlhhyccc Dec 7, 2025
8e471dd
luci-app-ssr-plus: Stop run not delete the persistence rule file.
zxlhhyccc Dec 7, 2025
5ffe90d
luci-app-ssr-plus: Adjust the configuration file used for nftables.
Dec 12, 2025
56bb89b
xray-core: update to 25.12.8
zxlhhyccc Dec 12, 2025
a0e8aea
Merge pull request #1842 from zxlhhyccc/tuic
zxlhhyccc Dec 12, 2025
4e4fae7
luci-app-ssr-plus: Add access control IP change re-persistence rules.
Dec 14, 2025
1771adf
Merge pull request #1843 from zxlhhyccc/tuic
zxlhhyccc Dec 14, 2025
5f09794
dnsproxy: Update to 0.78.2
zxlhhyccc Dec 15, 2025
d4a21b4
luci-app-ssr-plus: Fix the issue where Xray nodes with download IP ca…
Dec 15, 2025
2b01d98
Merge pull request #1844 from zxlhhyccc/tuic
zxlhhyccc Dec 19, 2025
43535dc
luci-app-ssr-plus: Fix `TUIC` configuration and subscribe.
Dec 20, 2025
60286e6
Merge pull request #1847 from zxlhhyccc/tuic
zxlhhyccc Dec 20, 2025
0c4a97f
tuic-client: update to 1.6.5
Dec 21, 2025
d193180
Merge pull request #1848 from zxlhhyccc/tuic
zxlhhyccc Dec 22, 2025
98c551e
luci-app-ssr-plus: optimize the enabling logic of xray flow
Dec 22, 2025
baed560
shadowsocks-rust: update to 1.24.0
zxlhhyccc Dec 22, 2025
e9a985c
Merge pull request #1849 from zxlhhyccc/tuic
zxlhhyccc Dec 23, 2025
31ce315
Update advanced.lua
xcyll Dec 23, 2025
310668f
naiveproxy: update to 143.0.7499.109-2
zxlhhyccc Dec 23, 2025
38d3580
Merge pull request #1851 from xcyll/xcyll-patch-1
zxlhhyccc Dec 23, 2025
85c187a
luci-app-ssr-plus: perform simple fault-tolerant processing for xray …
Dec 25, 2025
3856d76
Merge pull request #1852 from zxlhhyccc/tuic
zxlhhyccc Dec 25, 2025
3eec970
luci-app-ssr-plus: Fix configuration issue of vmess protocol.
Dec 25, 2025
466df47
Merge pull request #1853 from zxlhhyccc/tuic
zxlhhyccc Dec 26, 2025
f3afb82
luci-app-ssr-plus: fix clearing luci cache.
zxlhhyccc Dec 27, 2025
dc8015b
luci-app-ssr-plus: Fix up/down and add top/bottom.
Dec 27, 2025
16765d9
luci-app-ssr-plus: Update scheduling configuration for periodic update.
Dec 27, 2025
f71e4f6
Merge pull request #1854 from zxlhhyccc/tuic
zxlhhyccc Dec 27, 2025
0a29059
luci-app-ssr-plus: Optimize server list code.
Dec 29, 2025
1c6be57
Merge pull request #1858 from zxlhhyccc/tuic
zxlhhyccc Dec 29, 2025
5f30e98
luci-app-ssr-plus: add Xray pre-connect (testpre).
Dec 30, 2025
02485f1
Merge pull request #1860 from zxlhhyccc/tuic
zxlhhyccc Dec 30, 2025
e29faa8
tuic-client: Update to 1.6.7
zxlhhyccc Jan 6, 2026
3a9d2cc
v2ray-plugin: update to 5.43.0
zxlhhyccc Jan 6, 2026
5fd1ad2
v2ray-core: Update to 5.43.0
zxlhhyccc Jan 6, 2026
6c1aaef
luci-app-ssr-plus: Fix issue where switch the master node could not r…
zxlhhyccc Jan 7, 2026
cf098b9
luci-app-ssr-plus: Optimize the startup speed.
Jan 8, 2026
cb8f7d7
Merge pull request #1865 from zxlhhyccc/tuic
zxlhhyccc Jan 9, 2026
96e0988
luci-app-ssr-plus: Add udp proto rule to iptables.
Jan 12, 2026
1bd89dc
Merge pull request #1867 from zxlhhyccc/tuic
zxlhhyccc Jan 12, 2026
89c6931
luci-app-ssr-plus: Optimize iptables rules.
Jan 14, 2026
148a633
Merge pull request #1868 from zxlhhyccc/tuic
zxlhhyccc Jan 14, 2026
e9efccf
xray-core: update to 26.1.13
zxlhhyccc Jan 15, 2026
4e29e5d
luci-app-ssr-plus: Fix access control issue caused by game mode.
Jan 15, 2026
b688e23
Merge pull request #1869 from zxlhhyccc/tuic
zxlhhyccc Jan 15, 2026
a773331
luci-app-ssr-plus: Restore enforce tcp and optimize ipt game rules.
Jan 16, 2026
f1c7741
Merge pull request #1872 from zxlhhyccc/tuic
zxlhhyccc Jan 16, 2026
cf620de
v2ray-core: Update to 5.44.1
zxlhhyccc Jan 19, 2026
8108b82
xray-core: update to 26.1.18
zxlhhyccc Jan 19, 2026
bacd0d2
luci-app-ssr-plus: Add support for Xray Hysteria2 protocol.
Jan 19, 2026
497671a
Merge pull request #1874 from zxlhhyccc/tuic
zxlhhyccc Jan 19, 2026
b50cc11
luci-app-ssr-plus: Add Xray Hysteria2 protocol configuration import a…
Jan 21, 2026
299dd2e
Merge pull request #1875 from zxlhhyccc/tuic
zxlhhyccc Jan 21, 2026
3bc8494
hysteria: update to 2.7.0
zxlhhyccc Jan 21, 2026
1997773
luci-app-ssr-plus: Add missing nft rules.
zxlhhyccc Jan 23, 2026
bf72025
luci-app-ssr-plus: Do not generate gfw list when mode is not gfw.
Jan 25, 2026
3ee3224
luci-app-ssr-plus: Fix config error.
Jan 25, 2026
26cc514
Merge pull request #1876 from zxlhhyccc/tuic
zxlhhyccc Jan 25, 2026
66e034a
Merge pull request #1877 from zxlhhyccc/tuic
zxlhhyccc Jan 25, 2026
e554c10
luci-app-ssr-plus: Add support for selecting firewall tools when ipta…
Jan 25, 2026
dc2e290
Merge pull request #1878 from zxlhhyccc/tuic
zxlhhyccc Jan 25, 2026
f92176d
luci-app-ssr-plus: fix type erro.
zxlhhyccc Jan 26, 2026
d24135c
xray-core: update to 26.1.23
zxlhhyccc Jan 29, 2026
7537bd3
luci-app-ssr-plus: Remove UDP rules, optimize the code, and organize …
Jan 30, 2026
a06a07c
Merge pull request #1881 from zxlhhyccc/tuic
zxlhhyccc Jan 31, 2026
247042a
luci-app-ssr-plus: Remove invalid rules.
Jan 31, 2026
efb17fa
Merge pull request #1882 from zxlhhyccc/tuic
zxlhhyccc Jan 31, 2026
5230edf
luci-app-ssr-plus: Restore default CBI save & apply behavior.
Feb 1, 2026
155a384
Merge pull request #1883 from zxlhhyccc/tuic
zxlhhyccc Feb 1, 2026
bd3f0b1
xray-core: update to 26.2.2
zxlhhyccc Feb 2, 2026
f499809
luci-app-ssr-plus: remove allowInsecure in xray 26.1.31 or later.
Feb 2, 2026
2e31806
Merge pull request #1885 from zxlhhyccc/tuic
zxlhhyccc Feb 2, 2026
8ea2450
luci-app-ssr-plus: adjust and optimize.
Feb 3, 2026
862bc91
Merge pull request #1886 from zxlhhyccc/tuic
zxlhhyccc Feb 3, 2026
bcd4849
xray-core: update to 26.2.4
zxlhhyccc Feb 5, 2026
dcdf4c6
v2ray-plugin: update to 5.44.1
zxlhhyccc Feb 5, 2026
cb1b483
redsocks2: Fix IPv6 bind() error in bound_udp_get()
zxlhhyccc Feb 5, 2026
3d5433b
luci-app-ssr-plus: Revert "luci-app-ssr-plus: Do not generate gfw lis…
Feb 6, 2026
21b15c9
Merge pull request #1887 from zxlhhyccc/tuic
zxlhhyccc Feb 6, 2026
1b8e38a
xray-core: update to 26.2.6
zxlhhyccc Feb 6, 2026
522a3fd
luci-app-ssr-plus: Fix the issue where fw4 does not support reload.
Feb 6, 2026
e59321c
luci-app-ssr-plus: replace the xray hysteria2 obfuscation from udpmas…
Feb 6, 2026
ea46098
Merge pull request #1889 from zxlhhyccc/tuic
zxlhhyccc Feb 6, 2026
1d2e795
luci-app-ssr-plus: Fix the issue of reading restrictions for the IP l…
Feb 6, 2026
d021a30
Merge pull request #1890 from zxlhhyccc/tuic
zxlhhyccc Feb 6, 2026
727ddca
luci-app-ssr-plus: Fix Xray hysteria2 alias cannot be import issue.
Feb 6, 2026
7bc544c
Merge pull request #1891 from zxlhhyccc/tuic
zxlhhyccc Feb 6, 2026
9574e04
luci-app-ssr-plus: migrate xray kcp header/security to finalmask/udp.
Feb 7, 2026
2b6927d
Merge pull request #1892 from zxlhhyccc/tuic
zxlhhyccc Feb 7, 2026
3e79998
luci-app-ssr-plus: Fix import configuration and subscribe.
Feb 7, 2026
a1da22e
Merge pull request #1893 from zxlhhyccc/tuic
zxlhhyccc Feb 7, 2026
23c289a
luci-app-ssr-plus: Fix the issue with the ALPN value of the subscript…
Feb 8, 2026
bb72567
Merge pull request #1894 from zxlhhyccc/tuic
zxlhhyccc Feb 8, 2026
aa3fd5d
luci-app-ssr-plus: Fix Xray xhttp proto import and subscribe.
Feb 8, 2026
cc80cdf
Merge pull request #1895 from zxlhhyccc/tuic
zxlhhyccc Feb 8, 2026
8358861
luci-app-ssr-plus: Fix Xray kcp proto import and subscribe.
Feb 8, 2026
a7fb93c
Merge pull request #1896 from zxlhhyccc/tuic
zxlhhyccc Feb 8, 2026
e5aebe9
luci-app-ssr-plus: Fix Xray kcp proto import typo erro.
Feb 8, 2026
532162b
Merge pull request #1897 from zxlhhyccc/tuic
zxlhhyccc Feb 8, 2026
ac28c85
v2raya: Update to 2.2.7.5
zxlhhyccc Feb 8, 2026
b96a3fe
luci-app-ssr-plus: optimize xray kcp finalmask/udp logic
Feb 9, 2026
144e0ee
Merge pull request #1898 from zxlhhyccc/tuic
zxlhhyccc Feb 9, 2026
dfbdfb5
luci-app-ssr-plus: Add import/subscribe support tfo params.
Feb 9, 2026
d4c51d8
Merge pull request #1899 from zxlhhyccc/tuic
zxlhhyccc Feb 9, 2026
6b8211c
luci-app-ssr-plus: Do not use ipset and nftset rules in non-GFW mode.
Feb 10, 2026
c600d2b
Merge pull request #1900 from zxlhhyccc/tuic
zxlhhyccc Feb 10, 2026
ca3d707
luci-app-ssr-plus: update ping value displayed integer.
Feb 10, 2026
345f3c2
Merge pull request #1901 from zxlhhyccc/tuic
zxlhhyccc Feb 10, 2026
2d7a36e
luci-app-ssr-plus: Fix recover rule issues after device reboot when u…
Feb 11, 2026
c26f7b9
Merge pull request #1903 from zxlhhyccc/tuic
zxlhhyccc Feb 12, 2026
8983484
v2ray-plugin: update to 5.45.1
zxlhhyccc Feb 21, 2026
7c53413
v2ray-plugin: update to 5.46.0
zxlhhyccc Feb 21, 2026
a268e56
Fix hash
binge8 Feb 27, 2026
25f073e
Merge pull request #1904 from binge8/patch-4
zxlhhyccc Mar 5, 2026
b232522
luci-app-ssr-plus: Fix and optimize、Add finalmask support of xray and…
Mar 21, 2026
4b276c6
Merge pull request #1909 from zxlhhyccc/tuic
zxlhhyccc Mar 22, 2026
24ce0ea
tuic-client: Update to 1.7.1
zxlhhyccc Mar 22, 2026
fbeb13c
mosdns: update to 5.3.4
zxlhhyccc Mar 22, 2026
a99cc00
tuic-client: Update to 1.7.2
Mar 22, 2026
816d74e
Merge pull request #1910 from zxlhhyccc/tuic
zxlhhyccc Mar 26, 2026
9fa6cc1
luci-app-ssr-plus: support new hysteria2 config of xray.
Mar 26, 2026
59ac9eb
Merge pull request #1917 from zxlhhyccc/tuic
zxlhhyccc Mar 27, 2026
8f1ee17
mosdns: Fix HASH and refrsh patch.
Mar 27, 2026
9cdc90a
luci-app-ssr-plus: set rmempty=true for uci cursor
zxlhhyccc Mar 27, 2026
19456b0
Merge pull request #1918 from zxlhhyccc/tuic
zxlhhyccc Mar 27, 2026
868dfbd
luci-app-ssr-plus: Add number for same alias.
Mar 28, 2026
3983574
luci-app-ssr-plus: Add node alias dialog box.
Mar 28, 2026
8e28913
luci-app-ssr-plus: modify the default value of xray echforcequery.
Mar 28, 2026
1e974c6
Merge pull request #1920 from zxlhhyccc/tuic
zxlhhyccc Mar 28, 2026
b40ca66
xray-core: update to 26.3.27
zxlhhyccc Mar 29, 2026
f2dee10
v2ray-plugin: update to 5.48.0
zxlhhyccc Mar 29, 2026
2c438b3
v2ray-core: Update to 5.47.0
zxlhhyccc Mar 29, 2026
995000d
luci-app-ssr-plus: migrate xray fragment/noise to finalmask.
Mar 30, 2026
2a6da1e
Merge pull request #1922 from zxlhhyccc/tuic
zxlhhyccc Mar 30, 2026
cb5be9f
luci-app-ssr-plus: Fix Xray nodes raw protocol + HTTP disguise config…
Mar 30, 2026
7ebf2f1
Merge pull request #1923 from zxlhhyccc/tuic
zxlhhyccc Mar 30, 2026
c7d55a7
hysteria: update to 2.8.1
zxlhhyccc Mar 31, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
135 changes: 135 additions & 0 deletions .github/copilot-instructions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
# OpenWrt helloworld 项目 AI 编码助手指导

本项目是一个针对 OpenWrt 的代理工具包集合,主要包含 ShadowSocks、V2Ray、Xray、Trojan 等各种网络代理工具的 OpenWrt 包。

## 项目架构概览

### 核心组件分类
- **LuCI 应用**: `luci-app-ssr-plus/` - 统一的 Web 管理界面
- **代理工具**: `shadowsocks-*`, `v2ray-*`, `xray-*`, `trojan/` 等目录
- **DNS 工具**: `chinadns-ng/`, `dns2socks/`, `mosdns/` 等
- **辅助工具**: `tcping/`, `microsocks/`, `redsocks2/` 等

### 关键架构决策
- 每个工具都是独立的 OpenWrt 包,拥有自己的 Makefile 和构建配置
- LuCI 应用通过 UCI 配置系统统一管理所有代理工具
- 支持多架构编译(arm, mips, x86_64 等),通过 CI/CD 自动测试
- 使用条件编译机制,用户可选择性包含所需组件

## OpenWrt 包开发约定

### Makefile 模式
```makefile
include $(TOPDIR)/rules.mk

PKG_NAME:=工具名
PKG_VERSION:=版本号
PKG_RELEASE:=构建版本

# 语言特定的构建依赖
PKG_BUILD_DEPENDS:=golang/host # Go 项目
PKG_BUILD_DEPENDS:=rust/host # Rust 项目
PKG_BUILD_DEPENDS:=openssl # C/C++ 项目

# 包含相应的构建框架
include $(INCLUDE_DIR)/package.mk
include $(TOPDIR)/feeds/packages/lang/golang/golang-package.mk # Go
include $(TOPDIR)/feeds/packages/lang/rust/rust-package.mk # Rust
```

### 包依赖管理
- **运行时依赖**: `DEPENDS:=+ca-bundle +libstdcpp`
- **架构限制**: `depends on !(arc||armeb||mips)` 排除特定架构
- **条件依赖**: 通过 `CONFIG_PACKAGE_*` 实现选择性依赖

### 版本管理约定
- 使用上游项目的语义化版本号
- `PKG_RELEASE` 用于本项目的修订版本
- 通过 `PKG_SOURCE_URL` 和 `PKG_HASH` 确保构建可重现性

## LuCI 应用集成模式

### 文件结构约定
```
luci-app-ssr-plus/
├── luasrc/
│ ├── controller/shadowsocksr.lua # 路由控制器
│ ├── model/cbi/shadowsocksr/ # 配置界面模型
│ └── view/shadowsocksr/ # 自定义视图模板
├── root/
│ ├── etc/init.d/shadowsocksr # 系统服务脚本
│ ├── etc/config/shadowsocksr # UCI 配置模板
│ └── usr/share/shadowsocksr/ # 业务逻辑脚本
└── po/ # 国际化文件
```

### UCI 配置模式
- 配置文件: `/etc/config/shadowsocksr`
- 通过 `uci get/set` 命令访问配置
- LuCI 界面自动与 UCI 配置同步
- 配置更改触发服务重启: `/etc/init.d/shadowsocksr restart`

### 多协议支持模式
```lua
-- 动态检测可用的代理工具
local function is_finded(e)
return luci.sys.exec(string.format('type -t -p "%s" 2>/dev/null', e)) ~= ""
end

-- 根据检测结果动态生成选项
if is_finded("xray") or is_finded("v2ray") then
o:value("v2ray", translate("V2Ray/XRay"))
end
```

## 开发工作流程

### 构建和测试
```bash
# 克隆项目作为 OpenWrt feed
git clone https://github.com/fw876/helloworld.git package/helloworld

# 或作为 git submodule
git submodule add https://github.com/fw876/helloworld.git package/helloworld

# 构建特定包
make package/helloworld/luci-app-ssr-plus/compile V=s
```

### 多架构支持
- CI 自动测试 7 种主要架构(arm, mips, x86 等)
- 每个 Makefile 需声明架构兼容性
- 使用 `PKG_BUILD_PARALLEL:=1` 启用并行构建

### 配置系统集成
- 通过 `PKG_CONFIG_DEPENDS` 声明配置依赖关系
- LuCI 应用的配置选项影响包的编译行为
- 使用 `choice` 和 `config` 块实现互斥选项

## 关键集成点

### 服务管理
- 所有服务通过 `/etc/init.d/shadowsocksr` 统一管理
- 支持 `start`, `stop`, `restart`, `status` 等标准操作
- 使用 `SERVICE_DAEMONIZE=1` 实现后台运行

### 配置生成
- `/usr/share/shadowsocksr/gen_config.lua` 负责生成各代理工具的原生配置
- 支持 JSON 配置格式的自动转换
- 实现了配置模板系统,支持动态参数替换

### 订阅和更新
- `/usr/share/shadowsocksr/subscribe.lua` 处理节点订阅
- 支持多种订阅链接格式(ss://, ssr://, vmess:// 等)
- 自动解析和转换节点配置格式

## 调试和日志
- 主日志文件: `/var/log/ssrplus.log`
- 使用 `uci show shadowsocksr` 查看当前配置
- 通过 LuCI 界面的"状态"页面监控服务运行状态

## 注意事项
- 修改 LuCI 文件后需要清除浏览器缓存
- UCI 配置更改需要 `uci commit` 才能生效
- 新增代理工具需要同时更新 LuCI 界面和服务脚本
- 多语言支持需要更新 `po/` 目录下的翻译文件
138 changes: 101 additions & 37 deletions .github/workflows/multi-arch-test-build.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
name: Test Build

on:
push:
branches:
- master
- main
pull_request:
paths-ignore:
- '**.md'
Expand All @@ -13,30 +17,50 @@ jobs:
fail-fast: false
matrix:
include:
- arch: aarch64_cortex-a53
target: bcm27xx-bcm2710
tag: sdk-bcm27xx_bcm2710
- arch: arm_cortex-a9_vfpv3-d16
target: mvebu-cortexa9

- arch: arm_cortex-a7_neon-vfpv4
target: ipq40xx-generic
tag: sdk-ipq40xx_generic
- arch: mips_24kc
target: ath79-generic

- arch: mipsel_24kc
target: ramips-mt7621
tag: sdk-ramips_mt7621
target: mt7621

- arch: aarch64_cortex-a53
target: mvebu-cortexa53

- arch: arm_cortex-a15_neon-vfpv4
target: armvirt-32

- arch: i386_pentium-mmx
target: x86-geode

- arch: x86_64
target: x86-64
tag: sdk-x86_64

steps:
- uses: actions/checkout@v2
- name: Free Disk Space
uses: jlumbroso/free-disk-space@main
with:
tool-cache: true
android: true
dotnet: true
haskell: true
large-packages: true
docker-images: true
swap-storage: true

- uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Determine branch name
run: |
BRANCH="${GITHUB_BASE_REF#refs/heads/}"
if [ "$GITHUB_EVENT_NAME" = "pull_request" ]; then
BRANCH="${GITHUB_BASE_REF#refs/heads/}"
else
BRANCH="${GITHUB_REF#refs/heads/}"
fi
echo "Building for $BRANCH"
echo "BRANCH=$BRANCH" >> $GITHUB_ENV

Expand All @@ -46,78 +70,118 @@ jobs:
PKG_ROOTS=$(find . -name Makefile | \
grep -v ".*/src/Makefile" | \
sed -e 's@./\(.*\)/Makefile@\1/@')
CHANGES=$(git diff --diff-filter=d --name-only origin/$BRANCH)


if [ "$GITHUB_EVENT_NAME" = "pull_request" ]; then
BASE_REF="origin/${BRANCH}"
else
BASE_REF="HEAD^"
fi

CHANGES=$(git diff --diff-filter=d --name-only $BASE_REF HEAD)

PACKAGES=""
for ROOT in $PKG_ROOTS; do
for CHANGE in $CHANGES; do
if [[ "$CHANGE" == "$ROOT"* ]]; then
PACKAGES+=$(echo "$ROOT" | sed -e 's@\(.*\)/@\1 @')
PACKAGE_NAME=$(echo "$ROOT" | sed -e 's@\(.*\)/@\1@')
PACKAGES="$PACKAGES $PACKAGE_NAME"
break
fi
done
done
# fallback to test packages if nothing explicitly changes this is
# should run if other mechanics in packages.git changed

# fallback to test packages if nothing explicitly changes
PACKAGES="${PACKAGES:-luci-app-ssr-plus}"
# clear spaces
PACKAGES=$(echo $PACKAGES | xargs)

echo "Building $PACKAGES"
echo "PACKAGES=$PACKAGES" >> $GITHUB_ENV

- name: Build
uses: immortalwrt/gh-action-sdk@v1
uses: immortalwrt/gh-action-sdk@v7
env:
ARCH: ${{ matrix.tag }}-${{ env.BRANCH }}
ARCH: ${{ matrix.arch }}
FEEDNAME: packages_ci
V: s
target: ${{ matrix.target }}
packages: ${{ env.PACKAGES }}

- name: Move created packages to project dir
run: cp bin/packages/${{ matrix.arch }}/packages_ci/*.ipk . || true

- name: Collect metadata
run: |
MERGE_ID=$(git rev-parse --short HEAD)

if [ "$GITHUB_EVENT_NAME" = "pull_request" ]; then
BASE_ID=$(git rev-parse --short origin/$BRANCH)
HEAD_ID=$(git rev-parse --short HEAD)
PRNUMBER=${GITHUB_REF_NAME%/merge}
else
BASE_ID=$(git rev-parse --short HEAD^)
HEAD_ID=$MERGE_ID
PRNUMBER="push-$MERGE_ID"
fi

echo "MERGE_ID=$MERGE_ID" >> $GITHUB_ENV
echo "BASE_ID=$(git rev-parse --short HEAD^1)" >> $GITHUB_ENV
echo "HEAD_ID=$(git rev-parse --short HEAD^2)" >> $GITHUB_ENV
PRNUMBER=${GITHUB_REF_NAME%/merge}
echo "BASE_ID=$BASE_ID" >> $GITHUB_ENV
echo "HEAD_ID=$HEAD_ID" >> $GITHUB_ENV
echo "PRNUMBER=$PRNUMBER" >> $GITHUB_ENV
echo "ARCHIVE_NAME=${{matrix.arch}}-PR$PRNUMBER-$MERGE_ID" >> $GITHUB_ENV
echo "ARCHIVE_NAME=${{ matrix.arch }}-$PRNUMBER" >> $GITHUB_ENV

- name: Generate metadata
run: |
cat << _EOF_ > PKG-INFO
shopt -s nullglob
IPKS=( *.ipk )

cat << EOF > PKG-INFO
Metadata-Version: 2.1
Name: ${{env.ARCHIVE_NAME}}
Name: ${{ env.ARCHIVE_NAME }}
Version: $BRANCH
Author: $GITHUB_ACTOR
Home-page: $GITHUB_SERVER_URL/$GITHUB_REPOSITORY/pull/$PRNUMBER
Home-page: $GITHUB_SERVER_URL/$GITHUB_REPOSITORY
Download-URL: $GITHUB_SERVER_URL/$GITHUB_REPOSITORY/actions/runs/$GITHUB_RUN_ID
Summary: $PACKAGES
Platform: ${{ matrix.arch }}
Packages for ImmortalWrt $BRANCH running on ${{matrix.arch}}, built from PR $PRNUMBER
at commit $HEAD_ID, against $BRANCH at commit $BASE_ID, with merge SHA $MERGE_ID.

Packages for ImmortalWrt $BRANCH running on ${{ matrix.arch }}, built from $PRNUMBER
at commit $HEAD_ID, against $BRANCH at commit $BASE_ID.

Modified packages:
_EOF_
for p in $PACKAGES
do
echo " "$p >> PKG-INFO
EOF

for p in $PACKAGES; do
echo " $p" >> PKG-INFO
done

echo >> PKG-INFO
echo Full file listing: >> PKG-INFO
ls -al *.ipk >> PKG-INFO || true
echo "Package count: ${#IPKS[@]}" >> PKG-INFO
echo "Package size summary:" >> PKG-INFO
for f in "${IPKS[@]}"; do
du -sh "$f" >> PKG-INFO
done

if [ ${#IPKS[@]} -eq 0 ]; then
echo "No packages built." >> PKG-INFO
fi

cat PKG-INFO

- name: Store packages
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: ${{env.ARCHIVE_NAME}}-packages
name: ${{ env.ARCHIVE_NAME }}-packages
path: |
Packages
Packages.*
*.ipk
PKG-INFO

- name: Store logs
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: ${{env.ARCHIVE_NAME}}-logs
name: ${{ env.ARCHIVE_NAME }}-logs
path: |
logs/
PKG-INFO
18 changes: 18 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
*.o
.DS_Store
.*.swp
/.github/copilot-instructions.md
/*.patch
key-build*
*.orig
*.rej
*~
.#*
*#
.emacs.desktop*
TAGS*~
git-src
.project
.cproject
.ccache
.vscode*
Loading