## START: Set by rpmautospec ## (rpmautospec version 0.8.1) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 3; base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); print(release_number + base_release_number - 1); }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} ## END: Set by rpmautospec %global hamcore_commit 2951ae5b61b16c1f4e03ceee88d6db7e1e45362b Name: softethervpn Version: 5.2.5188 Release: %{autorelease} Summary: Cross-platform multi-protocol VPN software. License: Apache-2.0 URL: https://www.softether.org Source0: https://github.com/SoftEtherVPN/SoftEtherVPN/archive/%{version}/%{name}-%{version}.tar.gz Source1: https://github.com/SoftEtherVPN/libhamcore/archive/%{hamcore_commit}/libhamcore-%{hamcore_commit}.tar.gz Patch0: softethervpn-add-soversion.patch Patch1: softethervpn-unbundle-deps.patch Patch2: softethervpn-support-libb2.patch BuildRequires: gettext BuildRequires: nodejs BuildRequires: wget BuildRequires: cmake BuildRequires: ncurses-devel BuildRequires: openssl-devel %if 0%{?fedora} BuildRequires: openssl-devel-engine %endif BuildRequires: libsodium-devel BuildRequires: readline-devel BuildRequires: zlib-devel BuildRequires: diffstat BuildRequires: doxygen BuildRequires: git BuildRequires: patch BuildRequires: patchutils BuildRequires: subversion BuildRequires: systemtap BuildRequires: gcc-c++ BuildRequires: systemd-rpm-macros BuildRequires: google-cpu_features-devel BuildRequires: libb2-devel BuildRequires: tinydir-devel Requires: softether-vpncmd%{?_isa} = %{version}-%{release} Requires: softether-vpnserver%{?_isa} = %{version}-%{release} Requires: softether-vpnclient%{?_isa} = %{version}-%{release} Requires: softether-vpnbridge%{?_isa} = %{version}-%{release} %description SoftEther VPN ("SoftEther" means "Software Ethernet") is one of the world's most powerful and easy-to-use multi-protocol VPN software. SoftEther VPN supports most of widely-used VPN protocols including SSL-VPN, WireGuard, OpenVPN, IPsec, L2TP, MS-SSTP, L2TPv3 and EtherIP by the single SoftEther VPN Server program. %package -n softether-vpncmd Summary: SoftEtherVPN cmd binaries Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description -n softether-vpncmd Console binaries for %{name} %package -n softether-vpnserver Summary: SoftEtherVPN server binaries Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description -n softether-vpnserver Server binaries for %{name} %package -n softether-vpnclient Summary: SoftEtherVPN client binaries Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description -n softether-vpnclient Client binaries for %{name} %package -n softether-vpnbridge Summary: SoftEtherVPN bridge binaries Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description -n softether-vpnbridge Bridge binaries for %{name} %package libs Summary: SoftEtherVPN shared libraries %if 0%{?fedora} < 43 || 0%{?rhel} < 10 Requires: oqsprovider %endif %description libs Package that provides shared libraries needed by SoftEtherVPN software %package devel Summary: SoftEtherVPN development headers Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description devel Development headers of SoftEtherVPN %prep %autosetup -p1 -n SoftEtherVPN-%{version} # Unpack libhamcore pushd src rm -rf libhamcore tar xvf %{SOURCE1} mv libhamcore-%{hamcore_commit} libhamcore popd # Remove absolute rpaths sed -i '/CMAKE_INSTALL_RPATH/d' CMakeLists.txt %build %cmake \ -DCMAKE_INSTALL_PREFIX=%{_prefix} \ -DCMAKE_INSTALL_SYSTEMD_UNITDIR=%{_unitdir} \ -DSE_PIDDIR=%{_rundir}/softether \ -DSE_LOGDIR=%{_localstatedir}/log/softether \ -DSE_DBDIR=%{_sysconfdir}/softether %cmake_build %install %cmake_install # Add paths to systemd units sed -i 's/Restart=on-failure/Restart=on-failure\nLogsDirectory=softerher\nRuntimeDirectory=softether/' %{buildroot}%{_unitdir}/softether-vpnserver.service sed -i 's/ReadOnlyDirectories=/ReadOnlyPaths=/' %{buildroot}%{_unitdir}/softether-vpnserver.service sed -i 's/ReadWriteDirectories=-\/usr\/libexec\/softether\/vpnserver/ReadWritePaths=-\/etc\/softether\nReadWritePaths=-\/run\/softether\nReadWritePaths=-\/var\/log\/softether/' %{buildroot}%{_unitdir}/softether-vpnserver.service sed -i 's/Restart=on-failure/Restart=on-failure\nLogsDirectory=softerher\nRuntimeDirectory=softether/' %{buildroot}%{_unitdir}/softether-vpnclient.service sed -i 's/ReadOnlyDirectories=/ReadOnlyPaths=/' %{buildroot}%{_unitdir}/softether-vpnclient.service sed -i 's/ReadWriteDirectories=-\/usr\/libexec\/softether\/vpnclient/ReadWritePaths=-\/etc\/softether\nReadWritePaths=-\/run\/softether\nReadWritePaths=-\/var\/log\/softether/' %{buildroot}%{_unitdir}/softether-vpnclient.service sed -i 's/Restart=on-failure/Restart=on-failure\nLogsDirectory=softerher\nRuntimeDirectory=softether/' %{buildroot}%{_unitdir}/softether-vpnbridge.service sed -i 's/ReadOnlyDirectories=/ReadOnlyPaths=/' %{buildroot}%{_unitdir}/softether-vpnbridge.service sed -i 's/ReadWriteDirectories=-\/usr\/libexec\/softether\/vpnbridge/ReadWritePaths=-\/etc\/softether\nReadWritePaths=-\/run\/softether\nReadWritePaths=-\/var\/log\/softether/' %{buildroot}%{_unitdir}/softether-vpnbridge.service # Copy headers mkdir -p %{buildroot}%{_includedir}/libcedar mkdir -p %{buildroot}%{_includedir}/libmayaqua install -m 0644 src/Cedar/*.h %{buildroot}%{_includedir}/libcedar install -m 0644 src/Mayaqua/*.h %{buildroot}%{_includedir}/libmayaqua %pre # Generate empty folders mkdir -p %{_sysconfdir}/softether &>/dev/null mkdir -p %{_localstatedir}/log/softether &>/dev/null mkdir -p %{_rundir}/softether &>/dev/null mkdir -p %{_sharedstatedir}/softether &>/dev/null %post %systemd_post softether-vpnserver.service %systemd_post softether-vpnbridge.service %systemd_post softether-vpnclient.service %preun %systemd_preun softether-vpnserver.service %systemd_preun softether-vpnbridge.service %systemd_preun softether-vpnclient.service %postun %systemd_postun_with_restart softether-vpnserver.service %systemd_postun_with_restart softether-vpnbridge.service %systemd_postun_with_restart softether-vpnclient.service %files %license LICENSE %doc AUTHORS.TXT CODE_OF_CONDUCT.md DISCLAIMER.md FUNDING.yml README.md SECURITY.md %files -n softether-vpncmd %{_bindir}/vpncmd %{_libexecdir}/softether/vpncmd/vpncmd %{_libexecdir}/softether/vpncmd/hamcore.se2 %files -n softether-vpnserver %{_bindir}/vpnserver %{_libexecdir}/softether/vpnserver/vpnserver %{_libexecdir}/softether/vpnserver/hamcore.se2 %{_unitdir}/softether-vpnserver.service %files -n softether-vpnclient %{_bindir}/vpnclient %{_libexecdir}/softether/vpnclient/vpnclient %{_libexecdir}/softether/vpnclient/hamcore.se2 %{_unitdir}/softether-vpnclient.service %files -n softether-vpnbridge %{_bindir}/vpnbridge %{_libexecdir}/softether/vpnbridge/vpnbridge %{_libexecdir}/softether/vpnbridge/hamcore.se2 %{_unitdir}/softether-vpnbridge.service %files libs %{_libdir}/libcedar.so.* %{_libdir}/libmayaqua.so.* %files devel %{_libdir}/libcedar.so %{_libdir}/libmayaqua.so %{_includedir}/libmayaqua/*.h %{_includedir}/libcedar/*.h %changelog ## START: Generated by rpmautospec * Thu Aug 21 2025 Luca Magrone - 5.2.5188-3 - Do not require oqsprovider on RHEL 10 * Thu Aug 21 2025 Luca Magrone - 5.2.5188-2 - Fix depenency unbundling on some systems * Thu Aug 21 2025 Luca Magrone - 5.2.5188-1 - Initial package ## END: Generated by rpmautospec