diff options
Diffstat (limited to 'app-admin/rsyslog')
-rw-r--r-- | app-admin/rsyslog/Manifest | 8 | ||||
-rw-r--r-- | app-admin/rsyslog/files/rsyslog-8.2112.0-pr5024-configure.patch | 44 | ||||
-rw-r--r-- | app-admin/rsyslog/files/rsyslog.service | 25 | ||||
-rw-r--r-- | app-admin/rsyslog/metadata.xml | 100 | ||||
-rw-r--r-- | app-admin/rsyslog/rsyslog-8.2402.0.ebuild (renamed from app-admin/rsyslog/rsyslog-8.2010.0.ebuild) | 109 | ||||
-rw-r--r-- | app-admin/rsyslog/rsyslog-8.2404.0.ebuild (renamed from app-admin/rsyslog/rsyslog-8.2008.0.ebuild) | 160 |
6 files changed, 302 insertions, 144 deletions
diff --git a/app-admin/rsyslog/Manifest b/app-admin/rsyslog/Manifest index 715dc29474fd..2e797aee8216 100644 --- a/app-admin/rsyslog/Manifest +++ b/app-admin/rsyslog/Manifest @@ -1,4 +1,4 @@ -DIST rsyslog-8.2008.0.tar.gz 3051049 BLAKE2B abf9b7ec81cf62841c448f22c7aff45bc85ea6cdc7552e74295aac752c86380039bb28836e78e35e6eba3d0a062a0ae99ea22ba3d6e978175411a43ec9af6f9a SHA512 a077832de7076ac5e7d4c8f33edd044d0c18fd171a697ef68c1cd0f81f1938b3f008cddc1a61084181de512b643c15004744f0e79e6a44e9d239cec3d35f74fe -DIST rsyslog-8.2010.0.tar.gz 3097606 BLAKE2B 06bfd54edc2126567ff9a460c272583d388a16a4db6f56603c8b9d2dd54bf4fe3b3b402eb4a9523b68e9d3a7602759fad57b35351d7cadab0b7f02771db5c40c SHA512 e3c8ed6b631053e38abfe8ce183a1544d04a0207dc988d36f5141a7ea8c987915f4c0429ccd094b7e374c277b7ee5b50e65e7205c156af01ffe9bdf8338831c8 -DIST rsyslog-doc-8.2008.0.tar.gz 8378149 BLAKE2B 0f6bc116a03821899d33c7960e517725487b89ea2aabc7f5d0fbd4962d82a06558737bcee67af02105006c670ec736eb5ba0b7811b25a1e627a99555121b2999 SHA512 5b8bed19017c65469eb8ea7725ef162595b30f520605f37447498ab69b5cfe8f939cee7e7915ecbf3c025871408fd7af6d45ba960a83096f83a397df4cefef09 -DIST rsyslog-doc-8.2010.0.tar.gz 8428326 BLAKE2B ee8eb2bdbb1f6c7122559b63ddc1ae6ac7fbfb23d661410feb39d7ddce332851e785bb447fb67dd2de8ff62e91fe865fbf7dec8bf62d7fe51181e3c6bbbe64db SHA512 072fb05a0117dc0970a4e5e302abbaf5dc065c2a0962c4160e7efb86fedad89a2caa546cd2bf4af07b7f5e2fa5267cf02889d911f7a6916725e6aea1760ab253 +DIST rsyslog-8.2402.0.tar.gz 3404026 BLAKE2B fc33244f0e4699d446ffab19aa8078ac49518b1722a5d7e72e57d7768ef42565bc3fa54b6c594e857715b5d5439ef675811eee888c81aadec3d1e05d5416c51e SHA512 dea9a14abc6ea25b3e5b676eda6a772c0c6266afd95eea0446ea85b29b2f98c058e1495cbdc16dba1c78d5d0919980e4fdfc13ef597082e7f3bf8b6be4cb5723 +DIST rsyslog-8.2404.0.tar.gz 3408657 BLAKE2B 67170f1ba4ad61bd79088a313ee9b093ecaab512ce24ca56cfe605d4589276406abe593d791736ecb7b2f44be998b3836173272eb5dd69f7bc9ea8d5b49d462e SHA512 fda8032ab7f9cb6c46693edeb95d2b47ab7673836ff44d0686bbbd5a3759885f65a80e1a311c809c2332a19559b0297ac7d8e59e5f828372839f67dbf362e6b1 +DIST rsyslog-doc-8.2402.0.tar.gz 6525910 BLAKE2B 20bc3398db00cc2a0e92b610032cb86bcf17b71b31f70a47213b608c7ea9a1a81e9aad5caa74b7f23f0a28fdab7ef3627ec89f5910d535ac1ade5408b3300939 SHA512 dfffb6138cff6121020648c7ed20cec7c881020af956295f88ea297c3198ed6dd49a7fbcb651164c6a774520391d00743a3c34c7acc5f705b668c8048c289eea +DIST rsyslog-doc-8.2404.0.tar.gz 6568723 BLAKE2B 4bc522f9146754a9ebae5f5f7ffb87cfa2da3d9b0832b902c73896d788a061ad4b99cd269b4fb8fc42917311ea5621dfd398428046c53883e9bba859252172ec SHA512 ea88fcf81fb45be515f1b8e7699efabba98eb7e5fcd2d5046424c303db95926a36baa1215143c05e39b9a86dcfdbc73c5c3a76dee382d7b8f1916653169df264 diff --git a/app-admin/rsyslog/files/rsyslog-8.2112.0-pr5024-configure.patch b/app-admin/rsyslog/files/rsyslog-8.2112.0-pr5024-configure.patch new file mode 100644 index 000000000000..eae9fbc4d024 --- /dev/null +++ b/app-admin/rsyslog/files/rsyslog-8.2112.0-pr5024-configure.patch @@ -0,0 +1,44 @@ +From e3c750b98564bc66b50ae35e91f5222c441f8b75 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Maciej=20Bar=C4=87?= <xgqt@gentoo.org> +Date: Wed, 16 Nov 2022 15:17:31 +0100 +Subject: [PATCH] configure.ac: remove bashisms +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +replace [[ ]] with test and == with = + +Signed-off-by: Maciej Barć <xgqt@gentoo.org> +--- + configure.ac | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 3a43681d72..6e66ec904b 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1138,13 +1138,13 @@ AC_ARG_ENABLE(gnutls-tests, + no) enable_gnutls_tests="no" ;; + *) AC_MSG_ERROR(bad value ${enableval} for --enable-gnutls-tests) ;; + esac], +- [if [[ "$enable_gnutls" == "yes" ]]; then ++ [if test "x$enable_gnutls" = "xyes"; then + enable_gnutls_tests=yes + else + enable_gnutls_tests=no + fi] + ) +-if [[ "$enable_gnutls_tests" == "yes" ]] && [[ "$enable_gnutls" != "yes" ]]; then ++if test "x$enable_gnutls_tests" = "xyes" && test "x$enable_gnutls" != "xyes"; then + AC_MSG_WARN([gnutls-tests can not be enabled without gnutls support. Disabling gnutls tests...]) + enable_gnutls_tests="no" + fi +@@ -1852,7 +1852,7 @@ AC_ARG_ENABLE(imfile-tests, + esac], + [enable_imfile_tests=yes] + ) +-if [[ "$enable_imfile_tests" == "yes" ]] && [[ "$enable_imfile" != "yes" ]]; then ++if test "x$enable_imfile_tests" = "xyes" && test "x$enable_imfile" != "xyes"; then + AC_MSG_WARN([imfile-tests can not be enabled without imfile support. Disabling imfile tests...]) + enable_imfile_tests="no" + fi diff --git a/app-admin/rsyslog/files/rsyslog.service b/app-admin/rsyslog/files/rsyslog.service new file mode 100644 index 000000000000..8af064d2cefc --- /dev/null +++ b/app-admin/rsyslog/files/rsyslog.service @@ -0,0 +1,25 @@ +[Unit] +Description=System Logging Service +;Requires=syslog.socket +Conflicts=syslog-ng.service syslogd.service +Documentation=man:rsyslogd(8) +Documentation=man:rsyslog.conf(5) +Documentation=https://www.rsyslog.com/doc/ + +[Service] +Type=notify +Environment=RSYSLOGD_PARAMS= +EnvironmentFile=-/etc/default/rsyslog +ExecStart=/usr/sbin/rsyslogd -n -iNONE $RSYSLOGD_PARAMS +ExecReload=/bin/kill -HUP $MAINPID +UMask=0066 +StandardOutput=null +Restart=on-failure + +# Increase the default a bit in order to allow many simultaneous +# files to be monitored, we might need a lot of fds. +LimitNOFILE=16384 + +[Install] +WantedBy=multi-user.target +Alias=syslog.service diff --git a/app-admin/rsyslog/metadata.xml b/app-admin/rsyslog/metadata.xml index 8edddd33ee54..7a2ccda8e2a1 100644 --- a/app-admin/rsyslog/metadata.xml +++ b/app-admin/rsyslog/metadata.xml @@ -1,47 +1,59 @@ <?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> + <pkgmetadata> - <maintainer type="person"> - <email>whissi@gentoo.org</email> - <name>Thomas Deutschmann</name> - </maintainer> - <use> - <flag name="clickhouse">Build the ClickHouse output module (requires <pkg>net-misc/curl</pkg>)</flag> - <flag name="curl">Enable http_request() function in RainerScript (requires <pkg>net-misc/curl</pkg>)</flag> - <flag name="dbi">Build the general database output module (requires <pkg>dev-db/libdbi</pkg>)</flag> - <flag name="elasticsearch">Build the Elasticsearch output module (requires <pkg>net-misc/curl</pkg>)</flag> - <flag name="gcrypt">Add support for encrypted log files using <pkg>dev-libs/libgcrypt</pkg></flag> - <flag name="gnutls">Build the GnuTLS network stream driver (requires <pkg>net-libs/gnutls</pkg>)</flag> - <flag name="imhttp">Build the http input module (requires <pkg>www-servers/civetweb</pkg>)</flag> - <flag name="impcap">Build the pcap input module (requires <pkg>net-libs/libpcap</pkg>)</flag> - <flag name="kafka">Build the Apache Kafka input/output module (requires <pkg>dev-libs/librdkafka</pkg>)</flag> - <flag name="kerberos">Build the GSSAPI input and output module (requires <pkg>virtual/krb5</pkg>)</flag> - <flag name="kubernetes">Build the kubernetes modify plugin (requires <pkg>net-misc/curl</pkg>)</flag> - <flag name="libressl">Use <pkg>dev-libs/libressl</pkg> instead of <pkg>dev-libs/openssl</pkg> (you still need to enable functionality which requires OpenSSL)</flag> - <flag name="mdblookup">Build the MaxMind DB lookup message modify plugin using <pkg>dev-libs/libmaxminddb</pkg></flag> - <flag name="mongodb">Build the MongoDB output module (requires <pkg>dev-libs/mongo-c-driver</pkg>)</flag> - <flag name="mysql">Build the MySQL database output module (requires <pkg>virtual/mysql</pkg>)</flag> - <flag name="normalize">Build the normalize modify module (requires <pkg>dev-libs/libee</pkg> and <pkg>dev-libs/liblognorm</pkg>)</flag> - <flag name="omhttp">Build the http output module (requires <pkg>net-misc/curl</pkg>)</flag> - <flag name="omhttpfs">Build the httpfs output module (requires <pkg>net-misc/curl</pkg>)</flag> - <flag name="omudpspoof">Build the udpspoof output module (requires <pkg>net-libs/libnet</pkg>)</flag> - <flag name="openssl">Build the OpenSSL network stream driver (requires <pkg>dev-libs/openssl</pkg>)</flag> - <flag name="postgres">Build the PostgreSQL database output module (requires <pkg>dev-db/postgresql</pkg>)</flag> - <flag name="rabbitmq">Build the RabbitMQ output module (requires <pkg>net-libs/rabbitmq-c</pkg>)</flag> - <flag name="redis">Build the Redis output module using (requires <pkg>dev-libs/hiredis</pkg>)</flag> - <flag name="relp">Build the Reliable Event Logging Protocol (RELP) output module (requires <pkg>dev-libs/librelp</pkg>)</flag> - <flag name="rfc3195">Build the rfc3195 input module (requires <pkg>dev-libs/liblogging</pkg>)</flag> - <flag name="rfc5424hmac">Build the rfc5424hmac modify module (requires <pkg>dev-libs/openssl</pkg> or <pkg>dev-libs/libressl</pkg>)</flag> - <flag name="snmp">Build the snmp modify and output module (requires <pkg>net-analyzer/net-snmp</pkg>)</flag> - <flag name="ssl">Add support for encrypted client/server communication (requires <pkg>net-libs/gnutls</pkg>)</flag> - <flag name="systemd">Build the journal input and output module (requires <pkg>sys-apps/systemd</pkg>)</flag> - <flag name="uuid">Include UUIDs in messages (requires <pkg>sys-apps/util-linux</pkg>)</flag> - <flag name="usertools">Installs the user tools (rsgtutil, rscryutil...) corresponding to the set USE flags</flag> - <flag name="xxhash">Enable xxHash support in fmhash module (requires <pkg>dev-libs/xxhash</pkg>)</flag> - <flag name="zeromq">Build the ZeroMQ input and output modules (requires <pkg>net-libs/czmq</pkg>)</flag> - </use> - <upstream> - <bugs-to>https://github.com/rsyslog/rsyslog/issues</bugs-to> - <remote-id type="cpe">cpe:/a:rsyslog:rsyslog</remote-id> - </upstream> + <maintainer type="person"> + <email>xgqt@gentoo.org</email> + <name>Maciej Barć</name> + </maintainer> + <longdescription> + Rsyslog is a rocket-fast system for log processing. It offers + high-performance, great security features and a modular design. While it + started as a regular syslogd, rsyslog has evolved into a kind of swiss army + knife of logging, being able to accept inputs from a wide variety of + sources, transform them, and output to the results to diverse destinations. + Rsyslog can deliver over one million messages per second to local + destinations when limited processing is applied (based on v7, December + 2013). Even with remote destinations and more elaborate processing the + performance is usually considered "stunning". + </longdescription> + <use> + <flag name="clickhouse">Build the ClickHouse output module (requires <pkg>net-misc/curl</pkg>)</flag> + <flag name="curl">Enable http_request() function in RainerScript (requires <pkg>net-misc/curl</pkg>)</flag> + <flag name="dbi">Build the general database output module (requires <pkg>dev-db/libdbi</pkg>)</flag> + <flag name="elasticsearch">Build the Elasticsearch output module (requires <pkg>net-misc/curl</pkg>)</flag> + <flag name="gcrypt">Add support for encrypted log files using <pkg>dev-libs/libgcrypt</pkg></flag> + <flag name="gnutls">Build the GnuTLS network stream driver (requires <pkg>net-libs/gnutls</pkg>)</flag> + <flag name="imhttp">Build the http input module (requires <pkg>www-servers/civetweb</pkg>)</flag> + <flag name="impcap">Build the pcap input module (requires <pkg>net-libs/libpcap</pkg>)</flag> + <flag name="kafka">Build the Apache Kafka input/output module (requires <pkg>dev-libs/librdkafka</pkg>)</flag> + <flag name="kerberos">Build the GSSAPI input and output module (requires <pkg>virtual/krb5</pkg>)</flag> + <flag name="kubernetes">Build the kubernetes modify plugin (requires <pkg>net-misc/curl</pkg>)</flag> + <flag name="mdblookup">Build the MaxMind DB lookup message modify plugin using <pkg>dev-libs/libmaxminddb</pkg></flag> + <flag name="mongodb">Build the MongoDB output module (requires <pkg>dev-libs/mongo-c-driver</pkg>)</flag> + <flag name="mysql">Build the MySQL database output module (requires <pkg>virtual/mysql</pkg>)</flag> + <flag name="normalize">Build the normalize modify module (requires <pkg>dev-libs/libee</pkg> and <pkg>dev-libs/liblognorm</pkg>)</flag> + <flag name="omhttp">Build the http output module (requires <pkg>net-misc/curl</pkg>)</flag> + <flag name="omhttpfs">Build the httpfs output module (requires <pkg>net-misc/curl</pkg>)</flag> + <flag name="omudpspoof">Build the udpspoof output module (requires <pkg>net-libs/libnet</pkg>)</flag> + <flag name="openssl">Build the OpenSSL network stream driver (requires <pkg>dev-libs/openssl</pkg>)</flag> + <flag name="postgres">Build the PostgreSQL database output module (requires <pkg>dev-db/postgresql</pkg>)</flag> + <flag name="rabbitmq">Build the RabbitMQ output module (requires <pkg>net-libs/rabbitmq-c</pkg>)</flag> + <flag name="redis">Build the Redis output module using (requires <pkg>dev-libs/hiredis</pkg>)</flag> + <flag name="relp">Build the Reliable Event Logging Protocol (RELP) output module (requires <pkg>dev-libs/librelp</pkg>)</flag> + <flag name="rfc3195">Build the rfc3195 input module (requires <pkg>dev-libs/liblogging</pkg>)</flag> + <flag name="rfc5424hmac">Build the rfc5424hmac modify module (requires <pkg>dev-libs/openssl</pkg>)</flag> + <flag name="snmp">Build the snmp modify and output module (requires <pkg>net-analyzer/net-snmp</pkg>)</flag> + <flag name="ssl">Add support for encrypted client/server communication (requires <pkg>net-libs/gnutls</pkg>)</flag> + <flag name="systemd">Build the journal input and output module (requires <pkg>sys-apps/systemd</pkg>)</flag> + <flag name="uuid">Include UUIDs in messages (requires <pkg>sys-apps/util-linux</pkg>)</flag> + <flag name="usertools">Installs the user tools (rsgtutil, rscryutil...) corresponding to the set USE flags</flag> + <flag name="xxhash">Enable xxHash support in fmhash module (requires <pkg>dev-libs/xxhash</pkg>)</flag> + <flag name="zeromq">Build the ZeroMQ input and output modules (requires <pkg>net-libs/czmq</pkg>)</flag> + </use> + <upstream> + <bugs-to>https://github.com/rsyslog/rsyslog/issues/</bugs-to> + <remote-id type="cpe">cpe:/a:rsyslog:rsyslog</remote-id> + <remote-id type="github">rsyslog/rsyslog</remote-id> + </upstream> </pkgmetadata> diff --git a/app-admin/rsyslog/rsyslog-8.2010.0.ebuild b/app-admin/rsyslog/rsyslog-8.2402.0.ebuild index 6ab89acda633..95315d04e1e0 100644 --- a/app-admin/rsyslog/rsyslog-8.2010.0.ebuild +++ b/app-admin/rsyslog/rsyslog-8.2402.0.ebuild @@ -1,34 +1,37 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI="7" -PYTHON_COMPAT=( python3_{6..9} ) +EAPI=8 + +PYTHON_COMPAT=( python3_{10..12} ) inherit autotools linux-info python-any-r1 systemd DESCRIPTION="An enhanced multi-threaded syslogd with database support and more" -HOMEPAGE="https://www.rsyslog.com/" +HOMEPAGE="https://www.rsyslog.com/ + https://github.com/rsyslog/rsyslog/" -if [[ ${PV} == "9999" ]]; then +if [[ "${PV}" == *9999* ]]; then EGIT_REPO_URI="https://github.com/rsyslog/${PN}.git" - DOC_REPO_URI="https://github.com/rsyslog/${PN}-doc.git" inherit git-r3 else - KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~x86" - SRC_URI=" https://www.rsyslog.com/files/download/${PN}/${P}.tar.gz - doc? ( https://www.rsyslog.com/files/download/${PN}/${PN}-doc-${PV}.tar.gz ) + doc? ( + https://www.rsyslog.com/files/download/${PN}/${PN}-doc-${PV}.tar.gz + ) " + + KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~ppc64 ~riscv ~sparc x86" fi LICENSE="GPL-3 LGPL-3 Apache-2.0" SLOT="0" IUSE="clickhouse curl dbi debug doc elasticsearch +gcrypt gnutls imhttp" -IUSE+=" impcap jemalloc kafka kerberos kubernetes libressl mdblookup" +IUSE+=" impcap jemalloc kafka kerberos kubernetes mdblookup" IUSE+=" mongodb mysql normalize omhttp omhttpfs omudpspoof +openssl" IUSE+=" postgres rabbitmq redis relp rfc3195 rfc5424hmac snmp +ssl" IUSE+=" systemd test usertools +uuid xxhash zeromq" @@ -40,9 +43,9 @@ REQUIRED_USE=" ssl? ( || ( gnutls openssl ) ) " -BDEPEND=">=sys-devel/autoconf-archive-2015.02.24 +BDEPEND=">=dev-build/autoconf-archive-2015.02.24 + sys-apps/lsb-release virtual/pkgconfig - elibc_musl? ( sys-libs/queue-standalone ) test? ( jemalloc? ( <sys-libs/libfaketime-0.9.7 ) !jemalloc? ( sys-libs/libfaketime ) @@ -57,7 +60,11 @@ RDEPEND=" dbi? ( >=dev-db/libdbi-0.8.3 ) elasticsearch? ( >=net-misc/curl-7.35.0 ) gcrypt? ( >=dev-libs/libgcrypt-1.5.3:= ) - imhttp? ( www-servers/civetweb ) + imhttp? ( + dev-libs/apr-util + www-servers/civetweb + virtual/libcrypt:= + ) impcap? ( net-libs/libpcap ) jemalloc? ( >=dev-libs/jemalloc-3.3.1:= ) kafka? ( >=dev-libs/librdkafka-0.9.0.99:= ) @@ -74,19 +81,20 @@ RDEPEND=" omudpspoof? ( >=net-libs/libnet-1.1.6 ) postgres? ( >=dev-db/postgresql-8.4.20:= ) rabbitmq? ( >=net-libs/rabbitmq-c-0.3.0:= ) - redis? ( >=dev-libs/hiredis-0.11.0:= ) + redis? ( + >=dev-libs/hiredis-0.11.0:= + dev-libs/libevent[threads(+)] + ) relp? ( >=dev-libs/librelp-1.2.17:= ) rfc3195? ( >=dev-libs/liblogging-1.0.1:=[rfc3195] ) rfc5424hmac? ( - !libressl? ( >=dev-libs/openssl-0.9.8y:0= ) - libressl? ( dev-libs/libressl:= ) + >=dev-libs/openssl-0.9.8y:0= ) snmp? ( >=net-analyzer/net-snmp-5.7.2 ) ssl? ( gnutls? ( >=net-libs/gnutls-2.12.23:0= ) openssl? ( - !libressl? ( dev-libs/openssl:0= ) - libressl? ( dev-libs/libressl:0= ) + dev-libs/openssl:0= ) ) systemd? ( >=sys-apps/systemd-234 ) @@ -95,39 +103,43 @@ RDEPEND=" zeromq? ( >=net-libs/czmq-4:=[drafts] )" -DEPEND="${RDEPEND} - test? ( - >=dev-libs/liblogging-1.0.1[stdlog] - )" -if [[ ${PV} == "9999" ]]; then +DEPEND=" + ${RDEPEND} + elibc_musl? ( sys-libs/queue-standalone ) +" + +if [[ "${PV}" == "9999" ]]; then BDEPEND+=" doc? ( >=dev-python/sphinx-1.1.3-r7 )" - BDEPEND+=" >=sys-devel/flex-2.5.39-r1" - BDEPEND+=" >=sys-devel/bison-2.4.3" + BDEPEND+=" >=app-alternatives/lex-2.5.39-r1" + BDEPEND+=" >=app-alternatives/yacc-2.4.3" BDEPEND+=" >=dev-python/docutils-0.12" fi CONFIG_CHECK="~INOTIFY_USER" WARNING_INOTIFY_USER="CONFIG_INOTIFY_USER isn't set. Imfile module on this system will only support polling mode!" +PATCHES=( "${FILESDIR}/${PN}-8.2112.0-pr5024-configure.patch" ) + pkg_setup() { use test && python-any-r1_pkg_setup } src_unpack() { - if [[ ${PV} == "9999" ]]; then + if [[ "${PV}" == "9999" ]]; then git-r3_fetch git-r3_checkout else - unpack ${P}.tar.gz + unpack "${P}.tar.gz" fi if use doc; then - if [[ ${PV} == "9999" ]]; then + if [[ "${PV}" == "9999" ]]; then local _EGIT_BRANCH= if [[ -n "${EGIT_BRANCH}" ]]; then # Cannot use rsyslog commits/branches for documentation repository - _EGIT_BRANCH=${EGIT_BRANCH} + _EGIT_BRANCH="${EGIT_BRANCH}" + unset EGIT_BRANCH fi @@ -142,7 +154,8 @@ src_unpack() { cd "${S}" || die "Cannot change dir into '${S}'" mkdir docs || die "Failed to create docs directory" cd docs || die "Failed to change dir into '${S}/docs'" - unpack ${PN}-doc-${PV}.tar.gz + + unpack "${PN}-doc-${PV}.tar.gz" fi fi } @@ -150,11 +163,21 @@ src_unpack() { src_prepare() { default - # https://github.com/rsyslog/rsyslog/issues/3626 + # Bug: https://github.com/rsyslog/rsyslog/issues/3626 sed -i \ -e '\|^#!/bin/bash$|a exit 77' \ tests/mmkubernetes-cache-expir*.sh \ - || die "Failed to disabled known test failure mmkubernetes-cache-expir*.sh" + || die "Failed to disable known test failure mmkubernetes-cache-expir*.sh" + + sed -i \ + -e '\|^#!/bin/bash$|a exit 0' \ + tests/omprog-close-unresponsive*.sh \ + || die "Failed to disable test omprog-close-unresponsive*.sh" + + sed -i \ + -e '\|^#!/bin/bash$|a exit 0' \ + tests/uxsock_simple.sh \ + || die "Failed to disable test uxsock_simple.sh" eautoreconf } @@ -170,27 +193,29 @@ src_configure() { # upstream PR 129 and 136) so we need to export HIREDIS_* # variables because rsyslog's build system depends on pkg-config. - if use redis; then + if use redis ; then export HIREDIS_LIBS="-L${EPREFIX}/usr/$(get_libdir) -lhiredis" export HIREDIS_CFLAGS="-I${EPREFIX}/usr/include" fi - local myeconfargs=( + local -a myeconfargs=( --disable-debug-symbols --disable-generate-man-pages --without-valgrind-testbench --disable-liblogging-stdlog + --disable-imfile-tests # Some imfile tests fail (noticed in version 8.2208.0) $(use_enable test testbench) $(use_enable test libfaketime) $(use_enable test extended-tests) - # Input Plugins without depedencies + # Input Plugins without dependencies --enable-imbatchreport --enable-imdiag + --enable-imdocker --enable-imfile --enable-improg --enable-impstats --enable-imptcp - # Message Modificiation Plugins without depedencies + # Message Modificiation Plugins without dependencies --enable-mmanon --enable-mmaudit --enable-mmcount @@ -209,6 +234,7 @@ src_configure() { --enable-omuxsock # Misc --enable-fmhash + --enable-fmunflatten $(use_enable xxhash fmhash-xxhash) --enable-pmaixforwardedfrom --enable-pmciscoios @@ -224,6 +250,7 @@ src_configure() { $(use_enable mongodb ommongodb) $(use_enable mysql) $(use_enable postgres pgsql) + $(use_enable redis imhiredis) $(use_enable redis omhiredis) # Debug $(use_enable debug) @@ -260,7 +287,6 @@ src_configure() { $(use_enable uuid) $(use_enable zeromq imczmq) $(use_enable zeromq omczmq) - --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" ) econf "${myeconfargs[@]}" @@ -305,19 +331,21 @@ src_test() { } src_install() { - local DOCS=( + local -a DOCS=( AUTHORS ChangeLog "${FILESDIR}"/README.gentoo ) - use doc && local HTML_DOCS=( "${S}/docs/build/." ) + use doc && local -a HTML_DOCS=( "${S}/docs/build/." ) default newconfd "${FILESDIR}/${PN}.confd-r1" ${PN} newinitd "${FILESDIR}/${PN}.initd-r1" ${PN} + systemd_newunit "${FILESDIR}/${PN}.service" ${PN}.service + keepdir /var/empty/dev keepdir /var/spool/${PN} keepdir /etc/ssl/${PN} @@ -382,9 +410,10 @@ pkg_postinst() { } pkg_config() { - if ! use ssl; then + if ! use ssl ; then einfo "There is nothing to configure for rsyslog unless you" einfo "used USE=ssl to build it." + return 0 fi diff --git a/app-admin/rsyslog/rsyslog-8.2008.0.ebuild b/app-admin/rsyslog/rsyslog-8.2404.0.ebuild index 47e5c00aea72..95315d04e1e0 100644 --- a/app-admin/rsyslog/rsyslog-8.2008.0.ebuild +++ b/app-admin/rsyslog/rsyslog-8.2404.0.ebuild @@ -1,36 +1,57 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI="6" -PYTHON_COMPAT=( python{3_6,3_7,3_8} ) +EAPI=8 -inherit autotools eutils linux-info ltprune python-any-r1 systemd +PYTHON_COMPAT=( python3_{10..12} ) + +inherit autotools linux-info python-any-r1 systemd DESCRIPTION="An enhanced multi-threaded syslogd with database support and more" -HOMEPAGE="https://www.rsyslog.com/" +HOMEPAGE="https://www.rsyslog.com/ + https://github.com/rsyslog/rsyslog/" -if [[ ${PV} == "9999" ]]; then +if [[ "${PV}" == *9999* ]]; then EGIT_REPO_URI="https://github.com/rsyslog/${PN}.git" - DOC_REPO_URI="https://github.com/rsyslog/${PN}-doc.git" inherit git-r3 else - KEYWORDS="amd64 arm ~arm64 ~hppa x86" - SRC_URI=" https://www.rsyslog.com/files/download/${PN}/${P}.tar.gz - doc? ( https://www.rsyslog.com/files/download/${PN}/${PN}-doc-${PV}.tar.gz ) + doc? ( + https://www.rsyslog.com/files/download/${PN}/${PN}-doc-${PV}.tar.gz + ) " + + KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~ppc64 ~riscv ~sparc x86" fi LICENSE="GPL-3 LGPL-3 Apache-2.0" SLOT="0" -IUSE="curl dbi debug doc elasticsearch +gcrypt gnutls jemalloc kafka kerberos kubernetes libressl mdblookup" -IUSE+=" mongodb mysql normalize clickhouse omhttp omhttpfs omudpspoof openssl postgres" -IUSE+=" rabbitmq redis relp rfc3195 rfc5424hmac snmp ssl systemd test usertools +uuid xxhash zeromq" + +IUSE="clickhouse curl dbi debug doc elasticsearch +gcrypt gnutls imhttp" +IUSE+=" impcap jemalloc kafka kerberos kubernetes mdblookup" +IUSE+=" mongodb mysql normalize omhttp omhttpfs omudpspoof +openssl" +IUSE+=" postgres rabbitmq redis relp rfc3195 rfc5424hmac snmp +ssl" +IUSE+=" systemd test usertools +uuid xxhash zeromq" + RESTRICT="!test? ( test )" +REQUIRED_USE=" + kubernetes? ( normalize ) + ssl? ( || ( gnutls openssl ) ) +" + +BDEPEND=">=dev-build/autoconf-archive-2015.02.24 + sys-apps/lsb-release + virtual/pkgconfig + test? ( + jemalloc? ( <sys-libs/libfaketime-0.9.7 ) + !jemalloc? ( sys-libs/libfaketime ) + ${PYTHON_DEPS} + )" + RDEPEND=" >=dev-libs/libfastjson-0.99.8:= >=dev-libs/libestr-0.1.9 @@ -39,6 +60,12 @@ RDEPEND=" dbi? ( >=dev-db/libdbi-0.8.3 ) elasticsearch? ( >=net-misc/curl-7.35.0 ) gcrypt? ( >=dev-libs/libgcrypt-1.5.3:= ) + imhttp? ( + dev-libs/apr-util + www-servers/civetweb + virtual/libcrypt:= + ) + impcap? ( net-libs/libpcap ) jemalloc? ( >=dev-libs/jemalloc-3.3.1:= ) kafka? ( >=dev-libs/librdkafka-0.9.0.99:= ) kerberos? ( virtual/krb5 ) @@ -54,19 +81,20 @@ RDEPEND=" omudpspoof? ( >=net-libs/libnet-1.1.6 ) postgres? ( >=dev-db/postgresql-8.4.20:= ) rabbitmq? ( >=net-libs/rabbitmq-c-0.3.0:= ) - redis? ( >=dev-libs/hiredis-0.11.0:= ) + redis? ( + >=dev-libs/hiredis-0.11.0:= + dev-libs/libevent[threads(+)] + ) relp? ( >=dev-libs/librelp-1.2.17:= ) rfc3195? ( >=dev-libs/liblogging-1.0.1:=[rfc3195] ) rfc5424hmac? ( - !libressl? ( >=dev-libs/openssl-0.9.8y:0= ) - libressl? ( dev-libs/libressl:= ) + >=dev-libs/openssl-0.9.8y:0= ) snmp? ( >=net-analyzer/net-snmp-5.7.2 ) ssl? ( gnutls? ( >=net-libs/gnutls-2.12.23:0= ) openssl? ( - !libressl? ( dev-libs/openssl:0= ) - libressl? ( dev-libs/libressl:0= ) + dev-libs/openssl:0= ) ) systemd? ( >=sys-apps/systemd-234 ) @@ -75,50 +103,43 @@ RDEPEND=" zeromq? ( >=net-libs/czmq-4:=[drafts] )" -DEPEND="${RDEPEND} - >=sys-devel/autoconf-archive-2015.02.24 - virtual/pkgconfig - elibc_musl? ( sys-libs/queue-standalone ) - test? ( - >=dev-libs/liblogging-1.0.1[stdlog] - jemalloc? ( <sys-libs/libfaketime-0.9.7 ) - !jemalloc? ( sys-libs/libfaketime ) - ${PYTHON_DEPS} - )" -REQUIRED_USE=" - kubernetes? ( normalize ) - ssl? ( || ( gnutls openssl ) ) +DEPEND=" + ${RDEPEND} + elibc_musl? ( sys-libs/queue-standalone ) " -if [[ ${PV} == "9999" ]]; then - DEPEND+=" doc? ( >=dev-python/sphinx-1.1.3-r7 )" - DEPEND+=" >=sys-devel/flex-2.5.39-r1" - DEPEND+=" >=sys-devel/bison-2.4.3" - DEPEND+=" >=dev-python/docutils-0.12" +if [[ "${PV}" == "9999" ]]; then + BDEPEND+=" doc? ( >=dev-python/sphinx-1.1.3-r7 )" + BDEPEND+=" >=app-alternatives/lex-2.5.39-r1" + BDEPEND+=" >=app-alternatives/yacc-2.4.3" + BDEPEND+=" >=dev-python/docutils-0.12" fi CONFIG_CHECK="~INOTIFY_USER" WARNING_INOTIFY_USER="CONFIG_INOTIFY_USER isn't set. Imfile module on this system will only support polling mode!" +PATCHES=( "${FILESDIR}/${PN}-8.2112.0-pr5024-configure.patch" ) + pkg_setup() { use test && python-any-r1_pkg_setup } src_unpack() { - if [[ ${PV} == "9999" ]]; then + if [[ "${PV}" == "9999" ]]; then git-r3_fetch git-r3_checkout else - unpack ${P}.tar.gz + unpack "${P}.tar.gz" fi if use doc; then - if [[ ${PV} == "9999" ]]; then + if [[ "${PV}" == "9999" ]]; then local _EGIT_BRANCH= if [[ -n "${EGIT_BRANCH}" ]]; then # Cannot use rsyslog commits/branches for documentation repository - _EGIT_BRANCH=${EGIT_BRANCH} + _EGIT_BRANCH="${EGIT_BRANCH}" + unset EGIT_BRANCH fi @@ -133,7 +154,8 @@ src_unpack() { cd "${S}" || die "Cannot change dir into '${S}'" mkdir docs || die "Failed to create docs directory" cd docs || die "Failed to change dir into '${S}/docs'" - unpack ${PN}-doc-${PV}.tar.gz + + unpack "${PN}-doc-${PV}.tar.gz" fi fi } @@ -141,11 +163,21 @@ src_unpack() { src_prepare() { default - # https://github.com/rsyslog/rsyslog/issues/3626 + # Bug: https://github.com/rsyslog/rsyslog/issues/3626 sed -i \ -e '\|^#!/bin/bash$|a exit 77' \ tests/mmkubernetes-cache-expir*.sh \ - || die "Failed to disabled known test failure mmkubernetes-cache-expir*.sh" + || die "Failed to disable known test failure mmkubernetes-cache-expir*.sh" + + sed -i \ + -e '\|^#!/bin/bash$|a exit 0' \ + tests/omprog-close-unresponsive*.sh \ + || die "Failed to disable test omprog-close-unresponsive*.sh" + + sed -i \ + -e '\|^#!/bin/bash$|a exit 0' \ + tests/uxsock_simple.sh \ + || die "Failed to disable test uxsock_simple.sh" eautoreconf } @@ -161,25 +193,29 @@ src_configure() { # upstream PR 129 and 136) so we need to export HIREDIS_* # variables because rsyslog's build system depends on pkg-config. - if use redis; then + if use redis ; then export HIREDIS_LIBS="-L${EPREFIX}/usr/$(get_libdir) -lhiredis" export HIREDIS_CFLAGS="-I${EPREFIX}/usr/include" fi - local myeconfargs=( + local -a myeconfargs=( --disable-debug-symbols --disable-generate-man-pages --without-valgrind-testbench --disable-liblogging-stdlog + --disable-imfile-tests # Some imfile tests fail (noticed in version 8.2208.0) $(use_enable test testbench) $(use_enable test libfaketime) $(use_enable test extended-tests) - # Input Plugins without depedencies + # Input Plugins without dependencies + --enable-imbatchreport --enable-imdiag + --enable-imdocker --enable-imfile + --enable-improg --enable-impstats --enable-imptcp - # Message Modificiation Plugins without depedencies + # Message Modificiation Plugins without dependencies --enable-mmanon --enable-mmaudit --enable-mmcount @@ -188,6 +224,7 @@ src_configure() { --enable-mmpstrucdata --enable-mmrm1stspace --enable-mmsequence + --enable-mmtaghostname --enable-mmutf8fix # Output Modification Plugins without dependencies --enable-mail @@ -197,10 +234,12 @@ src_configure() { --enable-omuxsock # Misc --enable-fmhash + --enable-fmunflatten $(use_enable xxhash fmhash-xxhash) --enable-pmaixforwardedfrom --enable-pmciscoios --enable-pmcisconames + --enable-pmdb2diag --enable-pmlastmsg $(use_enable normalize pmnormalize) --enable-pmnull @@ -211,6 +250,7 @@ src_configure() { $(use_enable mongodb ommongodb) $(use_enable mysql) $(use_enable postgres pgsql) + $(use_enable redis imhiredis) $(use_enable redis omhiredis) # Debug $(use_enable debug) @@ -221,6 +261,8 @@ src_configure() { $(use_enable curl fmhttp) $(use_enable elasticsearch) $(use_enable gcrypt libgcrypt) + $(use_enable imhttp) + $(use_enable impcap) $(use_enable jemalloc) $(use_enable kafka imkafka) $(use_enable kafka omkafka) @@ -245,7 +287,6 @@ src_configure() { $(use_enable uuid) $(use_enable zeromq imczmq) $(use_enable zeromq omczmq) - --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" ) econf "${myeconfargs[@]}" @@ -290,19 +331,21 @@ src_test() { } src_install() { - local DOCS=( + local -a DOCS=( AUTHORS ChangeLog "${FILESDIR}"/README.gentoo ) - use doc && local HTML_DOCS=( "${S}/docs/build/." ) + use doc && local -a HTML_DOCS=( "${S}/docs/build/." ) default newconfd "${FILESDIR}/${PN}.confd-r1" ${PN} newinitd "${FILESDIR}/${PN}.initd-r1" ${PN} + systemd_newunit "${FILESDIR}/${PN}.service" ${PN}.service + keepdir /var/empty/dev keepdir /var/spool/${PN} keepdir /etc/ssl/${PN} @@ -327,7 +370,7 @@ src_install() { doins plugins/ompgsql/createDB.sql fi - prune_libtool_files --modules + find "${ED}" -name '*.la' -delete || die } pkg_postinst() { @@ -370,9 +413,14 @@ pkg_config() { if ! use ssl ; then einfo "There is nothing to configure for rsyslog unless you" einfo "used USE=ssl to build it." + return 0 fi + if ! hash certtool &>/dev/null; then + die "certtool not found! Is net-libs/gnutls[tools] is installed?" + fi + # Make sure the certificates directory exists local CERTDIR="${EROOT}/etc/ssl/${PN}" if [[ ! -d "${CERTDIR}" ]]; then @@ -384,7 +432,7 @@ pkg_config() { if [[ ! -f "${CERTDIR}/${PN}_ca.cert.pem" ]]; then einfo "No CA key and certificate found in ${CERTDIR}, creating them for you..." certtool --generate-privkey \ - --outfile "${CERTDIR}/${PN}_ca.privkey.pem" &>/dev/null + --outfile "${CERTDIR}/${PN}_ca.privkey.pem" || die chmod 400 "${CERTDIR}/${PN}_ca.privkey.pem" cat > "${T}/${PF}.$$" <<- _EOF @@ -397,7 +445,7 @@ pkg_config() { certtool --generate-self-signed \ --load-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \ --outfile "${CERTDIR}/${PN}_ca.cert.pem" \ - --template "${T}/${PF}.$$" &>/dev/null + --template "${T}/${PF}.$$" || die chmod 400 "${CERTDIR}/${PN}_ca.privkey.pem" # Create the server certificate @@ -407,7 +455,7 @@ pkg_config() { einfo "Creating private key and certificate for server ${CN}..." certtool --generate-privkey \ - --outfile "${CERTDIR}/${PN}_${CN}.key.pem" &>/dev/null + --outfile "${CERTDIR}/${PN}_${CN}.key.pem" || die chmod 400 "${CERTDIR}/${PN}_${CN}.key.pem" cat > "${T}/${PF}.$$" <<- _EOF @@ -436,7 +484,7 @@ pkg_config() { einfo "Creating private key and certificate for client ${CN}..." certtool --generate-privkey \ - --outfile "${CERTDIR}/${PN}_${CN}.key.pem" &>/dev/null + --outfile "${CERTDIR}/${PN}_${CN}.key.pem" || die chmod 400 "${CERTDIR}/${PN}_${CN}.key.pem" cat > "${T}/${PF}.$$" <<- _EOF @@ -451,7 +499,7 @@ pkg_config() { --load-privkey "${CERTDIR}/${PN}_${CN}.key.pem" \ --load-ca-certificate "${CERTDIR}/${PN}_ca.cert.pem" \ --load-ca-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \ - --template "${T}/${PF}.$$" &>/dev/null + --template "${T}/${PF}.$$" || die chmod 400 "${CERTDIR}/${PN}_${CN}.cert.pem" rm -f "${T}/${PF}.$$" |