## START: Set by rpmautospec ## (rpmautospec version 0.6.0) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 13; 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 %if 0%{?el8} || 0%{?fc34} %ifarch s390x # ConnectionTest fails %bcond_with tests %else %bcond_without tests %endif %else %bcond_without tests %endif %global _firewalld_dir %{_prefix}/lib/firewalld Name: et Version: 6.2.1 Release: %autorelease Summary: Remote shell that survives IP roaming and disconnect License: Apache-2.0 URL: https://mistertea.github.io/EternalTerminal/ Source0: https://github.com/MisterTea/EternalTerminal/archive/et-v%{version}.tar.gz Source1: et.xml Patch0: et-missing-include.patch Patch1: et-cxxopts.patch BuildRequires: boost-devel BuildRequires: cmake3 BuildRequires: firewalld-filesystem BuildRequires: gcc-c++ BuildRequires: catch2-devel # -static BR required for tracking of header-only libraries BuildRequires: cxxopts-devel BuildRequires: cxxopts-static BuildRequires: easyloggingpp-devel BuildRequires: easyloggingpp-static BuildRequires: gflags-devel BuildRequires: json-devel BuildRequires: json-static BuildRequires: libatomic BuildRequires: libcurl-devel BuildRequires: libsodium-devel BuildRequires: libutempter-devel BuildRequires: ncurses-devel BuildRequires: openssl-devel BuildRequires: protobuf-compiler BuildRequires: protobuf-lite-devel BuildRequires: systemd # Bundled libraries # cat .gitmodules | grep submodule | sort # for tarball, s/external/external_imported Provides: bundled(base64) = 0 # external_imported/cotire/CMake/cotire.cmake Provides: bundled(cotire) = 1.8.0 # grep User-Agent external/cpp-httlib/httplib.h # cross-check with the git checkout for specific version Provides: bundled(cpp-httplib) = 0.7.18 # external/msgpack-c/include/msgpack/version_master.h Provides: bundled(msgpack) = 3.3.0 # external/PlatformFolders/CMakeLists.txt Provides: bundled(PlatformFolders) = 4.0.0 # sanitizers-cmake is only used when building %ifnarch ppc64le s390x Provides: bundled(sentry-native) = 0.4.7 %endif # external/simpleini/SimpleIni.h Provides: bundled(simpleini) = 4.17 # https://github.com/r-lyeh-archived/sole Provides: bundled(sole) = 1.0.1 Provides: bundled(ThreadPool) = 0 Provides: bundled(UniversalStacktrace) = 0 # vcpkg is disabled %{?systemd_requires} %description Eternal Terminal (ET) is a remote shell that automatically reconnects without interrupting the session. %prep %autosetup -p1 -n EternalTerminal-et-v%{version} # use this if we have patches we need to apply by hand # %%setup -q -n EternalTerminal-et-v%%{version} # Remove bundled Catch2 test framework rm -rf external_imported/Catch2 sed -r -i '/\$\{EXTERNAL_DIR\}\/Catch2\/single_include/d' CMakeLists.txt # Unbundle cxxopts rm -rf external_imported/cxxopts sed -r -i '/\$\{.*\}\/cxxopts\/include/d' CMakeLists.txt # Unbundle easyloggingpp rm -rf external_imported/easyloggingpp # The easylogging++.cc source file is treated as a strangely-named header; see # notes in the easyloggingpp spec file. sed -r -i \ -e 's@\$\{.*\}/easyloggingpp/src/(easylogging.*)@%{_includedir}/\1@' \ -e '/easyloggingpp\/src\/?$/d' \ CMakeLists.txt # Unbundle “JSON for Modern C++” rm -rf external_imported/json sed -r -i 's@\$\{.*\}/json/single_include/nlohmann@%{_includedir}/nlohmann@' \ CMakeLists.txt %build %cmake \ %ifarch ppc64le s390x -DDISABLE_SENTRY=TRUE \ %endif -DDISABLE_VCPKG=TRUE %cmake_build %install %cmake_install mkdir -p \ %{buildroot}%{_unitdir} \ %{buildroot}%{_sysconfdir} \ %{buildroot}%{_firewalld_dir}/services install -m 0644 -p systemctl/et.service %{buildroot}%{_unitdir}/et.service install -m 0644 -p etc/et.cfg %{buildroot}%{_sysconfdir}/et.cfg install -m 0644 %{SOURCE1} %{buildroot}%{_firewalld_dir}/services/et.xml %if %{with tests} %check %if 0%{?fedora} %ctest %else %ctest --verbose %endif %endif %post %systemd_post et.service %firewalld_reload %preun %systemd_preun et.service %postun %systemd_postun_with_restart et.service %firewalld_reload %files %license LICENSE %doc README.md %{_bindir}/et %{_bindir}/etserver %{_bindir}/etterminal %{_bindir}/htm %{_bindir}/htmd %dir %{_firewalld_dir} %dir %{_firewalld_dir}/services %{_firewalld_dir}/services/et.xml %config(noreplace) %{_sysconfdir}/et.cfg %{_unitdir}/et.service %changelog ## START: Generated by rpmautospec * Thu Apr 25 2024 Michel Lind - 6.2.1-13 - Use SPDX license identifier * Wed Jan 24 2024 Fedora Release Engineering - 6.2.1-12 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Fri Jan 19 2024 Fedora Release Engineering - 6.2.1-11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Tue Oct 17 2023 Davide Cavalca - 6.2.1-10 - Unbreak the build; Fixes: RHBZ#2242330, RHBZ#2225796, RHBZ#2171485 * Thu Oct 05 2023 Remi Collet - 6.2.1-9 - rebuild for new libsodium * Wed Jul 19 2023 Fedora Release Engineering - 6.2.1-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild * Thu Jan 19 2023 Fedora Release Engineering - 6.2.1-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild * Sun Sep 04 2022 Benjamin A. Beasley - 6.2.1-6 - Unbundle cxxopts * Sun Sep 04 2022 Benjamin A. Beasley - 6.2.1-5 - Unbundle json (“JSON for Modern C++”) * Sun Sep 04 2022 Benjamin A. Beasley - 6.2.1-4 - Unbundle easyloggingpp * Thu Jul 21 2022 Fedora Release Engineering - 6.2.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild * Fri May 06 2022 Michel Alexandre Salim - 6.2.1-2 - Fix %%%%cmake invocation to make it work on Rawhide * Fri May 06 2022 Michel Alexandre Salim - 6.2.1-1 - Update to 6.2.1 * Thu Jan 20 2022 Fedora Release Engineering - 6.1.11-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild * Fri Jan 14 2022 Michel Alexandre Salim - 6.1.11-1 - Update to 6.1.11; Unbundle Catch2 (Benjamin A. Beasley ) * Sun Nov 07 2021 Mamoru TASAKA - 6.1.9-2 - rebuild for new protobuf * Thu Nov 4 2021 Michel Alexandre Salim - 6.1.9-1 - Update to 6.1.9 * Wed Nov 3 2021 Michel Alexandre Salim - 6.1.8-4.20211103git900348b - Red fixes * Mon Oct 25 2021 Adrian Reber - 6.1.8-4 - Rebuilt for protobuf 3.18.1 * Tue Sep 14 2021 Sahana Prasad - 6.1.8-3 - Rebuilt with OpenSSL 3.0.0 * Wed Jul 21 2021 Fedora Release Engineering - 6.1.8-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Sun Jul 11 2021 Michel Alexandre Salim - 6.1.8-1 - Update to 6.1.8 * Mon Apr 26 2021 Michel Alexandre Salim - 6.1.7-1 - Update to 6.1.7 * Tue Mar 30 2021 Jonathan Wakely - 6.1.4-2 - Rebuilt for removed libstdc++ symbol (#1937698) * Tue Mar 16 2021 Michel Alexandre Salim - 6.1.4-1 - Update to 6.1.4 - Fix for SIGSTKSZ/MINSIGSTKSZ non-constant on glibc > 2.33 - Declare bundled libraries * Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 6.0.13-4 - Rebuilt for updated systemd-rpm-macros See https://pagure.io/fesco/issue/2583. * Tue Jan 26 2021 Fedora Release Engineering - 6.0.13-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Thu Jan 14 08:47:13 CET 2021 Adrian Reber - 6.0.13-2 - Rebuilt for protobuf 3.14 * Thu Nov 19 2020 Michel Alexandre Salim - 6.0.13-1 - Update to 6.0.13 * Thu Nov 5 2020 Filipe Brandenburger - 6.0.11-3 - Go back to using protobuf-lite on epel8, since the -devel package for it is now available (rhbz#1787458). * Thu Sep 24 2020 Adrian Reber - 6.0.11-2 - Rebuilt for protobuf 3.13 * Mon Aug 3 2020 Michel Alexandre Salim - 6.0.11-1 - Update to 6.0.11 - Use the new option to specify linking against the full protobuf on EPEL - Adjust for cmake macro changes * Sat Aug 01 2020 Fedora Release Engineering - 6.0.7-4 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Mon Jul 27 2020 Fedora Release Engineering - 6.0.7-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Sun Jun 14 2020 Adrian Reber - 6.0.7-2 - Rebuilt for protobuf 3.12 * Tue Mar 3 2020 Michel Alexandre Salim - 6.0.7-1 - Update to 6.0.7 * Tue Feb 18 2020 Michel Alexandre Salim - 6.0.6-1 - Update to 6.0.6 * Sat Feb 1 2020 Michel Alexandre Salim - 6.0.5-1 - Update to 6.0.5 - Build for EPEL 8 * Tue Jan 28 2020 Fedora Release Engineering - 6.0.4-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Sun Dec 1 2019 Michel Alexandre Salim - 6.0.4-1 - Update to 6.0.4 * Sun Sep 22 2019 Michel Alexandre Salim - 6.0.3-1 - Update to 6.0.3 * Wed Jul 24 2019 Fedora Release Engineering - 5.1.10-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Mon May 27 2019 Michel Alexandre Salim - 5.1.10-1 - Update to 5.1.10 * Thu Jan 31 2019 Fedora Release Engineering - 5.1.9-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Wed Jan 16 2019 Jason Gauci - 5.1.9-1 - https://github.com/MisterTea/EternalTerminal/releases/tag/et-v5.1.9 * Wed Nov 21 2018 Igor Gnatenko - 5.1.8-3 - Rebuild for protobuf 3.6 * Wed Oct 31 2018 Sérgio Basto - 5.1.8-2 - Make it possible build it on EPEL 7 * Mon Oct 29 2018 Michel Alexandre Salim - 5.1.8-1 - https://github.com/MisterTea/EternalTerminal/releases/tag/et-v5.1.8 * Wed Oct 17 2018 Michel Alexandre Salim - 5.1.7-1%{?dist} - https://github.com/MisterTea/EternalTerminal/releases/tag/et-v5.1.7 - https://github.com/MisterTea/EternalTerminal/releases/tag/et-v5.1.6 * Tue Oct 9 2018 Jason Gauci - 5.1.5-2%{?dist} - https://github.com/MisterTea/EternalTerminal/releases/tag/et-v5.1.5 - https://github.com/MisterTea/EternalTerminal/releases/tag/et-v5.1.4 - https://github.com/MisterTea/EternalTerminal/releases/tag/et-v5.1.3 - https://github.com/MisterTea/EternalTerminal/releases/tag/et-v5.1.2 - https://github.com/MisterTea/EternalTerminal/releases/tag/et-v5.1.1 * Fri Aug 24 2018 Michel Alexandre Salim - 5.1.0-1%{?dist} - Update to 5.1.0 * Tue Aug 14 2018 Michel Alexandre Salim - 5.0.7-2%{?dist} - add BR on gcc-c++ * Thu Aug 9 2018 Michel Alexandre Salim - 5.0.7-1%{?dist} - Initial package ## END: Generated by rpmautospec