summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSven Wegener <swegener@gentoo.org>2005-01-17 19:40:10 +0000
committerSven Wegener <swegener@gentoo.org>2005-01-17 19:40:10 +0000
commit78eda1ab62689315cae2a37be818982ba5d789f7 (patch)
tree14ec5f7e35dd0d5ab0189234039f483081faf1dc /net-nntp/inn
parentMoved from net-news/nntpswitch to net-nntp/nntpswitch. (diff)
downloadgentoo-2-78eda1ab62689315cae2a37be818982ba5d789f7.tar.gz
gentoo-2-78eda1ab62689315cae2a37be818982ba5d789f7.tar.bz2
gentoo-2-78eda1ab62689315cae2a37be818982ba5d789f7.zip
Moved from net-news/inn to net-nntp/inn.
Diffstat (limited to 'net-nntp/inn')
-rw-r--r--net-nntp/inn/ChangeLog75
-rw-r--r--net-nntp/inn/Manifest6
-rw-r--r--net-nntp/inn/files/2.4.1-berkdb.patch32
-rw-r--r--net-nntp/inn/files/digest-inn-2.4.12
-rw-r--r--net-nntp/inn/files/innd21
-rw-r--r--net-nntp/inn/inn-2.4.1.ebuild264
-rw-r--r--net-nntp/inn/metadata.xml5
7 files changed, 405 insertions, 0 deletions
diff --git a/net-nntp/inn/ChangeLog b/net-nntp/inn/ChangeLog
new file mode 100644
index 000000000000..f894ba00c482
--- /dev/null
+++ b/net-nntp/inn/ChangeLog
@@ -0,0 +1,75 @@
+# ChangeLog for net-news/inn
+# Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/net-nntp/inn/ChangeLog,v 1.1 2005/01/17 19:40:10 swegener Exp $
+
+*inn-2.4.1 (17 Jan 2005)
+
+ 17 Jan 2005; Sven Wegener <swegener@gentoo.org> +metadata.xml,
+ +files/2.4.1-berkdb.patch, +files/innd, +inn-2.4.1.ebuild:
+ Moved from net-news/inn to net-nntp/inn.
+
+ 15 Oct 2004; David Holm <dholm@gentoo.org> inn-2.4.1.ebuild:
+ Added to ~ppc.
+
+ 02 Oct 2004; Sven Wegener <swegener@gentoo.org> -inn-2.3.5.ebuild:
+ Removed old ebuild.
+
+ 27 Sep 2004; Sven Wegener <swegener@gentoo.org> inn-2.4.1.ebuild:
+ Added elibtoolize to src_unpack() because the included libtool is broken.
+ Modified to not use lazy bindings.
+
+ 12 Sep 2004; Sven Wegener <swegener@gentoo.org> files/2.4.1-berkdb.patch,
+ inn-2.4.1.ebuild:
+ Added a patch from Maurice Mueller <maurice_mueller@gmx.de> to make inn
+ compile with BerkeleyDB 4.x. Modified ebuild to correctly initialize tagged
+ hash table in pkg_config and install SSL certificates into the right location
+ to prevent overwriting them when upgrading.
+
+ 08 Sep 2004; Sven Wegener <swegener@gentoo.org> +files/2.4.1-berkdb.patch,
+ files/innd, inn-2.4.1.ebuild:
+ Added support for BerkeleyDB via the USE flag berkdb. Added support for the
+ local USE flags innkeywords and inntaggedhash that enable automatic keyword
+ generation support and use a tagged hash table for history.
+
+*inn-2.4.1 (07 Sep 2004)
+
+ 07 Sep 2004; Sven Wegener <swegener@gentoo.org> +inn-2.4.1.ebuild:
+ Version bump, package.mask'ed for testing, please report bugs to bug #29020.
+
+ 19 Jun 2004; Sven Wegener <swegener@gentoo.org> +metadata.xml:
+ Added metadata.xml
+
+ 15 Mar 2004; Michael Sterrett <mr_bones_@gentoo.org> inn-2.3.5.ebuild:
+ don't unset/assign P; (bug #44712); use CFLAGS/CXXFLAGS; use use_with; don't
+ assign default to S; header fix; tidy
+
+ 14 Mar 2004; Michael Sterrett <mr_bones_@gentoo.org> inn-2.3.3.ebuild:
+ clean older version
+
+ 07 Dec 2003; Michael Sterrett <mr_bones_@gentoo.org> inn-2.3.5.ebuild:
+ chown x.y -> chown x:y (bug 35127)
+
+ 05 Dec 2003; Chuck Short <zul@gentoo.org> inn-2.3.5.ebuild:
+ Chown fixes
+
+ 12 Jun 2003; <msterret@gentoo.org> inn-2.3.3.ebuild, inn-2.3.5.ebuild:
+ add Header
+
+*inn-2.3.5 (17 Apr 2003)
+
+ 17 Apr 2003; Martin Holzer <mholzer@gentoo.org> Manifest, inn-2.3.5.ebuild:
+ Version bumped. Ebuild submitted by Stefan Förster <gentoo@stefan-foerster.de>
+ in #14601.
+
+*inn-2.3.3 (13 Jun 2002)
+
+ 26 Aug 2002; Seemant Kulleen <seemant@gentoo.org> inn-2.3.3.ebuild :
+
+ The compile process does not like parallel make (emake). Thanks to:
+ psi-jack@myrealbox.com (Eric Renfro) in bug #7021 for finding and
+ reporting.
+
+ 13 Jun 2002; Preston A. Elder <prez@gentoo.org> inn-2.3.3.ebuild,
+ files/digest-inn-2.3.3, files/innd, ChangeLog :
+
+ - Added for the first time
diff --git a/net-nntp/inn/Manifest b/net-nntp/inn/Manifest
new file mode 100644
index 000000000000..e4dc99993765
--- /dev/null
+++ b/net-nntp/inn/Manifest
@@ -0,0 +1,6 @@
+MD5 92eade8ea983c3b5aee3b56ed8362512 ChangeLog 2679
+MD5 d4764f5c17f5e0b416f7ddf271c77d71 metadata.xml 161
+MD5 13c9fb371216ef57405b76b04f282d4e inn-2.4.1.ebuild 8193
+MD5 9bfea7a0644e2f3adc2738d86bfa2254 files/innd 436
+MD5 69e1740d0d4d85a272e0491fa1a7ddb7 files/2.4.1-berkdb.patch 1393
+MD5 12b5b155a7df558664f522f72ab5f723 files/digest-inn-2.4.1 118
diff --git a/net-nntp/inn/files/2.4.1-berkdb.patch b/net-nntp/inn/files/2.4.1-berkdb.patch
new file mode 100644
index 000000000000..f6ea97f7497a
--- /dev/null
+++ b/net-nntp/inn/files/2.4.1-berkdb.patch
@@ -0,0 +1,32 @@
+diff -Nur inn-2.4.1.orig/configure.in inn-2.4.1/configure.in
+--- inn-2.4.1.orig/configure.in 2004-09-07 14:53:23.800246638 +0200
++++ inn-2.4.1/configure.in 2004-09-07 14:55:04.045893609 +0200
+@@ -375,20 +375,20 @@
+ done
+ fi
+ if test x"$BERKELEY_DB_DIR" = xyes ; then
+- for v in db41 db4 db3 db2 ; do
++ for v in 4.2 4.1 4 3 2 ; do
+- if test -d "/usr/local/include/$v" ; then
++ if test -d "/usr/local/include/db$v" ; then
+ BERKELEY_DB_LDFLAGS="-L/usr/local/lib"
+- BERKELEY_DB_CFLAGS="-I/usr/local/include/$v"
+- BERKELEY_DB_LIB="-l$v"
++ BERKELEY_DB_CFLAGS="-I/usr/local/include/db$v"
++ BERKELEY_DB_LIB="-ldb-$v"
+ AC_MSG_RESULT(FreeBSD locations)
+ break
+ fi
+ done
+ if test x"$BERKELEY_DB_LIB" = x ; then
+- for v in db41 db4 db3 db2 ; do
++ for v in 4.2 4.1 4 3 2 ; do
+- if test -d "/usr/include/$v" ; then
++ if test -d "/usr/include/db$v" ; then
+- BERKELEY_DB_CFLAGS="-I/usr/include/$v"
+- BERKELEY_DB_LIB="-l$v"
++ BERKELEY_DB_CFLAGS="-I/usr/include/db$v"
++ BERKELEY_DB_LIB="-ldb-$v"
+ AC_MSG_RESULT(Linux locations)
+ break
+ fi
diff --git a/net-nntp/inn/files/digest-inn-2.4.1 b/net-nntp/inn/files/digest-inn-2.4.1
new file mode 100644
index 000000000000..e6fc48c71de1
--- /dev/null
+++ b/net-nntp/inn/files/digest-inn-2.4.1
@@ -0,0 +1,2 @@
+MD5 bec635b6e70188071fdb539cd374f2ba inn-2.4.1.tar.gz 1849845
+MD5 aa35f4496d180e372cfa4ecdb9864f03 inn_db4.tar.gz 644
diff --git a/net-nntp/inn/files/innd b/net-nntp/inn/files/innd
new file mode 100644
index 000000000000..ea2a392cf85d
--- /dev/null
+++ b/net-nntp/inn/files/innd
@@ -0,0 +1,21 @@
+#!/sbin/runscript
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-nntp/inn/files/innd,v 1.1 2005/01/17 19:40:10 swegener Exp $
+
+depend() {
+ need net
+}
+
+start() {
+ ebegin "Starting innd"
+ su - news -c /usr/lib/news/bin/rc.news
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping innd"
+ su - news -c '/usr/lib/news/bin/rc.news stop'
+ sleep 2
+ eend $?
+}
diff --git a/net-nntp/inn/inn-2.4.1.ebuild b/net-nntp/inn/inn-2.4.1.ebuild
new file mode 100644
index 000000000000..e598a0046906
--- /dev/null
+++ b/net-nntp/inn/inn-2.4.1.ebuild
@@ -0,0 +1,264 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-nntp/inn/inn-2.4.1.ebuild,v 1.1 2005/01/17 19:40:10 swegener Exp $
+
+inherit fixheadtails ssl-cert eutils libtool flag-o-matic
+
+DESCRIPTION="The Internet News daemon, fully featured NNTP server"
+HOMEPAGE="http://www.isc.org/products/INN"
+SRC_URI="ftp://ftp.isc.org/isc/inn/${P}.tar.gz
+ http://mauricem.com/inn_db4.tar.gz"
+SLOT="0"
+LICENSE="as-is BSD GPL-2"
+KEYWORDS="~x86 ~ppc"
+IUSE="ipv6 kerberos sasl ssl perl python tcltk berkdb inntaggedhash innkeywords"
+
+RDEPEND="virtual/mta
+ kerberos? ( virtual/krb5 )
+ sasl? ( >=dev-libs/cyrus-sasl-2 )
+ ssl? ( dev-libs/openssl )
+ perl? ( dev-lang/perl )
+ python? ( dev-lang/python )
+ tcltk? ( dev-lang/tcl )
+ berkdb? ( sys-libs/db )
+ virtual/gzip"
+DEPEND="${RDEPEND}
+ >=sys-devel/autoconf-2.13
+ sys-devel/libtool
+ >=sys-apps/sed-4"
+
+append-ldflags -Wl,-z,now
+
+src_unpack() {
+ unpack ${A}
+ cd ${S}
+
+ epatch ${FILESDIR}/2.4.1-berkdb.patch
+ epatch ${WORKDIR}/db_patch.patch
+
+ ht_fix_file configure.in support/fixscript.in
+
+ export WANT_AUTOCONF="2.1"
+ autoconf || die "autoconf failed"
+
+ sed -i \
+ -e "s/ -B .OLD//" \
+ Makefile.global.in \
+ control/Makefile \
+ doc/man/Makefile
+
+ elibtoolize || die "elibtoolize failed"
+}
+
+src_compile() {
+ econf \
+ --prefix=/usr/lib/news \
+ --mandir=/usr/share/man \
+ --infodir=/usr/share/info \
+ --with-control-dir=/usr/lib/news/bin/control \
+ --with-etc-dir=/etc/news \
+ --with-filter-dir=/usr/lib/news/bin/filter \
+ --with-db-dir=/var/spool/news/db \
+ --with-doc-dir=/usr/share/doc/${PF} \
+ --with-spool-dir=/var/spool/news \
+ --with-log-dir=/var/log/news \
+ --with-run-dir=/var/run/news \
+ --with-tmp-path=/var/spool/news/tmp \
+ --enable-libtool \
+ --enable-setgid-inews \
+ --enable-uucp-rnews \
+ --with-gnu-ld \
+ $(use_with perl) \
+ $(use_with python) \
+ $(use_with tcltk tcl) \
+ $(use_with kerberos kerberos /usr) \
+ $(use_with sasl) \
+ $(use_with ssl openssl) \
+ $(use_with berkdb berkeleydb) \
+ $(use_enable ipv6) \
+ $(use_enable !inntaggedhash largefiles) \
+ $(use_enable inntaggedhash tagged-hash) \
+ $(use_enable innkeywords keywords) \
+ || die "econf failed"
+ emake -j1 P="" || die "emake failed"
+}
+
+src_install() {
+ make DESTDIR=${D} P="" install || die "make install failed"
+
+ chown -R root.root ${D}/usr/{lib/news/{lib,include},share/{doc,man}}
+ chmod 644 ${D}/etc/news/*
+ for file in control.ctl expire.ctl incoming.conf nntpsend.ctl passwd.nntp readers.conf
+ do
+ chmod 640 ${D}/etc/news/${file}
+ done
+
+ # Prevent old db/* files from being overwritten
+ dodir /usr/share/doc/${PF}/dbexamples
+ for db_file in active active.times distributions history newsgroups
+ do
+ if [ -f ${D}/var/spool/news/db/${db_file} ]
+ then
+ mv ${D}/var/spool/news/db/${db_file} ${D}/usr/share/doc/${PF}/dbexamples
+ fi
+ done
+
+ keepdir \
+ /var/{log,run}/news \
+ /var/spool/news/{,archive,articles,db,incoming{,/bad},innfeed,outgoing,overview,tmp}
+
+ dodoc ChangeLog MANIFEST README* doc/checklist
+ use ipv6 && dodoc doc/IPv6-info
+
+ # So other programs can build against INN. (eg. Suck)
+ insinto /usr/lib/news/include
+ doins include/*.h
+
+ exeinto /etc/init.d
+ doexe ${FILESDIR}/innd innd
+
+ if use ssl
+ then
+ insinto /etc/news/cert
+
+ docert cert
+ fowners news:news /etc/news/cert/cert.{crt,csr,key,pem}
+
+ for cert in cert.{crt,csr,key,pem}
+ do
+ dosym "/etc/news/cert/${cert}" "/usr/lib/news/lib/${cert}"
+ done
+ fi
+}
+
+pkg_postinst() {
+ for db_file in active active.times distributions history newsgroups
+ do
+ if [ -f ${ROOT}/usr/share/doc/${PF}/dbexamples/${db_file} \
+ -a ! -f ${ROOT}/var/spool/news/db/${db_file} ]
+ then
+ cp -p ${ROOT}/usr/share/doc/${PF}/dbexamples/${db_file} \
+ ${ROOT}/var/spool/news/db/${db_file}
+ chmod 664 ${ROOT}/var/spool/news/db/${db_file}
+ fi
+ done
+
+ chown -R news:news ${ROOT}/var/{log,spool}/news
+
+ einfo "Do not forget to update your cron entries, and also run"
+ einfo "makedbz if you need to. If this is a first-time installation"
+ einfo "a minimal active file has been installed. You will need to"
+ einfo "touch history and run 'makedbz -i' to initialize the history"
+ einfo "database. See INSTALL for more information."
+ einfo
+ einfo "You need to assign a real shell to the news user, or else"
+ einfo "starting inn will fail. You can use 'usermod -s /bin/bash news'"
+ einfo "for this."
+
+ if use ssl
+ then
+ einfo
+ einfo "You may want to start nnrpd manually for native ssl support."
+ einfo "If you choose to do so, automating this with a bootscript might"
+ einfo "also be a good choice."
+ einfo "Have a look at man nnrpd for valid parameters."
+ fi
+}
+
+pkg_postrm() {
+ einfo
+ einfo "If you want your newsspool or altered configuration files"
+ einfo "to be removed, please do so now manually."
+ einfo
+}
+
+pkg_config() {
+ NEWSSPOOL_DIR="${ROOT}/var/spool/news"
+ NEWS_SHELL="`awk -F':' '/^news:/ {print $7;}' ${ROOT}/etc/passwd`"
+ NEWS_ERRFLAG="0"
+
+ if [ "${NEWS_SHELL}" == "/bin/false" -o "${NEWS_SHELL}" == "/dev/null" ]
+ then
+ if [ ${UID} -eq 0 ]
+ then
+ einfo 'Changing shell to /bin/bash for user news...'
+ usermod -s /bin/bash news
+ else
+ NEWS_ERRFLAG=1
+ eerror ''
+ eerror 'Could not change shell for user news.'
+ eerror 'Please run "usermod -s /bin/bash news" as root.'
+ fi
+ else
+ einfo "Shell for user news unchanged ('${NEWS_SHELL}')."
+ if [ "${NEWS_SHELL}" != "/bin/sh" -a "${NEWS_SHELL}" != "/bin/bash" ]
+ then
+ ewarn "You might want to change it to '/bin/bash', though."
+ fi
+ fi
+
+ if [ ! -e "${NEWSSPOOL_DIR}/db/history}" ]
+ then
+ if [ ! -f "${NEWSSPOOL_DIR}/db/history.dir" \
+ -a ! -f "${NEWSSPOOL_DIR}/db/history.pag" \
+ -a ! -f "${NEWSSPOOL_DIR}/db/history.hash" \
+ -a ! -f "${NEWSSPOOL_DIR}/db/history.index" ]
+ then
+ einfo 'Building history database...'
+ touch "${NEWSSPOOL_DIR}/db/history"
+ chown news:news "${NEWSSPOOL_DIR}/db/history"
+ chmod 644 "${NEWSSPOOL_DIR}/db/history"
+ su - news -c "/usr/lib/news/bin/makedbz -i"
+ mv -f "${NEWSSPOOL_DIR}/db/history.n.dir" "${NEWSSPOOL_DIR}/db/history.dir"
+ [ -f "${NEWSSPOOL_DIR}/db/history.n.pag" ] && mv -f "${NEWSSPOOL_DIR}/db/history.n.pag" "${NEWSSPOOL_DIR}/db/history.pag"
+ [ -f "${NEWSSPOOL_DIR}/db/history.n.hash" ] && mv -f "${NEWSSPOOL_DIR}/db/history.n.hash" "${NEWSSPOOL_DIR}/db/history.hash"
+ [ -f "${NEWSSPOOL_DIR}/db/history.n.index" ] && mv -f "${NEWSSPOOL_DIR}/db/history.n.index" "${NEWSSPOOL_DIR}/db/history.index"
+ su - news -c "/usr/lib/news/bin/makehistory"
+ else
+ NEWS_ERRFLAG="1"
+ eerror
+ eerror "Your installation seems to be screwed up."
+ eerror "${NEWSSPOOL_DIR}/db/history does not exist, but there's"
+ eerror "one of the files history.dir, history.hash or history.index"
+ eerror "within ${NEWSSPOOL_DIR}/db."
+ eerror "Use your backup to restore the history database."
+ fi
+ else
+ einfo "${NEWSSPOOL_DIR}/db/history found. Leaving history database as it is."
+ fi
+
+ INNCFG_INODES="`sed -e '/innwatchspoolnodes/ ! d' /etc/news/inn.conf | sed -e 's/[^ ]*[ ]*\([^ ]*\)/\1/'`"
+ INNSPOOL_INODES="`df -Pi ${NEWSSPOOL_DIR} | sed -e 's/[^ ]*[ ]*\([^ ]*\).*/\1/' | sed -e '1 d'`"
+ if [ ${INNCFG_INODES} -gt ${INNSPOOL_INODES} ]
+ then
+ ewarn "Setting innwatchspoolinodes to zero, because the filesystem behind"
+ ewarn "$NEWSSPOOL_DIR works without inodes."
+ ewarn
+ cp /etc/news/inn.conf /etc/news/inn.conf.OLD
+ einfo "A copy of your old inn.conf has been saved to /etc/news/inn.conf.OLD."
+ sed -i -e '/innwatchspoolnodes/ s/\([^ ]*\)\([ ]*\).*/\1\20/' /etc/news/inn.conf
+ chown news:news /etc/news/inn.conf
+ chmod 644 /etc/news/inn.conf
+ fi
+
+ INNCHECK_LINES="`su - news -c "/usr/lib/news/bin/inncheck | wc -l"`"
+ if [ "${INNCHECK_LINES}" -gt 0 ]
+ then
+ NEWS_ERRFLAG="1"
+ ewarn "inncheck most certainly found an error."
+ ewarn "Please check its output:"
+ eerror "`su - news -c /usr/lib/news/bin/inncheck`"
+ fi
+
+ if [ "${NEWS_ERRFLAG}" -gt 0 ]
+ then
+ eerror
+ eerror "There were one or more errors/warnings checking your configuration."
+ eerror "Please read inn's documentation and fix them accordingly."
+ else
+ einfo
+ einfo "Inn configuration tests passed successfully."
+ einfo
+ ewarn "Please ensure you configured inn properly."
+ fi
+}
diff --git a/net-nntp/inn/metadata.xml b/net-nntp/inn/metadata.xml
new file mode 100644
index 000000000000..4d0ebe73a55f
--- /dev/null
+++ b/net-nntp/inn/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>net-news</herd>
+</pkgmetadata>