%global snapver 20160728 Name: opentracker Version: 0 Release: 0.12.%{snapver}cvs%{?dist} Summary: BitTorrent Tracker Group: Applications/Internet License: Beerware URL: http://erdgeist.org/arts/software/opentracker/ # cvs -d:pserver:anoncvs@cvs.erdgeist.org:/home/cvsroot co -D "2016-07-28" -d opentracker-%%{snapver} opentracker # tar cjf opentracker-%%{snapver}.tar.bz2 opentracker-%%{snapver} Source0: %{name}-%{snapver}.tar.bz2 Source1: %{name}-ipv4.service Source2: %{name}-ipv6.service Source3: %{name}.sysconfig Patch0: %{name}-0-Makefile.patch Patch1: %{name}-0-daemon.patch Patch2: %{name}-0-conf.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: libowfat-static BuildRequires: zlib-devel BuildRequires: systemd Requires(pre): shadow-utils %description opentracker is a open and free BitTorrent tracker project. It aims for minimal resource usage. %package common Summary: Common-Files for the BitTorrent-Tracker Group: Applications/Internet BuildArch: noarch %description common Filesystem-package which provides the root-dir. %package ipv4 Summary: BitTorrent Tracker using ipv4 Group: Applications/Internet Requires: %{name}-common %description ipv4 opentracker is a open and free BitTorrent tracker project. It aims for minimal resource usage. This package provides IPv4 capability. %package ipv6 Summary: BitTorrent Tracker using ipv6 Group: Applications/Internet Requires: %{name}-common %description ipv6 opentracker is a open and free BitTorrent tracker project. It aims for minimal resource usage. This package provides IPv6 capability. %prep %setup -q -n %{name}-%{snapver} %patch0 -p1 %patch1 -p1 %patch2 -p1 %build sed -i 's|INPUTCONFFILEHERE|%{_sysconfdir}/%{name}/%{name}-ipv4.conf|g' \ opentracker.c sed -i 's|INPUTINCLUDEDIRHERE|%{_includedir}|g' \ Makefile CFLAGS="%{optflags}" make %{name} %{?_smp_mflags} mv %{name} %{name}-ipv4 make clean sed -e 's|#FEATURES+=-DWANT_V6|FEATURES+=-DWANT_V6|g' \ -i Makefile sed -i 's|%{_sysconfdir}/%{name}/%{name}-ipv4.conf|%{_sysconfdir}/%{name}/%{name}-ipv6.conf|g' \ opentracker.c CFLAGS="%{optflags}" make %{name} %{?_smp_mflags} mv %{name} %{name}-ipv6 %install rm -rf %{buildroot} install -d %{buildroot}%{_bindir}/ install -dm0755 %{buildroot}/var/%{name} # ipv4 install -Dpm0755 %{name}-ipv4 \ %{buildroot}%{_bindir}/ install -Dpm0644 %{name}.conf.sample \ %{buildroot}%{_sysconfdir}/%{name}/%{name}-ipv4.conf install -Dpm0755 %{SOURCE1} \ %{buildroot}%{_unitdir}/%{name}-ipv4.service install -Dpm0644 %{SOURCE3} \ %{buildroot}%{_sysconfdir}/sysconfig/%{name}-ipv4 # ipv6 install -Dpm0755 %{name}-ipv6 \ %{buildroot}%{_bindir}/ install -Dpm0644 %{name}.conf.sample \ %{buildroot}%{_sysconfdir}/%{name}/%{name}-ipv6.conf install -Dpm0755 %{SOURCE2} \ %{buildroot}%{_unitdir}/%{name}-ipv6.service install -Dpm0644 %{SOURCE3} \ %{buildroot}%{_sysconfdir}/sysconfig/%{name}-ipv6 %pre common getent group %{name} > /dev/null || %{_sbindir}/groupadd -r %{name} getent passwd %{name} > /dev/null || %{_sbindir}/useradd -r -g %{name} -d / -s /sbin/nologin -c "Opentracker User" %{name} exit 0 %post ipv4 %systemd_post opentracker-ipv4.service %post ipv6 %systemd_post opentracker-ipv6.service %preun ipv4 %systemd_preun opentracker-ipv4.service %preun ipv6 %systemd_preun opentracker-ipv6.service %postun ipv4 %systemd_postun_with_restart opentracker-ipv4.service %postun ipv6 %systemd_postun_with_restart opentracker-ipv6.service %clean rm -rf %{buildroot} %files common %defattr(-,root,opentracker,-) %dir %{_sysconfdir}/%{name}/ %dir /var/%{name}/ %files ipv4 %defattr(-,root,root,-) %doc README %{_bindir}/%{name}-ipv4 %config(noreplace) %{_sysconfdir}/%{name}/%{name}-ipv4.conf %config(noreplace) %{_sysconfdir}/sysconfig/%{name}-ipv4 %{_unitdir}/opentracker-ipv4.service %files ipv6 %defattr(-,root,root,-) %doc README %{_bindir}/%{name}-ipv6 %config(noreplace) %{_sysconfdir}/%{name}/%{name}-ipv6.conf %config(noreplace) %{_sysconfdir}/sysconfig/%{name}-ipv6 %{_unitdir}/opentracker-ipv6.service # thx to Romain Wartel and Matt Domsch and Robert Scheck for the assistance in the review process. %changelog * Thu Jul 28 2016 Kevin Fenzi - 0.0.12.20160728cvs - Update to 20160728 snapshot - Switch to systemd unit files * Thu Feb 04 2016 Fedora Release Engineering - 0-0.11.20101114cvs - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild * Thu Jun 18 2015 Fedora Release Engineering - 0-0.10.20101114cvs - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild * Sun Aug 17 2014 Fedora Release Engineering - 0-0.9.20101114cvs - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild * Sat Jun 07 2014 Fedora Release Engineering - 0-0.8.20101114cvs - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild * Sat Aug 03 2013 Fedora Release Engineering - 0-0.7.20101114cvs - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild * Thu Feb 14 2013 Fedora Release Engineering - 0-0.6.20101114cvs - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild * Fri Jul 20 2012 Fedora Release Engineering - 0-0.5.20101114cvs - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild * Fri Jan 13 2012 Fedora Release Engineering - 0-0.4.20101114cvs - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild * Fri Mar 11 2011 Simon Wesp - 0-0.3.20101114cvs - Adhere to Static Library Packaging Guidelines RHBZ#678857 * Tue Feb 08 2011 Fedora Release Engineering - 0-0.2.20101114cvs - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Tue Jan 25 2011 Simon Wesp - 0-0.1.20101114cvs - Initial import to the fedora package collection