File leafnode.spec of Package leafnode
Name: leafnode
Version: 1.11.11
Release: 2%{?dist}
Summary: Leaf site offline NNTP server
License: MIT and LGPLv2
Group: Applications/Internet
URL: http://www.leafnode.org
Source0: http://download.sourceforge.net/leafnode/leafnode-%{version}.tar.bz2
Source2: leafnode.cron
Source3: leafnode.socket
Source4: leafnode@.service
Source5: leafnode.cron.example
Patch1: leafnode-1.11.8-nonettests.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: pcre-devel
Requires: NetworkManager
Requires(pre): shadow-utils
BuildRequires: systemd-units
Requires(post): grep
Requires(post): systemd-units
Requires(preun): systemd-units
Requires(postun): systemd-units
%define confdir %{_sysconfdir}/leafnode
%define spooldir %{_localstatedir}/spool/news
%define lockfile %{_localstatedir}/spool/news/leaf.node/lock.file
%description
Leafnode is a small NNTP server for leaf sites without permanent
connection to the internet. It supports a subset of NNTP and is able to
automatically fetch the newsgroups the user reads regularly from the
newsserver of the ISP.
%description -l de
Leafnode ist ein offline-Newsserver, der vor allem für den typischen
Einzelnutzer-Rechner ohne permanente Internetanbindung geeignet ist.
Leafnode bezieht automatisch die Newsgroups, die der oder die Nutzer
regelmäßig lesen, vom Newsserver des Providers.
%prep
%setup -q -n %{name}-%{version}
%patch1 -p1
cp -p %{SOURCE5} .
%build
%configure --with-spooldir=%spooldir --sysconfdir=%confdir --with-lockfile=%lockfile --with-ipv6
make %{?_smp_mflags}
%check
make check
%install
rm -rf $RPM_BUILD_ROOT
make DESTDIR=$RPM_BUILD_ROOT install
for i in $RPM_BUILD_ROOT/%{_sysconfdir}/leafnode/*.example ; do
cp -p $i ${i%%.example}
done
rm $RPM_BUILD_ROOT/%{_sysconfdir}/leafnode/*.example
mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/cron.daily
install -m755 leafnode.cron.daily \
$RPM_BUILD_ROOT/%{_sysconfdir}/cron.daily/leafnode
mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/xinetd.d
install -m644 leafnode.xinetd \
$RPM_BUILD_ROOT/%{_sysconfdir}/xinetd.d/leafnode
mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/cron.hourly
install -m644 %{SOURCE2} \
$RPM_BUILD_ROOT/%{_sysconfdir}/cron.hourly/leafnode
rm $RPM_BUILD_ROOT/%{_sysconfdir}/leafnode/Makefile.dist
rm $RPM_BUILD_ROOT/%{_sysconfdir}/leafnode/nntp.rules.dist
rm $RPM_BUILD_ROOT/%{_sysconfdir}/leafnode/run.tcpd.dist
rm $RPM_BUILD_ROOT/%{_sysconfdir}/leafnode/run.tcpserver.dist
rm $RPM_BUILD_ROOT/%{_sysconfdir}/leafnode/UNINSTALL-daemontools
# Prepare temporary working directory for files section.
rm -rf _doc_german ; mkdir _doc_german
cp -a doc_german _doc_german
rm -f _doc_german/doc_german/Makefile* _doc_german/doc_german/*.in
install -d -m 755 %{buildroot}%{_unitdir}
install -p -m 755 %{SOURCE3} %{buildroot}%{_unitdir}/%{name}.socket
install -p -m 755 %{SOURCE4} %{buildroot}%{_unitdir}/%{name}@.service
%pre
getent group news >/dev/null || groupadd -r news
getent passwd news >/dev/null || \
useradd -r -g news -d /etc/news -s /sbin/nologin \
-c "News server user" news
exit 0
%post
%if 0%{?fedora} > 17
%systemd_post leafnode@.service
%else
if [ $1 -eq 1 ]; then
# Initial installation
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
fi
%endif
%preun
%if 0%{?fedora} > 17
%systemd_preun leafnode@.service
%else
if [ $1 -eq 0 ]; then
# Package removal, not upgrade
/bin/systemctl --no-reload disable leafnode@.service > /dev/null 2>&1 || :
/bin/systemctl stop leafnode@.service > /dev/null 2>&1 || :
fi
%endif
%postun
%if 0%{?fedora} > 17
%systemd_postun_with_restart leafnode@.service
%else
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
if [ $1 -ge 1 ] ; then
# Package upgrade, not uninstall
/bin/systemctl try-restart leafnode@.service >/dev/null 2>&1 || :
fi
%endif
%files
%defattr(-,root,root)
%attr(750,root,news) %dir %confdir/
%config(noreplace) %attr(640,root,news) %confdir/config
%config(noreplace) %attr(640,root,news) %confdir/filters
%attr(750,root,news) %config(noreplace) %{_sysconfdir}/cron.daily/leafnode
%config(noreplace) %{_sysconfdir}/xinetd.d/leafnode
%attr(750,root,news) %config(noreplace) %{_sysconfdir}/cron.hourly/leafnode
%{_bindir}/*
%{_sbindir}/*
%doc %_mandir/man1/*
%doc %_mandir/man8/*
%doc COPYING COPYING.GPL COPYING.LGPL CREDITS ChangeLog ChangeLog.old
%doc FAQ.* INSTALL leafnode.cron.example
%doc NEWS README* ADD-ONS
%lang(de) %doc _doc_german/doc_german
%dir %attr(4755,news,news) %spooldir
%dir %attr(755,news,news) %spooldir/leaf.node
%dir %attr(2775,news,news) %spooldir/failed.postings
%dir %attr(2775,news,news) %spooldir/interesting.groups
%dir %attr(755,news,news) %spooldir/out.going
%dir %attr(755,news,news) %spooldir/temp.files
%dir %attr(755,news,news) %spooldir/message.id
%{_unitdir}/%{name}@.service
%{_unitdir}/%{name}.socket
%clean
rm -rf $RPM_BUILD_ROOT
%changelog
* Fri Dec 04 2015 Matěj Cepl <mcepl@redhat.com> - 1.11.11-2
- Fix exec bits on scripts again (RHBZ #1173292)
* Tue Aug 25 2015 Matěj Cepl <mcepl@redhat.com> - 1.11.11-1
- New upstream release.
- Remove characters from the spec file
- Fix bogus dates in the changelog
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.11.8-14
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.11.8-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.11.8-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.11.8-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.11.8-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Tue Nov 27 2012 Matěj Cepl <mcepl@redhat.com> - 1.11.8-9
- Fix cronjob. Fixes bug #728685
* Sat Aug 25 2012 Kevin Fenzi <kevin@scrye.com> 1.11.8-8
- Add systemd macros for presets. Fixes bug #850182
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.11.8-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Fri Feb 10 2012 Petr Pisar <ppisar@redhat.com> - 1.11.8-6
- Rebuild against PCRE 8.30
* Sat Jan 28 2012 Kevin Fenzi <kevin@scrye.com> 1.11.8-5
- Convert to systemd from xinetd. Fixes bug #737676
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.11.8-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.11.8-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Thu Aug 05 2010 Kevin Fenzi <kevin@tummy.com> - 1.11.8-2
- Add patch to avoid network tests during build.
* Thu Aug 05 2010 Kevin Fenzi <kevin@tummy.com> - 1.11.8-1
- Update to 1.11.8
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.11.7-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Sun Jul 05 2009 Kevin Fenzi <kevin@tummy.com> - 1.11.7-3
- Enable ipv6 support
* Fri Jul 03 2009 Kevin Fenzi <kevin@tummy.com> - 1.11.7-2
- Fix xinetd file to use ipv4 for bug #509218
* Fri Jun 05 2009 Kevin Fenzi <kevin@tummy.com> - 1.11.7-1
- Update to 1.11.7
- Add an example cron script for bug #489592
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.11.6-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Mon Jun 16 2008 Kevin Fenzi <kevin@tummy.com> - 1.11.6-4
- Add news user. fixes bug #437462
* Sun Feb 10 2008 Kevin Fenzi <kevin@tummy.com> - 1.11.6-3
- Rebuild for gcc43
* Sat Aug 25 2007 Kevin Fenzi <kevin@tummy.com> - 1.11.6-2
- License tag update.
* Sat Mar 17 2007 Kevin Fenzi <kevin@tummy.com> - 1.11.6-1
- Upgrade to 1.11.6
* Wed Feb 21 2007 Kevin Fenzi <kevin@tummy.com> - 1.11.5-4
- Hopefully finish fixing permissions (bug 221105)
* Mon Jan 22 2007 Kevin Fenzi <kevin@tummy.com> - 1.11.5-3
- Fix permissions. (see bug 221105)
* Thu Oct 05 2006 Christian Iseli <Christian.Iseli@licr.org> 1.11.5-2
- rebuilt for unwind info generation, broken in gcc-4.1.1-21
* Tue Sep 19 2006 Kevin Fenzi <kevin@tummy.com> - 1.11.5-1
- Take over maintainership (see bug 185883)
- Update to 1.11.5-1
- Add dist tag
- Remove some doc files that are no longer shipped.
- Add check section.
- Fix spec file encoding
- Fix macros in changelog.
* Sun May 22 2005 Jeremy Katz <katzj@redhat.com> - 1.9.53-3
- rebuild on all arches
* Thu Apr 7 2005 Michael Schwendt <mschwendt[AT]users.sf.net>
- rebuilt
* Thu May 06 2004 Andreas Pfaffeneder <fedora@zuhause-local.de> 0:1.9.53-0.fdr1
- Bugfix release
* Sun Apr 04 2004 Andreas Pfaffeneder <fedora@zuhause-local.de> 0:1.9.52-0.fdr1
- Bugfix release
* Mon Feb 23 2004 Andreas Pfaffeneder <fedora@zuhause-local.de> 0:1.9.51-0.fdr1
- Bugfix release
* Thu Feb 19 2004 Andreas Pfaffeneder <fedora@zuhause-local.de> 0:1.9.50-0.fdr.1
- Update to 1.9.50.rel
- Bugfix-Release, see the included NEWS
- added bind to xinetd.leafnode
* Fri Jan 09 2004 Andreas Pfaffeneder <fedora@zuhause-local.de> 0:1.9.49-0.fdr.1
- Update to 1.9.49.rel
- bugfix update
- little more detailed changelog
* Fri Jan 09 2004 Andreas Pfaffeneder <fedora@zuhause-local.de> 0:1.9.48-0.fdr.1
- Update to 1.9.48.rel
- Security update
* Wed Jan 07 2004 Andreas Pfaffeneder <fedora@zuhause-local.de> 0:1.9.47-0.fdr.1
- Update to 1.9.47.rel
- minor cleanup in source0-macro
* Wed Nov 12 2003 Andreas Pfaffeneder <fedora@zuhause-local.de> 0:1.9.46-0.fdr.1
- Update to 1.9.46.rel
* Thu Oct 30 2003 Andreas Pfaffeneder <fedora@zuhause-local.de> 0:1.9.45-0.fdr.1
- Update to 1.9.45.rel
- including fixes from Michael Schwendt
- including xinetd-file from older release again
* Mon Sep 22 2003 Andreas Pfaffeneder <fedora@zuhause-local.de> 0:1.9.44-0.fdr.1
- Update to 1.9.44.rel
- Include new file ADD-ONS
- Because an xinetd-file is included now I'll drop mine
* Tue Sep 16 2003 Andreas Pfaffeneder <fedora@zuhause-local.de> 0:1.9.43-0.fdr.0
- Update to 1.9.43.rel
* Fri Aug 01 2003 Andreas Pfaffeneder <fedora@zuhause-local.de> 0:1.9.42-0.fdr.5
- Proper file permissions, changelog, buildrequires and requires
* Fri Aug 01 2003 Andreas Pfaffeneder <fedora@zuhause-local.de> 0:1.9.42-0.fdr.4
- Cleaned up changelog, changed builreq to explicit xinetd
* Mon Jul 28 2003 Andreas Pfaffeneder <fedora@zuhause-local.de> 0:1.9.42-0.fdr.3
- More cleanup: requires, license, *.in-files, directory ownership, daemon-tools
* Thu Jul 24 2003 Andreas Pfaffeneder <fedora@zuhause-local.de> 0:1.9.42-0.fdr.2
- More cleanup, "%%doc (DE)" stays the same, working build
* Tue Jul 22 2003 Andreas Pfaffeneder <fedora@zuhause-local.de> 0:1.9.42-0.fdr.1
- Cleaned up spec-file a little bit, build with SMP-Flags
- This spec still needs more work especially "%%doc (DE)" and
- %%configure is still a issue
- reloaced binaries to /usr/local/bin and /usr/local/sbin
* Mon Jul 21 2003 Andreas Pfaffeneder <fedora@zuhause-local.de> 0:1.9.42-0.fdr.0
- Initial Fedora-RPM release.