From c905638e9a337f925aafbfeff863fb4fda157aca Mon Sep 17 00:00:00 2001 From: Sérgio M. Basto Date: Aug 10 2016 04:47:30 +0000 Subject: Revert "Retire packages without systemd support, See FESCo ticket 1605" This reverts commit 9116ef74d303fcf1eb6d170a7b93a37d2c5caa73. --- diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1b0eb3b --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +tetrinetx-1.13.16+qirc-1.40c.tar.gz diff --git a/dead.package b/dead.package deleted file mode 100644 index 1186b4b..0000000 --- a/dead.package +++ /dev/null @@ -1 +0,0 @@ -Retire packages without systemd support, See FESCo ticket 1605 diff --git a/sources b/sources new file mode 100644 index 0000000..a735bd0 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +32e5306bc26afc9e5acdca9c093947c0 tetrinetx-1.13.16+qirc-1.40c.tar.gz diff --git a/tetrinetx.init b/tetrinetx.init new file mode 100644 index 0000000..392bf93 --- /dev/null +++ b/tetrinetx.init @@ -0,0 +1,103 @@ +#!/bin/sh +# +# tetrinetx Starts, stops and restarts the GNU TetriNET server +# +# chkconfig: - 98 01 +# description: The GNU TetriNET server daemon +# processname: tetrinetx +# config: /etc/tetrinetx/game.conf +# pidfile: /var/run/tetrinetx.pid + +### BEGIN INIT INFO +# Provides: tetrinetx +# Should-Start: $network +# Description: The GNU TetriNET server daemon +# Short-Description: Starts, stops and restarts the GNU TetriNET server +### END INIT INFO + +# Source function library. +. /etc/rc.d/init.d/functions + +display_name="TetriNET server" +exec="/usr/bin/tetrinetx" +prog="tetrinetx" +prog_user="tetrinetx" +config="/etc/tetrinetx/game.conf" + +[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog + +lockfile=/var/lock/subsys/$prog + +start() { + [ -x $exec ] || exit 5 + [ -f $config ] || exit 6 + echo -n $"Starting $display_name: " + daemon --user $prog_user "$exec > /dev/null" + retval=$? + echo + [ $retval -eq 0 ] && touch $lockfile + return $retval +} + +stop() { + echo -n $"Stopping $display_name: " + killproc $prog + retval=$? + echo + [ $retval -eq 0 ] && rm -f $lockfile + return $retval +} + +restart() { + stop + start +} + +reload() { + restart +} + +force_reload() { + restart +} + +rh_status() { + status $prog +} + +rh_status_q() { + rh_status >/dev/null 2>&1 +} + + +case "$1" in + start) + rh_status_q && exit 0 + $1 + ;; + stop) + rh_status_q || exit 0 + $1 + ;; + restart) + $1 + ;; + reload) + rh_status_q || exit 7 + $1 + ;; + force-reload) + force_reload + ;; + status) + rh_status + ;; + condrestart|try-restart) + rh_status_q || exit 0 + restart + ;; + *) + echo $"Usage: $0 {start|stop|status|restart|try-restart|reload|force-reload}" + exit 2 +esac +exit $? \ No newline at end of file diff --git a/tetrinetx.logrotate b/tetrinetx.logrotate new file mode 100644 index 0000000..8eabc49 --- /dev/null +++ b/tetrinetx.logrotate @@ -0,0 +1,6 @@ +/var/log/tetrinetx/game.log { + missingok + notifempty + size 30k + create 0644 tetrinetx tetrinetx +} diff --git a/tetrinetx.spec b/tetrinetx.spec new file mode 100644 index 0000000..33680e3 --- /dev/null +++ b/tetrinetx.spec @@ -0,0 +1,175 @@ +Name: tetrinetx +Version: 1.13.16 +Release: 15%{?dist} +Summary: The GNU TetriNET server + +Group: Amusements/Games +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 +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) + +BuildRequires: adns-devel +Requires: logrotate +Requires(pre): /sbin/chkconfig /usr/sbin/useradd +Requires(post): /sbin/chkconfig +Requires(preun): /sbin/chkconfig + + +%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 +cd src +./compile.linux %{optflags} %{?_smp_mflags} +cd .. + + +%install +rm -rf %{buildroot} +# 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}%{_initrddir} +install -p -m 755 %{SOURCE1} %{buildroot}%{_initrddir}/tetrinetx +# 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}%{_localstatedir}/run/tetrinetx + + +%clean +rm -rf %{buildroot} + + +%pre +# Installation +if [ $1 -eq 1 ]; then + /usr/sbin/useradd -c "The GNU TetriNET server" -r -M -s '' \ + -d %{_localstatedir}/games/tetrinetx tetrinetx &>/dev/null || : +fi + + +%post +# Installation +if [ $1 -eq 1 ]; then + /sbin/chkconfig --add tetrinetx +fi + + +%preun +# Uninstallation +if [ $1 -eq 0 ]; then + /etc/init.d/tetrinetx stop &> /dev/null || : + /sbin/chkconfig --del tetrinetx || : +fi + + +%postun +# Upgrade +if [ $1 -ge 1 ]; then + /etc/init.d/tetrinetx condrestart &>/dev/null || : +fi + + +%files +%defattr(-,root,root,-) +%doc AUTHORS ChangeLog COPYING README README.qirc.spectators bin/game.allow.example bin/game.ban.compromise.example bin/game.ban.example +%{_bindir}/tetrinetx +%{_initrddir}/tetrinetx +%dir %{_sysconfdir}/tetrinetx +%config(noreplace) %{_sysconfdir}/logrotate.d/tetrinetx +%defattr(-,tetrinetx,tetrinetx) +%{_localstatedir}/log/tetrinetx +%{_localstatedir}/games/tetrinetx +%{_localstatedir}/run/tetrinetx +%config(noreplace) %{_sysconfdir}/tetrinetx/* + + +%changelog +* 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