%global commit 4208db6e27c46f3ccec8b98722af7ec23bc62e73 Name: udp2raw Version: 20251210 Release: 1%{?dist} Summary: Udp2raw tunnel License: MIT URL: https://github.com/wangyu-/udp2raw Source0: https://github.com/wangyu-/udp2raw/archive/%{commit}.tar.gz BuildRequires: clang BuildRequires: cmake BuildRequires: compiler-rt BuildRequires: git BuildRequires: systemd %description A Tunnel which turns UDP Traffic into Encrypted FakeTCP/UDP/ICMP Traffic by using Raw Socket. %prep %setup -q -n %{name}-%{commit} %build export CXX=clang++ make git_version %cmake %cmake_build %install install -Dm755 %{_vpath_builddir}/%{name} %{buildroot}%{_bindir}/%{name} install -Dm644 example.conf %{buildroot}%{_sysconfdir}/%{name}/%{name}.conf mkdir -p %{buildroot}%{_unitdir} cat > %{buildroot}%{_unitdir}/%{name}@.service << 'EOF' [Unit] Description=Udp2raw tunnel (%i) After=network-online.target Wants=network-online.target [Service] Type=simple ExecStart=/usr/bin/udp2raw start -n %i /etc/tunsafe/%i.conf ExecStop=/usr/bin/udp2raw stop %i Restart=on-failure RestartSec=5 CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE AmbientCapabilities=CAP_NET_ADMIN CAP_NET_BIND_SERVICE [Install] WantedBy=multi-user.target EOF %files %license LICENSE.md %doc README.md doc/*.md %dir %{_sysconfdir}/%{name} %config(noreplace) %{_sysconfdir}/%{name}/%{name}.conf %{_bindir}/%{name} %{_unitdir}/%{name}@.service %changelog