From 09e19a411591c86d2cf6df2f546f7a251c5bee4d Mon Sep 17 00:00:00 2001 From: veuxit <232229112+veuxit@users.noreply.github.com> Date: Wed, 11 Mar 2026 15:51:50 +0500 Subject: [PATCH] add: xray xray-nightly v2ray-geoip v2ray-domain-list-community v2ray v2ray-nightly v2raya v2raya-nightly (#10379) * add: xray xray-nightly * xray-nightly: add nightly tag * add: v2ray-geoip v2ray-domain-list-community * Add deps * add services and xrays own geosite and geoip * fix pkg names * add: v2ray v2ray-nightly * add: v2raya v2raya-nightly * more available deps for v2raya * xray xray-nightly v2ray-geoip v2ray-domain-list-community v2ray v2ray-nightly v2raya v2raya-nightly: add versions to changelogs * v2raya v2raya-nightly: fix version * xray xray-nightly: remove unused files * v2raya-nightly: add -nightly to version * Update licenses * misc fixes * more fixes * funny * more * idk stuff * that's it * oa * a * pwd funny * don't strip debug * xray xray-nightly: add .sysuser and .tmpfiles files * Update xray-nightly.spec --------- Co-authored-by: madonuko --- anda/langs/go/v2ray/nightly/anda.hcl | 8 ++ anda/langs/go/v2ray/nightly/update.rhai | 7 ++ .../langs/go/v2ray/nightly/v2ray-nightly.spec | 72 ++++++++++++++++ anda/langs/go/v2ray/stable/anda.hcl | 5 ++ anda/langs/go/v2ray/stable/update.rhai | 1 + anda/langs/go/v2ray/stable/v2ray.spec | 67 +++++++++++++++ anda/langs/go/v2raya/nightly/anda.hcl | 8 ++ anda/langs/go/v2raya/nightly/update.rhai | 7 ++ .../go/v2raya/nightly/v2raya-nightly.spec | 80 ++++++++++++++++++ anda/langs/go/v2raya/stable/anda.hcl | 5 ++ anda/langs/go/v2raya/stable/update.rhai | 1 + anda/langs/go/v2raya/stable/v2raya.spec | 76 +++++++++++++++++ anda/langs/go/xray/nightly/anda.hcl | 8 ++ anda/langs/go/xray/nightly/update.rhai | 7 ++ anda/langs/go/xray/nightly/xray-nightly.spec | 84 +++++++++++++++++++ anda/langs/go/xray/nightly/xray.service | 14 ++++ anda/langs/go/xray/nightly/xray.sysusers | 1 + anda/langs/go/xray/nightly/xray.tmpfiles | 1 + anda/langs/go/xray/nightly/xray@.service | 14 ++++ anda/langs/go/xray/stable/anda.hcl | 5 ++ anda/langs/go/xray/stable/update.rhai | 1 + anda/langs/go/xray/stable/xray.service | 14 ++++ anda/langs/go/xray/stable/xray.spec | 77 +++++++++++++++++ anda/langs/go/xray/stable/xray.sysusers | 1 + anda/langs/go/xray/stable/xray.tmpfiles | 1 + anda/langs/go/xray/stable/xray@.service | 14 ++++ .../misc/v2ray-domain-list-community/anda.hcl | 9 ++ .../v2ray-domain-list-community/update.rhai | 7 ++ .../v2ray-domain-list-community.spec | 37 ++++++++ anda/misc/v2ray-geoip/anda.hcl | 9 ++ anda/misc/v2ray-geoip/update.rhai | 7 ++ anda/misc/v2ray-geoip/v2ray-geoip.spec | 43 ++++++++++ 32 files changed, 691 insertions(+) create mode 100644 anda/langs/go/v2ray/nightly/anda.hcl create mode 100644 anda/langs/go/v2ray/nightly/update.rhai create mode 100644 anda/langs/go/v2ray/nightly/v2ray-nightly.spec create mode 100644 anda/langs/go/v2ray/stable/anda.hcl create mode 100644 anda/langs/go/v2ray/stable/update.rhai create mode 100644 anda/langs/go/v2ray/stable/v2ray.spec create mode 100644 anda/langs/go/v2raya/nightly/anda.hcl create mode 100644 anda/langs/go/v2raya/nightly/update.rhai create mode 100644 anda/langs/go/v2raya/nightly/v2raya-nightly.spec create mode 100644 anda/langs/go/v2raya/stable/anda.hcl create mode 100644 anda/langs/go/v2raya/stable/update.rhai create mode 100644 anda/langs/go/v2raya/stable/v2raya.spec create mode 100644 anda/langs/go/xray/nightly/anda.hcl create mode 100644 anda/langs/go/xray/nightly/update.rhai create mode 100644 anda/langs/go/xray/nightly/xray-nightly.spec create mode 100644 anda/langs/go/xray/nightly/xray.service create mode 100644 anda/langs/go/xray/nightly/xray.sysusers create mode 100644 anda/langs/go/xray/nightly/xray.tmpfiles create mode 100644 anda/langs/go/xray/nightly/xray@.service create mode 100644 anda/langs/go/xray/stable/anda.hcl create mode 100644 anda/langs/go/xray/stable/update.rhai create mode 100644 anda/langs/go/xray/stable/xray.service create mode 100644 anda/langs/go/xray/stable/xray.spec create mode 100644 anda/langs/go/xray/stable/xray.sysusers create mode 100644 anda/langs/go/xray/stable/xray.tmpfiles create mode 100644 anda/langs/go/xray/stable/xray@.service create mode 100644 anda/misc/v2ray-domain-list-community/anda.hcl create mode 100644 anda/misc/v2ray-domain-list-community/update.rhai create mode 100644 anda/misc/v2ray-domain-list-community/v2ray-domain-list-community.spec create mode 100644 anda/misc/v2ray-geoip/anda.hcl create mode 100644 anda/misc/v2ray-geoip/update.rhai create mode 100644 anda/misc/v2ray-geoip/v2ray-geoip.spec diff --git a/anda/langs/go/v2ray/nightly/anda.hcl b/anda/langs/go/v2ray/nightly/anda.hcl new file mode 100644 index 0000000000..3b71d03242 --- /dev/null +++ b/anda/langs/go/v2ray/nightly/anda.hcl @@ -0,0 +1,8 @@ +project pkg { + rpm { + spec = "v2ray-nightly.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/langs/go/v2ray/nightly/update.rhai b/anda/langs/go/v2ray/nightly/update.rhai new file mode 100644 index 0000000000..455f470e1e --- /dev/null +++ b/anda/langs/go/v2ray/nightly/update.rhai @@ -0,0 +1,7 @@ +rpm.global("commit", gh_commit("v2fly/v2ray-core")); +if rpm.changed() { + rpm.release(); + rpm.global("commit_date", date()); + let v = gh("v2fly/v2ray-core"); + rpm.global("ver", v); +} \ No newline at end of file diff --git a/anda/langs/go/v2ray/nightly/v2ray-nightly.spec b/anda/langs/go/v2ray/nightly/v2ray-nightly.spec new file mode 100644 index 0000000000..ac352cddfd --- /dev/null +++ b/anda/langs/go/v2ray/nightly/v2ray-nightly.spec @@ -0,0 +1,72 @@ +%global commit 9cf6a45519995778b8b50a63cf0b263e35b70419 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global ver 5.44.1 +%global commit_date 20260228 + +%global goipath github.com/v2fly/v2ray-core +Version: %{ver}^%{commit_date}git.%{shortcommit} + +%global golicenses LICENSE +%global godocs README.md SECURITY.md + +%gometa -f + +Name: v2ray-nightly +Release: 1%?dist +Summary: A platform for building proxies to bypass network restrictions +License: MIT +Packager: veuxit +URL: %{gourl} +Source: %{gosource} +Conflicts: v2ray + +Requires: v2ray-geoip v2ray-domain-list-community + +BuildRequires: go go-rpm-macros go-srpm-macros anda-srpm-macros + +%description +%summary. + +%gopkg + +%prep +%goprep_online -A + + +%build +%gobuild -o v2ray ./main + + +%install +%gopkginstall +install -Dm755 v2ray %{buildroot}%{_bindir}/v2ray + +install -Dm644 release/config/systemd/system/v2ray.service -t %{buildroot}%{_unitdir}/ +install -Dm644 release/config/systemd/system/v2ray@.service -t %{buildroot}%{_unitdir}/ +install -Dm644 release/config/*.json -t %{buildroot}/%{_sysconfdir}/v2ray/ + +%post +%systemd_post v2ray.service + +%preun +%systemd_preun v2ray.service + +%postun +%systemd_postun_with_restart v2ray.service + +%files +%doc README.md +%doc SECURITY.md +%license LICENSE +%{_bindir}/v2ray +%{_unitdir}/v2ray.service +%{_unitdir}/v2ray@.service +%{_sysconfdir}/v2ray/config.json +%{_sysconfdir}/v2ray/vpoint_socks_vmess.json +%{_sysconfdir}/v2ray/vpoint_vmess_freedom.json + +%gopkgfiles + +%changelog +* Sun Mar 8 2026 veuxit - 5.44.1^20260228git.9cf6a45-1 +- Initial package release diff --git a/anda/langs/go/v2ray/stable/anda.hcl b/anda/langs/go/v2ray/stable/anda.hcl new file mode 100644 index 0000000000..89559f5c1a --- /dev/null +++ b/anda/langs/go/v2ray/stable/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "v2ray.spec" + } +} diff --git a/anda/langs/go/v2ray/stable/update.rhai b/anda/langs/go/v2ray/stable/update.rhai new file mode 100644 index 0000000000..8898b562bc --- /dev/null +++ b/anda/langs/go/v2ray/stable/update.rhai @@ -0,0 +1 @@ +rpm.version(gh_tag("v2fly/v2ray-core")); diff --git a/anda/langs/go/v2ray/stable/v2ray.spec b/anda/langs/go/v2ray/stable/v2ray.spec new file mode 100644 index 0000000000..0f39b7cfb9 --- /dev/null +++ b/anda/langs/go/v2ray/stable/v2ray.spec @@ -0,0 +1,67 @@ +%global goipath github.com/v2fly/v2ray-core +Version: 5.44.1 + +%global golicenses LICENSE +%global godocs README.md SECURITY.md + +%gometa -f + +Name: v2ray +Release: 1%?dist +Summary: A platform for building proxies to bypass network restrictions +License: MIT +Packager: veuxit +URL: %{gourl} +Source: %{gosource} +Conflicts: v2ray-nightly + +Requires: v2ray-geoip v2ray-domain-list-community + +BuildRequires: go go-rpm-macros go-srpm-macros anda-srpm-macros + +%description +%summary. + +%gopkg + +%prep +%goprep_online -A + + +%build +%gobuild -o v2ray ./main + + +%install +%gopkginstall +install -Dm755 v2ray %{buildroot}%{_bindir}/v2ray + +install -Dm644 release/config/systemd/system/v2ray.service -t %{buildroot}%{_unitdir}/ +install -Dm644 release/config/systemd/system/v2ray@.service -t %{buildroot}%{_unitdir}/ +install -Dm644 release/config/*.json -t %{buildroot}/%{_sysconfdir}/v2ray/ + +%post +%systemd_post v2ray.service + +%preun +%systemd_preun v2ray.service + +%postun +%systemd_postun_with_restart v2ray.service + +%files +%doc README.md +%doc SECURITY.md +%license LICENSE +%{_bindir}/v2ray +%{_unitdir}/v2ray.service +%{_unitdir}/v2ray@.service +%{_sysconfdir}/v2ray/config.json +%{_sysconfdir}/v2ray/vpoint_socks_vmess.json +%{_sysconfdir}/v2ray/vpoint_vmess_freedom.json + +%gopkgfiles + +%changelog +* Sun Mar 8 2026 veuxit - 5.44.1-1 +- Initial package release diff --git a/anda/langs/go/v2raya/nightly/anda.hcl b/anda/langs/go/v2raya/nightly/anda.hcl new file mode 100644 index 0000000000..b903484c57 --- /dev/null +++ b/anda/langs/go/v2raya/nightly/anda.hcl @@ -0,0 +1,8 @@ +project pkg { + rpm { + spec = "v2raya-nightly.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/langs/go/v2raya/nightly/update.rhai b/anda/langs/go/v2raya/nightly/update.rhai new file mode 100644 index 0000000000..b91464d6d8 --- /dev/null +++ b/anda/langs/go/v2raya/nightly/update.rhai @@ -0,0 +1,7 @@ +rpm.global("commit", gh_commit("v2rayA/v2rayA")); +if rpm.changed() { + rpm.release(); + rpm.global("commit_date", date()); + let v = gh("v2rayA/v2rayA"); + rpm.global("ver", v); +} \ No newline at end of file diff --git a/anda/langs/go/v2raya/nightly/v2raya-nightly.spec b/anda/langs/go/v2raya/nightly/v2raya-nightly.spec new file mode 100644 index 0000000000..5522d4c8d4 --- /dev/null +++ b/anda/langs/go/v2raya/nightly/v2raya-nightly.spec @@ -0,0 +1,80 @@ +%global commit d92dbf9c499a18ae8d18c8f3c93cef87dc921bf7 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global ver 2.2.7.5 +%global commit_date 20260305 + +%global goipath github.com/v2rayA/v2rayA +Version: %{ver}^%{commit_date}git.%{shortcommit} + +%global golicenses LICENSE +%global godocs README.md + +%gometa -f + +Name: v2raya-nightly +Release: 1%?dist +Summary: A web GUI client of Project V which supports VMess, VLESS, SS, SSR, Trojan, Tuic and Juicity protocols +License: AGPL-3.0-only +Packager: veuxit +URL: %{gourl} +Source: %{gosource} +Conflicts: v2raya + +Requires: v2ray-geoip v2ray-domain-list-community ((v2ray or v2ray-nightly) or (xray or xray-nightly)) + +BuildRequires: go go-rpm-macros go-srpm-macros anda-srpm-macros nodejs yarnpkg desktop-file-utils + +%description +%summary. + +%gopkg + +%prep +%goprep_online -A + +%build +pushd gui +yarn --ignore-engines && OUTPUT_DIR=$(pwd)/../service/server/router/web yarn --ignore-engines build +popd + +pushd service +%define currentgoldflags -X github.com/v2rayA/v2rayA/conf.Version=%{version} +export GO_BUILDTAGS="with_gvisor" +%gobuild -o ../v2raya + +%install +%gopkginstall +install -Dm 755 v2raya -t %{buildroot}/%{_bindir} +install -Dm 644 install/universal/v2raya.desktop -t %{buildroot}/%{_appsdir}/ +install -Dm 644 install/universal/v2raya.service -t %{buildroot}/%{_unitdir}/ +install -Dm 644 install/universal/v2raya-lite.service -t %{buildroot}/%{_userunitdir}/ +install -Dm 644 install/universal/v2raya.default -t %{buildroot}/%{_sysconfdir}/default/v2raya.conf +install -Dm 644 gui/public/img/icons/android-chrome-512x512.png %{buildroot}/%{_hicolordir}/512x512/apps/v2raya.png + +%check +%desktop_file_validate %{buildroot}/%{_appsdir}/v2raya.desktop + +%post +%systemd_post v2raya.service + +%preun +%systemd_preun v2raya.service + +%postun +%systemd_postun_with_restart v2raya.service + +%files +%doc README.md +%license LICENSE +%{_bindir}/v2raya +%{_unitdir}/v2raya.service +%{_userunitdir}/v2raya-lite.service +%{_sysconfdir}/default/v2raya.conf +%{_appsdir}/v2raya.desktop +%{_hicolordir}/512x512/apps/v2raya.png + +%gopkgfiles + +%changelog +* Sun Mar 8 2026 veuxit - 2.2.7.5^20260305git.d92dbf9-1 +- Initial package release diff --git a/anda/langs/go/v2raya/stable/anda.hcl b/anda/langs/go/v2raya/stable/anda.hcl new file mode 100644 index 0000000000..8b4d4b8d67 --- /dev/null +++ b/anda/langs/go/v2raya/stable/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "v2raya.spec" + } +} diff --git a/anda/langs/go/v2raya/stable/update.rhai b/anda/langs/go/v2raya/stable/update.rhai new file mode 100644 index 0000000000..846fa87be5 --- /dev/null +++ b/anda/langs/go/v2raya/stable/update.rhai @@ -0,0 +1 @@ +rpm.version(gh_tag("v2rayA/v2rayA")); diff --git a/anda/langs/go/v2raya/stable/v2raya.spec b/anda/langs/go/v2raya/stable/v2raya.spec new file mode 100644 index 0000000000..34034dc367 --- /dev/null +++ b/anda/langs/go/v2raya/stable/v2raya.spec @@ -0,0 +1,76 @@ +%global goipath github.com/v2rayA/v2rayA +Version: 2.2.7.5 + +%global golicenses LICENSE +%global godocs README.md + +%gometa -f + +Name: v2raya +Release: 1%?dist +Summary: A web GUI client of Project V which supports VMess, VLESS, SS, SSR, Trojan, Tuic and Juicity protocols +License: AGPL-3.0-only +URL: %{gourl} +Source: %{gosource} +Packager: veuxit +Conflicts: v2raya-nightly + +Requires: v2ray-geoip v2ray-domain-list-community ((v2ray or v2ray-nightly) or (xray or xray-nightly)) + +BuildRequires: go go-rpm-macros go-srpm-macros anda-srpm-macros nodejs yarnpkg desktop-file-utils + +%description +%summary. + +%gopkg + +%prep +%goprep_online -A + +%build +pushd gui +yarn --ignore-engines && OUTPUT_DIR=$(pwd)/../service/server/router/web yarn --ignore-engines build +popd + +pushd service +%define gomodulesmode GO111MODULE=on +%define currentgoldflags -X github.com/v2rayA/v2rayA/conf.Version=%{version} +export GO_BUILDTAGS="with_gvisor" +%gobuild -o ../v2raya + +%install +%gopkginstall +install -Dm 755 v2raya -t %{buildroot}/%{_bindir} +install -Dm 644 install/universal/v2raya.desktop -t %{buildroot}/%{_appsdir}/ +install -Dm 644 install/universal/v2raya.service -t %{buildroot}/%{_unitdir}/ +install -Dm 644 install/universal/v2raya-lite.service -t %{buildroot}/%{_userunitdir}/ +install -Dm 644 install/universal/v2raya.default -t %{buildroot}/%{_sysconfdir}/default/v2raya.conf +install -Dm 644 gui/public/img/icons/android-chrome-512x512.png %{buildroot}/%{_hicolordir}/512x512/apps/v2raya.png + +%check +%desktop_file_validate %{buildroot}/%{_appsdir}/v2raya.desktop + +%post +%systemd_post v2raya.service + +%preun +%systemd_preun v2raya.service + +%postun +%systemd_postun_with_restart v2raya.service + +%files +%doc README.md +%license LICENSE +%{_bindir}/v2raya +%{_unitdir}/v2raya.service +%{_userunitdir}/v2raya-lite.service +%{_sysconfdir}/default/v2raya.conf +%{_appsdir}/v2raya.desktop +%{_hicolordir}/512x512/apps/v2raya.png + +%gopkgfiles + +%changelog +* Sun Mar 8 2026 veuxit - 2.2.7.5-1 +- Initial package release diff --git a/anda/langs/go/xray/nightly/anda.hcl b/anda/langs/go/xray/nightly/anda.hcl new file mode 100644 index 0000000000..58d3ede9f9 --- /dev/null +++ b/anda/langs/go/xray/nightly/anda.hcl @@ -0,0 +1,8 @@ +project pkg { + rpm { + spec = "xray-nightly.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/langs/go/xray/nightly/update.rhai b/anda/langs/go/xray/nightly/update.rhai new file mode 100644 index 0000000000..acb3222cd9 --- /dev/null +++ b/anda/langs/go/xray/nightly/update.rhai @@ -0,0 +1,7 @@ +rpm.global("commit", gh_commit("XTLS/Xray-core")); +if rpm.changed() { + rpm.release(); + rpm.global("commit_date", date()); + let v = gh("XTLS/Xray-core"); + rpm.global("ver", v); +} \ No newline at end of file diff --git a/anda/langs/go/xray/nightly/xray-nightly.spec b/anda/langs/go/xray/nightly/xray-nightly.spec new file mode 100644 index 0000000000..80cd24f20a --- /dev/null +++ b/anda/langs/go/xray/nightly/xray-nightly.spec @@ -0,0 +1,84 @@ +%global commit acb06e831bb7bf0e4b8346c933a14cdaab305a0d +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global ver 26.2.2 +%global commit_date 20260307 + +%global goipath github.com/XTLS/Xray-core +Version: %{ver}^%{commit_date}git.%{shortcommit} + +%global golicenses LICENSE +%global godocs README.md SECURITY.md CODE_OF_CONDUCT.md + +Name: xray-nightly +Release: 1%?dist +Summary: High-performance, open-source network proxy engine and toolset designed to bypass internet censorship and enhance privacy +License: MPL-2.0 +Packager: veuxit +URL: https://github.com/XTLS/Xray-core +Conflicts: xray + +Source0: %{url}/archive/%{commit}/Xray-core-%{commit}.tar.gz +Source1: xray.service +Source2: xray@.service +Source3: xray.sysusers +Source4: xray.tmpfiles + +Requires: v2ray-geoip v2ray-domain-list-community + +BuildRequires: golang >= 1.26 +BuildRequires: go-rpm-macros go-srpm-macros anda-srpm-macros + +%description +%summary. + +%gopkg + +%prep +%autosetup -n Xray-core-%{commit} +%goprep_online -Ae + +%build +%define gomodulesmode GO111MODULE=on +%gobuild -o xray ./main + +%install +%gopkginstall +install -Dm755 xray %{buildroot}%{_bindir}/xray + +install -d "%{buildroot}/etc/xray" "%{buildroot}%{_datadir}/xray" + +ln -s %{_datadir}/v2ray/geo{ip,site}.dat -t "%{buildroot}%{_datadir}/xray" + +install -Dm644 %{SOURCE1} -t %{buildroot}/%{_unitdir} +install -Dm644 %{SOURCE2} -t %{buildroot}/%{_unitdir} +install -Dm644 %{SOURCE3} %{buildroot}/%{_sysusersdir}/xray.conf +install -Dm644 %{SOURCE4} %{buildroot}/usr/lib/tmpfiles.d/xray.conf + + +%post +%systemd_post xray.service + +%preun +%systemd_preun xray.service + +%postun +%systemd_postun_with_restart xray.service + +%files +%doc README.md +%doc SECURITY.md +%doc CODE_OF_CONDUCT.md +%license LICENSE +%{_bindir}/xray +%{_datadir}/xray/geoip.dat +%{_datadir}/xray/geosite.dat +%{_unitdir}/xray.service +%{_unitdir}/xray@.service +%{_sysusersdir}/xray.conf +/usr/lib/tmpfiles.d/xray.conf + +%gopkgfiles + +%changelog +* Sun Mar 8 2026 veuxit - 26.2.2^20260307git.acb06e8-1 +- Initial package release diff --git a/anda/langs/go/xray/nightly/xray.service b/anda/langs/go/xray/nightly/xray.service new file mode 100644 index 0000000000..2c24daa71b --- /dev/null +++ b/anda/langs/go/xray/nightly/xray.service @@ -0,0 +1,14 @@ +[Unit] +Description=Xray Service +After=network.target nss-lookup.target + +[Service] +User=xray +CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE +AmbientCapabilities=CAP_NET_ADMIN CAP_NET_BIND_SERVICE +NoNewPrivileges=true +ExecStart=/usr/bin/xray run -confdir /etc/xray/ +Restart=on-abort + +[Install] +WantedBy=multi-user.target diff --git a/anda/langs/go/xray/nightly/xray.sysusers b/anda/langs/go/xray/nightly/xray.sysusers new file mode 100644 index 0000000000..0260d2dc7b --- /dev/null +++ b/anda/langs/go/xray/nightly/xray.sysusers @@ -0,0 +1 @@ +u xray - "Xray Service" - - diff --git a/anda/langs/go/xray/nightly/xray.tmpfiles b/anda/langs/go/xray/nightly/xray.tmpfiles new file mode 100644 index 0000000000..896975f158 --- /dev/null +++ b/anda/langs/go/xray/nightly/xray.tmpfiles @@ -0,0 +1 @@ +d /var/log/xray 0700 xray xray - - diff --git a/anda/langs/go/xray/nightly/xray@.service b/anda/langs/go/xray/nightly/xray@.service new file mode 100644 index 0000000000..a024fb1a9f --- /dev/null +++ b/anda/langs/go/xray/nightly/xray@.service @@ -0,0 +1,14 @@ +[Unit] +Description=Xray Service +After=network.target nss-lookup.target + +[Service] +User=xray +CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE +AmbientCapabilities=CAP_NET_ADMIN CAP_NET_BIND_SERVICE +NoNewPrivileges=true +ExecStart=/usr/bin/xray run -config /etc/xray/%i.json +Restart=on-abort + +[Install] +WantedBy=multi-user.target diff --git a/anda/langs/go/xray/stable/anda.hcl b/anda/langs/go/xray/stable/anda.hcl new file mode 100644 index 0000000000..b39e7e2d8f --- /dev/null +++ b/anda/langs/go/xray/stable/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "xray.spec" + } +} diff --git a/anda/langs/go/xray/stable/update.rhai b/anda/langs/go/xray/stable/update.rhai new file mode 100644 index 0000000000..c9124ea5bd --- /dev/null +++ b/anda/langs/go/xray/stable/update.rhai @@ -0,0 +1 @@ +rpm.version(gh_tag("XTLS/Xray-core")); diff --git a/anda/langs/go/xray/stable/xray.service b/anda/langs/go/xray/stable/xray.service new file mode 100644 index 0000000000..2c24daa71b --- /dev/null +++ b/anda/langs/go/xray/stable/xray.service @@ -0,0 +1,14 @@ +[Unit] +Description=Xray Service +After=network.target nss-lookup.target + +[Service] +User=xray +CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE +AmbientCapabilities=CAP_NET_ADMIN CAP_NET_BIND_SERVICE +NoNewPrivileges=true +ExecStart=/usr/bin/xray run -confdir /etc/xray/ +Restart=on-abort + +[Install] +WantedBy=multi-user.target diff --git a/anda/langs/go/xray/stable/xray.spec b/anda/langs/go/xray/stable/xray.spec new file mode 100644 index 0000000000..f5827fff88 --- /dev/null +++ b/anda/langs/go/xray/stable/xray.spec @@ -0,0 +1,77 @@ +# Disabled because compiled without debug + +%global goipath github.com/XTLS/Xray-core +Version: 26.2.6 + +%global golicenses LICENSE +%global godocs README.md SECURITY.md CODE_OF_CONDUCT.md + +Name: xray +Release: 1%?dist +Summary: High-performance, open-source network proxy engine and toolset designed to bypass internet censorship and enhance privacy +License: MPL-2.0 +Packager: veuxit +URL: https://github.com/XTLS/Xray-core +Conflicts: xray-nightly + +Source0: https://github.com/XTLS/Xray-core/archive/refs/tags/v%{version}.tar.gz +Source1: xray.service +Source2: xray@.service +Source3: xray.sysusers +Source4: xray.tmpfiles + +Requires: v2ray-geoip v2ray-domain-list-community + +BuildRequires: go go-rpm-macros go-srpm-macros anda-srpm-macros + +%description +%summary. + +%gopkg + +%prep +%goprep_online -Ae +%autosetup -n Xray-core-%{version} + + +%build +%define gomodulesmode GO111MODULE=on +%gobuild -o xray ./main + +%install +%gopkginstall +install -Dm755 xray %{buildroot}%{_bindir}/xray +install -d "%{buildroot}/etc/xray" "%{buildroot}%{_datadir}/xray" +ln -s %{_datadir}/v2ray/geo{ip,site}.dat -t "%{buildroot}%{_datadir}/xray" +install -Dm644 %{SOURCE1} -t %{buildroot}/%{_unitdir} +install -Dm644 %{SOURCE2} -t %{buildroot}/%{_unitdir} +install -Dm644 %{SOURCE3} %{buildroot}/%{_sysusersdir}/xray.conf +install -Dm644 %{SOURCE4} %{buildroot}/usr/lib/tmpfiles.d/xray.conf + +%post +%systemd_post xray.service + +%preun +%systemd_preun xray.service + +%postun +%systemd_postun_with_restart xray.service + +%files +%doc README.md +%doc SECURITY.md +%doc CODE_OF_CONDUCT.md +%license LICENSE +%{_bindir}/xray +%{_datadir}/xray/geoip.dat +%{_datadir}/xray/geosite.dat +%{_unitdir}/xray.service +%{_unitdir}/xray@.service +%{_sysusersdir}/xray.conf +/usr/lib/tmpfiles.d/xray.conf + +%gopkgfiles + +%changelog +* Sun Mar 8 2026 veuxit - 26.2.6-1 +- Initial package release diff --git a/anda/langs/go/xray/stable/xray.sysusers b/anda/langs/go/xray/stable/xray.sysusers new file mode 100644 index 0000000000..0260d2dc7b --- /dev/null +++ b/anda/langs/go/xray/stable/xray.sysusers @@ -0,0 +1 @@ +u xray - "Xray Service" - - diff --git a/anda/langs/go/xray/stable/xray.tmpfiles b/anda/langs/go/xray/stable/xray.tmpfiles new file mode 100644 index 0000000000..896975f158 --- /dev/null +++ b/anda/langs/go/xray/stable/xray.tmpfiles @@ -0,0 +1 @@ +d /var/log/xray 0700 xray xray - - diff --git a/anda/langs/go/xray/stable/xray@.service b/anda/langs/go/xray/stable/xray@.service new file mode 100644 index 0000000000..a024fb1a9f --- /dev/null +++ b/anda/langs/go/xray/stable/xray@.service @@ -0,0 +1,14 @@ +[Unit] +Description=Xray Service +After=network.target nss-lookup.target + +[Service] +User=xray +CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE +AmbientCapabilities=CAP_NET_ADMIN CAP_NET_BIND_SERVICE +NoNewPrivileges=true +ExecStart=/usr/bin/xray run -config /etc/xray/%i.json +Restart=on-abort + +[Install] +WantedBy=multi-user.target diff --git a/anda/misc/v2ray-domain-list-community/anda.hcl b/anda/misc/v2ray-domain-list-community/anda.hcl new file mode 100644 index 0000000000..16ab2d1a00 --- /dev/null +++ b/anda/misc/v2ray-domain-list-community/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "v2ray-domain-list-community.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/misc/v2ray-domain-list-community/update.rhai b/anda/misc/v2ray-domain-list-community/update.rhai new file mode 100644 index 0000000000..be7acc0491 --- /dev/null +++ b/anda/misc/v2ray-domain-list-community/update.rhai @@ -0,0 +1,7 @@ +rpm.global("commit", gh_commit("v2fly/domain-list-community")); +if rpm.changed() { + rpm.release(); + rpm.global("commit_date", date()); + let v = gh("v2fly/domain-list-community"); + rpm.global("ver", v); +} \ No newline at end of file diff --git a/anda/misc/v2ray-domain-list-community/v2ray-domain-list-community.spec b/anda/misc/v2ray-domain-list-community/v2ray-domain-list-community.spec new file mode 100644 index 0000000000..418fda758e --- /dev/null +++ b/anda/misc/v2ray-domain-list-community/v2ray-domain-list-community.spec @@ -0,0 +1,37 @@ +%global commit 6bb4a68f2f1323998c84754ba56341f8e31efc26 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global ver 20260309041918 +%global commit_date 20260309 + +Name: v2ray-domain-list-community +Version: %{ver}^%{commit_date}git.%{shortcommit} +Release: 1%?dist +Summary: Community managed domain list (geosite.dat) for V2Ray +License: MIT +Packager: veuxit +URL: https://github.com/v2fly/domain-list-community +BuildArch: noarch + +Source0: %{url}/archive/%{commit}/%{ver}-%{commit}.tar.gz + +BuildRequires: golang +BuildRequires: go-rpm-macros go-srpm-macros anda-srpm-macros + +%description +%summary. + +%prep +%autosetup -n domain-list-community-%{commit} +go run main.go + +%install +install -Dm644 dlc.dat %{buildroot}%{_datadir}/v2ray/geosite.dat + +%files +%doc README.md +%license LICENSE +%{_datadir}/v2ray/geosite.dat + +%changelog +* Mon Mar 9 2026 veuxit - 20260309041918^20260309git.6bb4a68-1 +- Initial package release diff --git a/anda/misc/v2ray-geoip/anda.hcl b/anda/misc/v2ray-geoip/anda.hcl new file mode 100644 index 0000000000..b50cb332e3 --- /dev/null +++ b/anda/misc/v2ray-geoip/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "v2ray-geoip.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/misc/v2ray-geoip/update.rhai b/anda/misc/v2ray-geoip/update.rhai new file mode 100644 index 0000000000..8d194140ff --- /dev/null +++ b/anda/misc/v2ray-geoip/update.rhai @@ -0,0 +1,7 @@ +rpm.global("commit", gh_commit("v2fly/geoip")); +if rpm.changed() { + rpm.release(); + rpm.global("commit_date", date()); + let v = gh("v2fly/geoip"); + rpm.global("ver", v); +} \ No newline at end of file diff --git a/anda/misc/v2ray-geoip/v2ray-geoip.spec b/anda/misc/v2ray-geoip/v2ray-geoip.spec new file mode 100644 index 0000000000..d2b1bde3d2 --- /dev/null +++ b/anda/misc/v2ray-geoip/v2ray-geoip.spec @@ -0,0 +1,43 @@ +%global commit 7a6498ae1cacdc6ec3356ad29d9566d7f0242f56 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global ver 202603050223 +%global commit_date 20260122 + +%global year %{gsub %commit_date %%d%%d%%d%%d$ %{quote:}} +%global month %{gsub %commit_date %%d%%d%%d%%d(%%d%%d)%%d%%d %%1} + +Name: v2ray-geoip +Version: %{ver}^%{commit_date}git.%{shortcommit} +Release: 1%?dist +Summary: GeoIP for V2Ray +License: CC-BY-SA-4.0 +Packager: veuxit +URL: https://github.com/v2fly/geoip +BuildArch: noarch + +Source0: %{url}/archive/%{commit}/%{ver}-%{commit}.tar.gz +Source1: https://download.db-ip.com/free/dbip-country-lite-%year-%month.mmdb.gz + +BuildRequires: golang + +%description +%summary. + +%prep +%autosetup -n geoip-%{commit} +mkdir -p db-ip +gzip -d %SOURCE1 -c > ./db-ip/dbip-country-lite.mmdb + +%build +go run ./ -c ./config.json + +%install +install -Dm644 output/geoip.dat %{buildroot}%{_datadir}/v2ray/geoip.dat + +%files +%license LICENSE +%{_datadir}/v2ray/geoip.dat + +%changelog +* Mon Mar 9 2026 veuxit - 202603050223^20260122git.7a6498a-1 +- Initial package release