Name: tetrinetx Version: 1.13.16 Release: 35%{?dist} Summary: The GNU TetriNET server License: GPLv2 URL: http://tetrinetx.sourceforge.net/ Source0: http://switch.dl.sourceforge.net/sourceforge/tetrinetx/%{name}-%{version}+qirc-1.40c.tar.gz Source1: tetrinetx.init Source2: tetrinetx.logrotate Source3: tetrinetx.service Source4: %{name}-tmpfiles.conf Requires(pre): shadow-utils %{?systemd_requires} BuildRequires: gcc BuildRequires: systemd-rpm-macros BuildRequires: adns-devel Requires: logrotate %description Tetrinetx is the GNU TetriNET server written in C. It includes IRC and Spectator supports. As many other tetrinet servers, it uses IP independent decryption which allows the server to run behind a router. TetriNET is a network-based, multiplayer falling bricks game. This package contains a server for hosting TetriNET games over a public or private network. %prep %setup -q -n %{name}-%{version}+qirc-1.40c # Modify the compile script to use correct directories and use "tetrinetx" as # the program name sed -i "s:/usr/local:%{_prefix}:g; s/tetrix\\.linux/tetrinetx/g" -i src/compile.linux # Modify the default config file to use the correct pid file location sed -i "s:game\\.pid:%{_localstatedir}/run/tetrinetx/game.pid:" bin/game.conf # Modify config.h to use correct directories for config files, etc sed -i "s:game\\.log:%{_localstatedir}/log/tetrinetx/game\\.log:; s:game\\.pid:%{_localstatedir}/run/tetrinetx/game\\.pid:; s:game\\.winlist:%{_localstatedir}/games/tetrinetx/game\\.winlist:g; s:\"game:\"%{_sysconfdir}/tetrinetx/game:g" src/config.h %build %global optflags %(echo %{optflags} | sed 's/-Wp,-D_FORTIFY_SOURCE=2//') cd src ./compile.linux "%{optflags}" cd .. %install # Install executable mkdir -p %{buildroot}%{_bindir} install -m 755 bin/tetrinetx %{buildroot}%{_bindir}/ # Install configuration files mkdir -p %{buildroot}%{_sysconfdir}/tetrinetx install -p -m 644 bin/game.conf %{buildroot}%{_sysconfdir}/tetrinetx install -p -m 644 bin/game.motd %{buildroot}%{_sysconfdir}/tetrinetx install -p -m 644 bin/game.pmotd %{buildroot}%{_sysconfdir}/tetrinetx install -p -m 600 bin/game.secure %{buildroot}%{_sysconfdir}/tetrinetx # Install system init script mkdir -p %{buildroot}%{_unitdir} install -p -m 644 %{SOURCE3} %{buildroot}%{_unitdir}/tetrinetx.service # Install logrotate.d entry mkdir -p %{buildroot}%{_sysconfdir}/logrotate.d install -p -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/logrotate.d/tetrinetx # Log files are placed under /var/log/tetrinetx mkdir -p %{buildroot}%{_localstatedir}/log/tetrinetx # State data (winlists, etc) for the game will be placed in /var/games/tetrinetx mkdir -p %{buildroot}%{_localstatedir}/games/tetrinetx # Tetrinetx pid file goes here mkdir -p %{buildroot}%{_tmpfilesdir}/ install -p -m 644 %{SOURCE4} %{buildroot}%{_tmpfilesdir}/%{name}.conf mkdir -p %{buildroot}%{_localstatedir}/run/tetrinetx %pre getent group tetrinetx >/dev/null || groupadd -r tetrinetx getent passwd tetrinetx >/dev/null || \ useradd -r -g tetrinetx -d %{_localstatedir}/games/tetrinetx -M -s /sbin/nologin \ -c "Tetrinetx service account" tetrinetx %post %systemd_post tetrinetx.service %preun %systemd_preun tetrinetx.service %postun %systemd_postun_with_restart tetrinetx.service %files %doc AUTHORS ChangeLog README README.qirc.spectators bin/game.allow.example bin/game.ban.compromise.example bin/game.ban.example %license COPYING %{_bindir}/tetrinetx #{_initrddir}/tetrinetx %{_unitdir}/tetrinetx.service %dir %{_sysconfdir}/tetrinetx %config(noreplace) %{_sysconfdir}/logrotate.d/tetrinetx %dir %attr(-,tetrinetx,tetrinetx) %{_localstatedir}/log/tetrinetx/ %dir %attr(-,tetrinetx,tetrinetx) %{_localstatedir}/games/tetrinetx/ %dir %attr(-,tetrinetx,tetrinetx) %{_localstatedir}/run/tetrinetx/ %{_tmpfilesdir}/%{name}.conf %config(noreplace) %{_sysconfdir}/tetrinetx/* %changelog * Sat Jul 23 2022 Fedora Release Engineering - 1.13.16-35 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild * Sat Jan 22 2022 Fedora Release Engineering - 1.13.16-34 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild * Fri Jul 23 2021 Fedora Release Engineering - 1.13.16-33 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 1.13.16-32 - Rebuilt for updated systemd-rpm-macros See https://pagure.io/fesco/issue/2583. * Wed Jan 27 2021 Fedora Release Engineering - 1.13.16-31 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Mon Aug 10 2020 Sérgio Basto - 1.13.16-30 - Typos fixes and remove D_FORTIFY_SOURCE from optflags because breaks tetrinetx * Sun Aug 09 2020 Sérgio Basto - 1.13.16-29 - Add tmpfiles to work out of the box * Fri Aug 07 2020 Sérgio Basto - 1.13.16-28 - Install tetrinet.service * Fri Aug 07 2020 Jeff Law - 1.13.16-27 - Properly quote arguments passed to compile.linux * Sat Aug 01 2020 Fedora Release Engineering - 1.13.16-26 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Wed Jul 29 2020 Fedora Release Engineering - 1.13.16-25 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Fri Jan 31 2020 Fedora Release Engineering - 1.13.16-24 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Sat Jul 27 2019 Fedora Release Engineering - 1.13.16-23 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Sun Feb 03 2019 Fedora Release Engineering - 1.13.16-22 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Sat Jul 14 2018 Fedora Release Engineering - 1.13.16-21 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Fri Feb 09 2018 Fedora Release Engineering - 1.13.16-20 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Thu Aug 03 2017 Fedora Release Engineering - 1.13.16-19 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild * Thu Jul 27 2017 Fedora Release Engineering - 1.13.16-18 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Sat Feb 11 2017 Fedora Release Engineering - 1.13.16-17 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild * Tue Aug 23 2016 Sérgio Basto - 1.13.16-16 - Add Packaging:Systemd - Spec clean up, add License tag. * Fri Feb 05 2016 Fedora Release Engineering - 1.13.16-15 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild * Fri Jun 19 2015 Fedora Release Engineering - 1.13.16-14 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild * Mon Aug 18 2014 Fedora Release Engineering - 1.13.16-13 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild * Sun Jun 08 2014 Fedora Release Engineering - 1.13.16-12 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild * Sun Aug 04 2013 Fedora Release Engineering - 1.13.16-11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild * Fri Feb 15 2013 Fedora Release Engineering - 1.13.16-10 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild * Sat Jul 21 2012 Fedora Release Engineering - 1.13.16-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild * Sat Jan 14 2012 Fedora Release Engineering - 1.13.16-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild * Wed Feb 09 2011 Fedora Release Engineering - 1.13.16-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Sun Jul 26 2009 Fedora Release Engineering - 1.13.16-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild * Wed Feb 25 2009 Fedora Release Engineering - 1.13.16-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild * Mon Feb 18 2008 Fedora Release Engineering - 1.13.16-4 - Autorebuild for GCC 4.3 * Tue Jan 15 2008 Francois Aucamp - 1.13.16-3 - Changed initscript to comply with LSB standard - Fixed package License field * Tue Mar 13 2007 Francois Aucamp - 1.13.16-2 - Cleaned up sed scripts in %%prep - Replaced config.h patch with sed script in order to support RPM macros - Removed trademarked names from %%description * Tue Jan 30 2007 Francois Aucamp - 1.13.16-1 - Initial RPM build - Created patch to make config.h refer to correct directories - Created tetrinetx init script - Created tetrinetx logrotate.d entry