%global commit 4208db6e27c46f3ccec8b98722af7ec23bc62e73 Name: udp2raw Version: 20251012 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 make git_version %cmake -B %{_vpath_builddir} -DCMAKE_CXX_COMPILER=clang++ %cmake_build %install install -Dm755 %{_vpath_builddir}/%{name} %{buildroot}%{_bindir}/%{name} install -Dm644 example.conf %{buildroot}%{_sysconfdir}/%{name}/example.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 --conf-file /etc/udp2raw/%i.conf Restart=on-failure RestartSec=5 CapabilityBoundingSet=CAP_NET_RAW CAP_NET_BIND_SERVICE AmbientCapabilities=CAP_NET_RAW 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}/example.conf %{_bindir}/%{name} %{_unitdir}/%{name}@.service %changelog