mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-04-07 03:10:15 -04:00
net-nntp/inn: add 2.7.1
Closes: https://bugs.gentoo.org/840499 Closes: https://bugs.gentoo.org/901343 Signed-off-by: Anna (cybertailor) Vyalkova <cyber+gentoo@sysrq.in>
This commit is contained in:
@@ -1,2 +1,4 @@
|
||||
DIST inn-2.6.5.tar.gz 2646269 BLAKE2B a7ac0016be44480a57a2603494f236d5cbfb40b2056768331b873c7ee4cc9845da7831d6ae0431dbbbc23d44561f8faadce6869a9af8f7b25235b824683814fc SHA512 7200880e179ac10dcb04ed534d2f3119ad4045e912016342e2552e3fc129a2b2d4360615bc03bc9f4e17c440cf07c8017c55f4c17400af140a8bf7b96dc52a2f
|
||||
DIST inn-2.6.5.tar.gz.asc 488 BLAKE2B 1c4899f85831ab40f359097d77c740f343c76542678753b961ff8dafb79c0277a67186163396568623c5af5fc0d1918ce7b1c0c73d936d65120039c2c72dd73a SHA512 f488554d90dcb8a4251113d7a7cc76899616797374e8e9703fffb5dd77ab83870fe6626564fe52ad6fc40b96c8b37f3aec125181008f7c2771a83715eaa06ea2
|
||||
DIST inn-2.7.1.tar.gz 2753330 BLAKE2B 9221a95673359ed146422f1431ceafefba7a043cf0deedc539bc59073704ddc49a273bd3f9980c069ad77b9a8ed18f9ec1aece073de0b78b352775520e0340e3 SHA512 7d2430e5517bf13dd2acf792e376c18af8054ea4a177e5da0bbcaffbb4b89a80ed6528ed5b11a65559e5bf43f8fe40e5f7672582e9713d7b1312c607ea7e2235
|
||||
DIST inn-2.7.1.tar.gz.asc 488 BLAKE2B 733e2649ee4647b6316e427a26595b7558c217df54b0848381a65634f82afb02bb94355fde00673b6fc7b565edaa89efdab1864bf997ca1b13202de6fc5ded53 SHA512 271c4305f1046520626e9c81accb84c1cf47262b270971d2a4159977894e851ae47c99ba19ad26cf9286387d15022c98e187a916dbc6c355f618052078757620
|
||||
|
||||
2
net-nntp/inn/files/inn.tmpfiles-r1
Normal file
2
net-nntp/inn/files/inn.tmpfiles-r1
Normal file
@@ -0,0 +1,2 @@
|
||||
d /run/news 0755 news news -
|
||||
d /var/tmp/news 0755 news news -
|
||||
81
net-nntp/inn/files/innd.initd-r1
Normal file
81
net-nntp/inn/files/innd.initd-r1
Normal file
@@ -0,0 +1,81 @@
|
||||
#!/sbin/openrc-run
|
||||
# Copyright 2022-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
#
|
||||
# Derived from the rc.news shell script.
|
||||
# shellcheck shell=sh
|
||||
|
||||
extra_commands="daily"
|
||||
extra_started_commands="reload"
|
||||
|
||||
description_reload="Reload the INN configuration"
|
||||
description_daily="Perform daily Usenet maintenance tasks"
|
||||
|
||||
command=/opt/inn/bin/innd
|
||||
command_args="${INND_OPTS}"
|
||||
pidfile=/run/news/innd.pid
|
||||
|
||||
depend() {
|
||||
need net
|
||||
use ovsqlite innwatch cnfsstat
|
||||
}
|
||||
|
||||
daily() {
|
||||
ebegin "Executing news.daily"
|
||||
/opt/inn/bin/news.daily ${INND_NEWSDAILY_OPTS}
|
||||
eend $?
|
||||
}
|
||||
|
||||
expirerm() {
|
||||
local rmfile=/var/log/news/expire.rm
|
||||
for f in ${rmfile} ${rmfile}.*; do
|
||||
if [ -s "${f}" ]; then
|
||||
/opt/inn/bin/expirerm "${f}"
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
start_pre() {
|
||||
local active=/var/db/news/active
|
||||
local old_newsdaily=$(find /var/db/news/.news.daily -mtime +1 -print 2>/dev/null)
|
||||
if [ ! -f /var/db/news/.news.daily ] || [ -n "${old_newsdaily}" ]; then
|
||||
daily
|
||||
fi
|
||||
|
||||
if [ -f ${pidfile} ] || [ -f /run/news/.rebuildoverview ] || [ ! -s ${active} ]; then
|
||||
# active needs to be renumbered
|
||||
command_args="${command_args} -r"
|
||||
fi
|
||||
|
||||
# active file recovery
|
||||
if [ ! -s ${active} ]; then
|
||||
if [ -s ${active}.tmp ]; then
|
||||
mv ${active}.tmp ${active} || return 1
|
||||
elif [ -s ${active}.old ]; then
|
||||
cp ${active}.old ${active} || return 1
|
||||
else
|
||||
eerror "${RC_SVCNAME} failed to start: ${active} does not exist"
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
|
||||
# remove temporary batchfiles and lock files
|
||||
rm -f /var/spool/news/outgoing/bch*
|
||||
rm -f /run/news/LOCK*
|
||||
rm -f /run/news/control /run/news/nntpin /run/news/.rebuildoverview
|
||||
|
||||
expirerm
|
||||
}
|
||||
|
||||
stop() {
|
||||
ebegin "Stopping ${RC_SVCNAME}"
|
||||
/opt/inn/bin/ctlinnd throttle "OpenRC service stop"
|
||||
/opt/inn/bin/ctlinnd shutdown "OpenRC service stop"
|
||||
eend $?
|
||||
}
|
||||
|
||||
reload() {
|
||||
ebegin "Reloading innd configuration"
|
||||
/opt/inn/bin/ctlinnd -t 20 reload "" "OpenRC service reload"
|
||||
eend $?
|
||||
}
|
||||
8
net-nntp/inn/files/ovsqlite.initd
Normal file
8
net-nntp/inn/files/ovsqlite.initd
Normal file
@@ -0,0 +1,8 @@
|
||||
#!/sbin/openrc-run
|
||||
# Copyright 2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# shellcheck shell=sh
|
||||
|
||||
command=/opt/inn/bin/ovsqlite-server
|
||||
pidfile=/run/news/ovsqlite.pid
|
||||
143
net-nntp/inn/inn-2.7.1.ebuild
Normal file
143
net-nntp/inn/inn-2.7.1.ebuild
Normal file
@@ -0,0 +1,143 @@
|
||||
# Copyright 2022-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{9..11} )
|
||||
inherit optfeature perl-functions python-single-r1 systemd tmpfiles verify-sig
|
||||
|
||||
DESCRIPTION="InterNetNews - the Internet meets Netnews"
|
||||
HOMEPAGE="
|
||||
https://www.isc.org/othersoftware/#INN
|
||||
https://www.eyrie.org/~eagle/software/inn/
|
||||
https://github.com/InterNetNews/inn
|
||||
"
|
||||
SRC_URI="https://downloads.isc.org/isc/${PN}/${P}.tar.gz
|
||||
verify-sig? ( https://downloads.isc.org/isc/${PN}/${P}.tar.gz.asc )"
|
||||
|
||||
LICENSE="BSD BSD-2 BSD-4 GPL-2+ ISC MIT RSA powell public-domain"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="+bzip2 cancel-locks gzip kerberos low-memory python sasl sqlite ssl test zlib"
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
DEPEND="
|
||||
app-crypt/gnupg
|
||||
dev-lang/perl:=
|
||||
sys-libs/gdbm:=
|
||||
sys-libs/pam
|
||||
virtual/libcrypt:=
|
||||
virtual/mta
|
||||
bzip2? ( app-alternatives/bzip2 )
|
||||
cancel-locks? ( net-libs/canlock:= )
|
||||
gzip? ( app-alternatives/gzip )
|
||||
kerberos? ( virtual/krb5 )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
sasl? ( dev-libs/cyrus-sasl:2 )
|
||||
sqlite? ( dev-db/sqlite:3 )
|
||||
ssl? ( dev-libs/openssl:= )
|
||||
zlib? ( sys-libs/zlib:= )
|
||||
"
|
||||
RDEPEND="${DEPEND}"
|
||||
BDEPEND="
|
||||
app-alternatives/lex
|
||||
app-alternatives/yacc
|
||||
dev-lang/perl
|
||||
virtual/pkgconfig
|
||||
test? ( dev-perl/Test-Pod )
|
||||
verify-sig? ( >=sec-keys/openpgp-keys-russallbery-20230000 )
|
||||
"
|
||||
|
||||
DOCS=( CONTRIBUTORS HACKING INSTALL NEWS README TODO )
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}/usr/share/openpgp-keys/russallbery.asc"
|
||||
|
||||
src_configure() {
|
||||
econf_args=(
|
||||
UUSTAT="${EPREFIX}/usr/bin/uustat"
|
||||
inn_cv_compiler_c__g="no"
|
||||
inn_cv_compiler_c__O3="no"
|
||||
inn_cv_compiler_c__Werror="no"
|
||||
|
||||
--prefix="${EPREFIX}"/opt/${PN}
|
||||
--includedir="${EPREFIX}"/usr/include
|
||||
--sysconfdir="${EPREFIX}"/etc/news
|
||||
|
||||
--with-control-dir="${EPREFIX}"/usr/libexec/inn/control
|
||||
--with-db-dir="${EPREFIX}"/var/db/news
|
||||
--with-doc-dir="${EPREFIX}"/usr/share/doc/${PF}
|
||||
--with-filter-dir="${EPREFIX}"/usr/libexec/inn/filter
|
||||
--with-http-dir="${EPREFIX}"/usr/share/${PN}/http
|
||||
--with-libperl-dir="$(perl_get_vendorlib)"
|
||||
--with-log-dir="${EPREFIX}"/var/log/news
|
||||
--with-run-dir="${EPREFIX}"/run/news
|
||||
--with-spool-dir="${EPREFIX}"/var/spool/news
|
||||
--with-tmp-dir="${EPREFIX}"/var/tmp/news
|
||||
|
||||
$(use_enable !low-memory largefiles)
|
||||
$(use_enable low-memory tagged-hash)
|
||||
$(use_with cancel-locks canlock)
|
||||
$(use_with kerberos krb5)
|
||||
$(use_with python)
|
||||
$(use_with sasl)
|
||||
$(use_with sqlite sqlite3)
|
||||
$(use_with ssl openssl)
|
||||
$(use_with zlib)
|
||||
--disable-hardening-flags
|
||||
--enable-keywords
|
||||
--with-perl
|
||||
--without-bdb # deprecated db
|
||||
--without-blacklist # FreeBSD-only
|
||||
)
|
||||
|
||||
if use bzip2; then
|
||||
econf_args+=( --with-log-compress=bzip2 )
|
||||
elif use gzip; then
|
||||
econf_args+=( --with-log-compress=gzip )
|
||||
else
|
||||
econf_args+=( --with-log-compress=cat )
|
||||
fi
|
||||
|
||||
econf "${econf_args[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
keepdir /var/log/news/OLD
|
||||
keepdir /var/spool/news/{archive,articles,incoming/bad,innfeed,outgoing,overview}
|
||||
|
||||
find "${ED}" -name '*.la' -delete || die
|
||||
rm "${ED}"/usr/share/doc/${PF}/{GPL,LICENSE} || die
|
||||
rm -r "${ED}"/run "${ED}"/var/tmp || die
|
||||
|
||||
if [[ ${REPLACING_VERSIONS} ]]; then
|
||||
rm "${ED}"/var/db/news/* || die
|
||||
fi
|
||||
|
||||
for svc in cnfsstat innwatch; do
|
||||
newinitd "${FILESDIR}"/${svc}.initd ${svc}
|
||||
newconfd "${FILESDIR}"/${svc}.confd ${svc}
|
||||
done
|
||||
newinitd "${FILESDIR}"/innd.initd-r1 innd
|
||||
newconfd "${FILESDIR}"/innd.confd innd
|
||||
|
||||
if use sqlite; then
|
||||
newinitd "${FILESDIR}"/ovsqlite.initd ovsqlite
|
||||
fi
|
||||
|
||||
newtmpfiles "${FILESDIR}"/inn.tmpfiles-r1 inn.conf
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
optfeature "controlchan script" dev-perl/MIME-tools
|
||||
optfeature "innreport script" dev-perl/GD
|
||||
optfeature "send-uucp backend" net-misc/taylor-uucp
|
||||
|
||||
if use sqlite; then
|
||||
optfeature "ovsqlite-util script" dev-perl/DBD-SQLite
|
||||
fi
|
||||
|
||||
tmpfiles_process inn.conf
|
||||
}
|
||||
@@ -21,10 +21,9 @@ separate server, nnrpd, that is spawned for each client. Both innd and nnrpd
|
||||
have some slight variances from the NNTP protocol.
|
||||
</longdescription>
|
||||
<use>
|
||||
<!--flag name="bzip2">Compress logs using bzip2</flag-->
|
||||
<flag name="gzip">Compress logs using gzip</flag>
|
||||
<flag name="keywords">Enable automatic innd keyword generation</flag>
|
||||
<flag name="cancel-locks" restrict=">=net-nntp/inn-2.7.1">Enable Cancel-Lock header functionality</flag>
|
||||
<flag name="keywords" restrict="<net-nntp/inn-2.7.1">Enable automatic innd keyword generation</flag>
|
||||
<flag name="low-memory">Use tagged hash table for history to reduce memory footprint</flag>
|
||||
<flag name="largefile">Support files larger than 2GB</flag>
|
||||
<flag name="largefile" restrict="<net-nntp/inn-2.7.1">Support files larger than 2GB</flag>
|
||||
</use>
|
||||
</pkgmetadata>
|
||||
|
||||
Reference in New Issue
Block a user