Gentoo Archives: gentoo-commits

From: Thomas Deutschmann <whissi@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: profiles/arch/x86/, app-admin/rsyslog/, profiles/arch/amd64/, ...
Date: Wed, 01 Mar 2017 22:19:18
Message-Id: 1488406739.22da16f59be556c5bb6bd169b38dadc470dc7461.whissi@gentoo
1 commit: 22da16f59be556c5bb6bd169b38dadc470dc7461
2 Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
3 AuthorDate: Wed Mar 1 21:54:43 2017 +0000
4 Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
5 CommitDate: Wed Mar 1 22:18:59 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=22da16f5
7
8 app-admin/rsyslog: Bump to v8.25.0
9
10 EBuild changes:
11 ===============
12 - New MaxMind DB lookup message modify plugin added
13 (can be enabled via "mdblookup" USE flag)
14
15 Package-Manager: Portage-2.3.3, Repoman-2.3.1
16
17 app-admin/rsyslog/Manifest | 2 +
18 app-admin/rsyslog/metadata.xml | 1 +
19 app-admin/rsyslog/rsyslog-8.25.0.ebuild | 455 ++++++++++++++++++++++++++++++++
20 profiles/arch/amd64/package.use.mask | 4 +
21 profiles/arch/base/package.use.mask | 4 +
22 profiles/arch/x86/package.use.mask | 4 +
23 6 files changed, 470 insertions(+)
24
25 diff --git a/app-admin/rsyslog/Manifest b/app-admin/rsyslog/Manifest
26 index 99baaa34c10..6611ae0e83b 100644
27 --- a/app-admin/rsyslog/Manifest
28 +++ b/app-admin/rsyslog/Manifest
29 @@ -3,8 +3,10 @@ DIST rsyslog-8.19.0.tar.gz 2279714 SHA256 3379b30f2e6ef05a0f1c7327c73923fa5877a8
30 DIST rsyslog-8.22.0.tar.gz 2259652 SHA256 06e2884181333dccecceaca82827ae24ca7a258b4fbf7b1e07a80d4caae640ca SHA512 105c7a81bd96c6b68b9e9f4d1ae06e63bf531afe4dfd91efb73b2a96e8264270579ccacc6a1bf77ad284913fb7f4bac55f83c5b38f7fa7675f6c4a6fa9b2f3ca WHIRLPOOL 22cb36592654adf67124f31417ad332163d72c852b7d6e471d58f3a45aa8123d1ce701c4853b4e884927587e26dac3645cbe6ffcf291b22c7f789f9513df81a5
31 DIST rsyslog-8.23.0.tar.gz 2338318 SHA256 244e79552d37a5729f3f53786062828adc16fd080eeb0de6507bff55ed21693b SHA512 4e4832287f02d4b0435b3711241d58cad9f393ce14318bbccce7b89dceeed01205960e7df4b2629831429e550c0865407374eb6a5548ecb47a3aea90c7d7df2d WHIRLPOOL a4ac676faa6ad09b3e7cf0fbc9c6f827d96a4c14106c3692b523ffc9b90f74745bab7edff2b0c914c160db1f3f83c5f5589203ad8c7cec718c7be8dc2fd0ab66
32 DIST rsyslog-8.24.0.tar.gz 2374240 SHA256 37f32ce33e32a88e1bea0511e8e557d90b7378b81520e3236a9af5ba6ea993d7 SHA512 b25b8ae72133376f732f54863c97aea3c8dfbf37c62c6a61840932996913c9d4e63155a24ffc577db48a18514f3e35b6fb109b1864380ba93ddf3fa6d84d728d WHIRLPOOL c5895d50143c21d446d760f5179b47fdae4ec34867711c942cd671b88789588e7244fb8511745efdb701954f7bc390403d30736a1e54af13dca4876f989928df
33 +DIST rsyslog-8.25.0.tar.gz 2386720 SHA256 c756f16a083e5d4081fb9bfb236303a839cdca0a2c00017bd770b2e2e9677427 SHA512 0e97db84cc8fe9fd6e3ffb5a78b32fd213e22833c6ed605329c579132d127b7d65b3f66c64e6bddeb1967aa9ed90645a7c24b9d5e643f95bdaf48ed9fc82cb5f WHIRLPOOL 2c4925fda01e49f95ed3d2f43898cdf8f6d679ace5c2a1d1d330dfc422936ae7751cfefa480359b26d2cb782a8217865336f5e04e65e81ffce565b3388c2ff01
34 DIST rsyslog-doc-8.16.0.tar.gz 4174347 SHA256 03033d264b29fd791299d5d618bd061853c008ac8087f3b6c4870e1b8f6abc39 SHA512 746e4de102f15ea10085ca21eeed74dd8264742ba7029cb54caf87b72070ab6a73e79af46d97717323be1e68d9d1fa78807d5d4446d15524aa4c565650f7b0d0 WHIRLPOOL ff8dfcc3dd7e87a7316f94a3b8f199cd902cbf99772bb97147b9af37b8c6941f13341438450b3dbf3139d5518488e74df6b77c1eec3182e92a9476ccb951ec5b
35 DIST rsyslog-docs-8.19.0.tar.gz 4271094 SHA256 f76958d2fbcbb3a2db531ec3878d6d9a8c4a622e457b9c97b7c7dcca0ddd6512 SHA512 120f229a641119649fc897948fb0934039a95d0ef63e68b10ab635620d84988d794fd5dc33617353028e786513a86b3a1cd0c4fef9c755dab5bedd8e0246532e WHIRLPOOL fc0642eef4e686fc653db6a654f96fd9037e083a02e06d64b7b2a2e0292d745ca6e24821df3b9825e0eba2c4808b2755dfaeb90b62a49662ab22a171ffe2e63b
36 DIST rsyslog-docs-8.22.0.tar.gz 4307880 SHA256 4367e52dddcaca111c40585aa632a9dc68f27ae2e5a51685a08dbabf4e1d2c59 SHA512 e1d09182d564985ede4826b7366e183d75abf67b24e3aa65d607fc080cf6901612dbbb32188c640b69a4562b2bee2018b4116c6d0fa18ceb1575b9b700e85481 WHIRLPOOL 0f5aa06ce8b4c1c5aabbe378c67052ca54c730709736025b70c553cb4caaf7c9e257ea4146f3cc40d59ec3d3f34ef38df2683421fcffb89dc95fd65644eb2ee2
37 DIST rsyslog-docs-8.23.0.tar.gz 4316852 SHA256 c2b23952e5878af334a7b71de76fc6bd432e90dff968da545d3bd73f8a4a147f SHA512 5c57159e17c728e0fcada5cd03dfe45edca2f9b6554628729387eedb94936c0ef16254f5b0e3524dd6ce732d57e42994e1293478bd28b51747a49f725f148bc0 WHIRLPOOL 8cb566131a9ae491a2839450b58a67ad3dd2fda41aad93d265b11dc1d33b7f765f65ef82166c79f2588fc4543f1aac570921242b61c226849218649bf6b943b3
38 DIST rsyslog-docs-8.24.0.tar.gz 4344877 SHA256 f5e3c27c5b65abdd600b8ad8d99d1f2fe9f0ffca02d6af3c12db5fc10dd889b2 SHA512 b55cde1485a7baec6d4c4928107c22a078cf412a2994c0dfcbb12c47b49c3b263af8a64011b1329567cf86e04927b9e383581dc868eaea81d554adada6b3786b WHIRLPOOL e8b2d10b0de3c33189f859f08db58e319730e709e5a5008909f2166a061952290b0bf96163cdf6e0b3829896916f712ba5d8a2a98f02d796e9174d8919190f8d
39 +DIST rsyslog-docs-8.25.0.tar.gz 4359583 SHA256 3fa96f85ca31b09b16dcc4b184f9beeb5fb06ba463b0ced7046ec2a471b7d3ad SHA512 e0068ec00bbda2d1cf7f14105ad83e82bea9291ed5d5fda3ffcff2db32747b65e7b6d65743a3221aeca03be9c6efcee1db7f03c2da115a3aed60848556befa71 WHIRLPOOL 8c2ae0afe5fb1f81b33ecb83df420a7bbc8c147eac5854a57ba1c5341bb42d9dd4a3976a472445d19a45eb09258bc3be1b9065d79fd679095cbf24cbfddb1756
40
41 diff --git a/app-admin/rsyslog/metadata.xml b/app-admin/rsyslog/metadata.xml
42 index d402aea6b41..a933e8bb2fe 100644
43 --- a/app-admin/rsyslog/metadata.xml
44 +++ b/app-admin/rsyslog/metadata.xml
45 @@ -15,6 +15,7 @@
46 <flag name="kafka">Build the Apache Kafka output module (requires <pkg>dev-libs/librdkafka</pkg>)</flag>
47 <flag name="kerberos">Build the GSSAPI input and output module (requires <pkg>virtual/krb5</pkg>)</flag>
48 <flag name="libressl">Use <pkg>dev-libs/libressl</pkg> for building the rfc5424hmac modify module (requires rfc5424hmac USE flag)</flag>
49 + <flag name="mdblookup">Build the MaxMind DB lookup message modify plugin using <pkg>dev-libs/libmaxminddb</pkg></flag>
50 <flag name="mongodb">Build the MongoDB output module (requires <pkg>dev-libs/libmongo-client</pkg>)</flag>
51 <flag name="mysql">Build the MySQL database output module (requires <pkg>virtual/mysql</pkg>)</flag>
52 <flag name="normalize">Build the normalize modify module (requires <pkg>dev-libs/libee</pkg> and <pkg>dev-libs/liblognorm</pkg>)</flag>
53
54 diff --git a/app-admin/rsyslog/rsyslog-8.25.0.ebuild b/app-admin/rsyslog/rsyslog-8.25.0.ebuild
55 new file mode 100644
56 index 00000000000..5565bc9cfb7
57 --- /dev/null
58 +++ b/app-admin/rsyslog/rsyslog-8.25.0.ebuild
59 @@ -0,0 +1,455 @@
60 +# Copyright 1999-2017 Gentoo Foundation
61 +# Distributed under the terms of the GNU General Public License v2
62 +# $Id$
63 +
64 +EAPI="6"
65 +
66 +inherit autotools eutils linux-info systemd
67 +
68 +DESCRIPTION="An enhanced multi-threaded syslogd with database support and more"
69 +HOMEPAGE="http://www.rsyslog.com/"
70 +
71 +BRANCH="8-stable"
72 +
73 +if [[ ${PV} == "9999" ]]; then
74 + EGIT_REPO_URI="
75 + git://github.com/rsyslog/${PN}.git
76 + https://github.com/rsyslog/${PN}.git
77 + "
78 +
79 + DOC_REPO_URI="
80 + git://github.com/rsyslog/${PN}-doc.git
81 + https://github.com/rsyslog/${PN}-doc.git
82 + "
83 +
84 + inherit git-r3
85 +else
86 + MY_PV=${PV%_rc*}
87 + MY_FILENAME="${PN}-${PV}.tar.gz"
88 + MY_FILENAME_DOCS="${PN}-docs-${PV}.tar.gz"
89 + S="${WORKDIR}/${PN}-${MY_PV}"
90 +
91 + # Upstream URL schema:
92 + # RC: http://www.rsyslog.com/files/download/rsyslog/rc/rsyslog-8.18.0.tar.gz
93 + # http://www.rsyslog.com/files/download/rsyslog/rc2/rsyslog-8.18.0.tar.gz
94 + # Release: http://www.rsyslog.com/files/download/rsyslog/rsyslog-8.18.0.tar.gz
95 +
96 + MY_URL_PREFIX=
97 + if [[ ${PV} = *_rc* ]]; then
98 + _tmp_last_index=$(($(get_last_version_component_index ${PV})+1))
99 + _tmp_suffix=$(get_version_component_range ${_tmp_last_index} ${PV})
100 + if [[ ${_tmp_suffix} = *rc* ]]; then
101 + MY_URL_PREFIX="${_tmp_suffix}/"
102 + fi
103 +
104 + # Cleaning up temporary variables
105 + unset _tmp_last_index
106 + unset _tmp_suffix
107 + else
108 + KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~x86"
109 + fi
110 +
111 + SRC_URI="
112 + http://www.rsyslog.com/files/download/${PN}/${MY_URL_PREFIX}${PN}-${MY_PV}.tar.gz -> ${MY_FILENAME}
113 + doc? ( http://www.rsyslog.com/files/download/${PN}/${MY_URL_PREFIX}${PN}-doc-${MY_PV}.tar.gz -> ${MY_FILENAME_DOCS} )
114 + "
115 +fi
116 +
117 +LICENSE="GPL-3 LGPL-3 Apache-2.0"
118 +SLOT="0"
119 +IUSE="dbi debug doc elasticsearch +gcrypt grok jemalloc kafka kerberos libressl mdblookup mongodb mysql normalize omhttpfs"
120 +IUSE+=" omudpspoof postgres rabbitmq redis relp rfc3195 rfc5424hmac snmp ssl systemd test usertools +uuid zeromq"
121 +
122 +RDEPEND="
123 + >=dev-libs/libfastjson-0.99.3:=
124 + >=dev-libs/libestr-0.1.9
125 + >=dev-libs/liblogging-1.0.1:=[stdlog]
126 + >=sys-libs/zlib-1.2.5
127 + dbi? ( >=dev-db/libdbi-0.8.3 )
128 + elasticsearch? ( >=net-misc/curl-7.35.0 )
129 + gcrypt? ( >=dev-libs/libgcrypt-1.5.3:= )
130 + grok? ( >=dev-libs/grok-0.9.2 )
131 + jemalloc? ( >=dev-libs/jemalloc-3.3.1:= )
132 + kafka? ( >=dev-libs/librdkafka-0.9.0.99:= )
133 + kerberos? ( virtual/krb5 )
134 + mdblookup? ( dev-libs/libmaxminddb:= )
135 + mongodb? ( >=dev-libs/libmongo-client-0.1.4 )
136 + mysql? ( virtual/mysql )
137 + normalize? (
138 + >=dev-libs/libee-0.4.0
139 + >=dev-libs/liblognorm-2.0.1:=
140 + )
141 + omhttpfs? ( >=net-misc/curl-7.35.0 )
142 + omudpspoof? ( >=net-libs/libnet-1.1.6 )
143 + postgres? ( >=dev-db/postgresql-8.4.20:= )
144 + rabbitmq? ( >=net-libs/rabbitmq-c-0.3.0:= )
145 + redis? ( >=dev-libs/hiredis-0.11.0:= )
146 + relp? ( >=dev-libs/librelp-1.2.12:= )
147 + rfc3195? ( >=dev-libs/liblogging-1.0.1:=[rfc3195] )
148 + rfc5424hmac? (
149 + !libressl? ( >=dev-libs/openssl-0.9.8y:0= )
150 + libressl? ( dev-libs/libressl:= )
151 + )
152 + snmp? ( >=net-analyzer/net-snmp-5.7.2 )
153 + ssl? ( >=net-libs/gnutls-2.12.23:0= )
154 + systemd? ( >=sys-apps/systemd-208 )
155 + uuid? ( sys-apps/util-linux:0= )
156 + zeromq? (
157 + >=net-libs/zeromq-4.1.1:=
158 + >=net-libs/czmq-3.0.0
159 + )"
160 +DEPEND="${RDEPEND}
161 + >=sys-devel/autoconf-archive-2015.02.24
162 + virtual/pkgconfig
163 + test? ( sys-libs/libfaketime )"
164 +
165 +if [[ ${PV} == "9999" ]]; then
166 + DEPEND+=" doc? ( >=dev-python/sphinx-1.1.3-r7 )"
167 + DEPEND+=" >=sys-devel/flex-2.5.39-r1"
168 + DEPEND+=" >=sys-devel/bison-2.4.3"
169 + DEPEND+=" >=dev-python/docutils-0.12"
170 +fi
171 +
172 +CONFIG_CHECK="~INOTIFY_USER"
173 +WARNING_INOTIFY_USER="CONFIG_INOTIFY_USER isn't set. Imfile module on this system will only support polling mode!"
174 +
175 +src_unpack() {
176 + if [[ ${PV} == "9999" ]]; then
177 + git-r3_fetch
178 + git-r3_checkout
179 + else
180 + unpack ${P}.tar.gz
181 + fi
182 +
183 + if use doc; then
184 + if [[ ${PV} == "9999" ]]; then
185 + local _EGIT_BRANCH=
186 + if [[ -n "${EGIT_BRANCH}" ]]; then
187 + # Cannot use rsyslog commits/branches for documentation repository
188 + _EGIT_BRANCH=${EGIT_BRANCH}
189 + unset EGIT_BRANCH
190 + fi
191 +
192 + git-r3_fetch "${DOC_REPO_URI}"
193 + git-r3_checkout "${DOC_REPO_URI}" "${S}"/docs
194 +
195 + if [[ -n "${_EGIT_BRANCH}" ]]; then
196 + # Restore previous EGIT_BRANCH information
197 + EGIT_BRANCH=${_EGIT_BRANCH}
198 + fi
199 + else
200 + cd "${S}" || die "Cannot change dir into '${S}'"
201 + mkdir docs || die "Failed to create docs directory"
202 + cd docs || die "Failed to change dir into '${S}/docs'"
203 + unpack ${MY_FILENAME_DOCS}
204 + fi
205 + fi
206 +}
207 +
208 +src_prepare() {
209 + default
210 +
211 + eautoreconf
212 +}
213 +
214 +src_configure() {
215 + # Maintainer notes:
216 + # * Guardtime support is missing because libgt isn't yet available
217 + # in portage.
218 + # * Hadoop's HDFS file system output module is currently not
219 + # supported in Gentoo because nobody is able to test it
220 + # (JAVA dependency).
221 + # * dev-libs/hiredis doesn't provide pkg-config (see #504614,
222 + # upstream PR 129 and 136) so we need to export HIREDIS_*
223 + # variables because rsyslog's build system depends on pkg-config.
224 +
225 + if use redis; then
226 + export HIREDIS_LIBS="-L${EPREFIX}/usr/$(get_libdir) -lhiredis"
227 + export HIREDIS_CFLAGS="-I${EPREFIX}/usr/include"
228 + fi
229 +
230 + local myeconfargs=(
231 + --disable-debug-symbols
232 + --disable-generate-man-pages
233 + --without-valgrind-testbench
234 + $(use_enable test testbench)
235 + # Input Plugins without depedencies
236 + --enable-imdiag
237 + --enable-imfile
238 + --enable-impstats
239 + --enable-imptcp
240 + # Message Modificiation Plugins without depedencies
241 + --enable-mmanon
242 + --enable-mmaudit
243 + --enable-mmcount
244 + --enable-mmfields
245 + --enable-mmjsonparse
246 + --enable-mmpstrucdata
247 + --enable-mmrm1stspace
248 + --enable-mmsequence
249 + --enable-mmutf8fix
250 + # Output Modification Plugins without dependencies
251 + --enable-mail
252 + --enable-omprog
253 + --enable-omruleset
254 + --enable-omstdout
255 + --enable-omuxsock
256 + # Misc
257 + --enable-pmaixforwardedfrom
258 + --enable-pmciscoios
259 + --enable-pmcisconames
260 + --enable-pmlastmsg
261 + --enable-pmsnare
262 + # DB
263 + $(use_enable dbi libdbi)
264 + $(use_enable mongodb ommongodb)
265 + $(use_enable mysql)
266 + $(use_enable postgres pgsql)
267 + $(use_enable redis omhiredis)
268 + # Debug
269 + $(use_enable debug)
270 + $(use_enable debug diagtools)
271 + $(use_enable debug memcheck)
272 + $(use_enable debug rtinst)
273 + $(use_enable debug valgrind)
274 + # Misc
275 + $(use_enable elasticsearch)
276 + $(use_enable gcrypt libgcrypt)
277 + $(use_enable jemalloc)
278 + $(use_enable kafka omkafka)
279 + $(use_enable kerberos gssapi-krb5)
280 + $(use_enable normalize mmnormalize)
281 + $(use_enable mdblookup mmdblookup)
282 + $(use_enable grok mmgrok)
283 + $(use_enable omhttpfs)
284 + $(use_enable omudpspoof)
285 + $(use_enable rabbitmq omrabbitmq)
286 + $(use_enable relp)
287 + $(use_enable rfc3195)
288 + $(use_enable rfc5424hmac mmrfc5424addhmac)
289 + $(use_enable snmp)
290 + $(use_enable snmp mmsnmptrapd)
291 + $(use_enable ssl gnutls)
292 + $(use_enable systemd imjournal)
293 + $(use_enable systemd omjournal)
294 + $(use_enable usertools)
295 + $(use_enable uuid)
296 + $(use_enable zeromq imczmq)
297 + $(use_enable zeromq imzmq3)
298 + $(use_enable zeromq omczmq)
299 + $(use_enable zeromq omzmq3)
300 + --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
301 + )
302 +
303 + econf "${myeconfargs[@]}"
304 +}
305 +
306 +src_compile() {
307 + default
308 +
309 + if use doc && [[ "${PV}" == "9999" ]]; then
310 + einfo "Building documentation ..."
311 + local doc_dir="${S}/docs"
312 + cd "${doc_dir}" || die "Cannot chdir into \"${doc_dir}\"!"
313 + sphinx-build -b html source build || die "Building documentation failed!"
314 + fi
315 +}
316 +
317 +src_test() {
318 + local _has_increased_ulimit=
319 +
320 + # Sometimes tests aren't executable (i.e. when added via patch)
321 + einfo "Adjusting permissions of test scripts ..."
322 + find "${S}"/tests -type f -name '*.sh' \! -perm -111 -exec chmod a+x '{}' \; || \
323 + die "Failed to adjust test scripts permission"
324 +
325 + if ulimit -n 3072; then
326 + _has_increased_ulimit="true"
327 + fi
328 +
329 + if ! emake --jobs 1 check; then
330 + eerror "Test suite failed! :("
331 +
332 + if [[ -z "${_has_increased_ulimit}" ]]; then
333 + eerror "Probably because open file limit couldn't be set to 3072."
334 + fi
335 +
336 + if has userpriv ${FEATURES}; then
337 + eerror "Please try to reproduce the test suite failure with FEATURES=-userpriv " \
338 + "before you submit a bug report."
339 + fi
340 +
341 + fi
342 +}
343 +
344 +src_install() {
345 + local DOCS=(
346 + AUTHORS
347 + ChangeLog
348 + "${FILESDIR}"/${BRANCH}/README.gentoo
349 + )
350 +
351 + use doc && local HTML_DOCS=( "${S}/docs/build/." )
352 +
353 + default
354 +
355 + newconfd "${FILESDIR}/${BRANCH}/${PN}.confd-r1" ${PN}
356 + newinitd "${FILESDIR}/${BRANCH}/${PN}.initd-r1" ${PN}
357 +
358 + keepdir /var/empty/dev
359 + keepdir /var/spool/${PN}
360 + keepdir /etc/ssl/${PN}
361 + keepdir /etc/${PN}.d
362 +
363 + insinto /etc
364 + newins "${FILESDIR}/${BRANCH}/${PN}.conf" ${PN}.conf
365 +
366 + insinto /etc/rsyslog.d/
367 + doins "${FILESDIR}/${BRANCH}/50-default.conf"
368 +
369 + insinto /etc/logrotate.d/
370 + newins "${FILESDIR}/${BRANCH}/${PN}.logrotate" ${PN}
371 +
372 + if use mysql; then
373 + insinto /usr/share/doc/${PF}/scripts/mysql
374 + doins plugins/ommysql/createDB.sql
375 + fi
376 +
377 + if use postgres; then
378 + insinto /usr/share/doc/${PF}/scripts/pgsql
379 + doins plugins/ompgsql/createDB.sql
380 + fi
381 +
382 + prune_libtool_files --modules
383 +}
384 +
385 +pkg_postinst() {
386 + local advertise_readme=0
387 +
388 + if [[ -z "${REPLACING_VERSIONS}" ]]; then
389 + # This is a new installation
390 +
391 + advertise_readme=1
392 +
393 + if use mysql || use postgres; then
394 + echo
395 + elog "Sample SQL scripts for MySQL & PostgreSQL have been installed to:"
396 + elog " /usr/share/doc/${PF}/scripts"
397 + fi
398 +
399 + if use ssl; then
400 + echo
401 + elog "To create a default CA and certificates for your server and clients, run:"
402 + elog " emerge --config =${PF}"
403 + elog "on your logging server. You can run it several times,"
404 + elog "once for each logging client. The client certificates will be signed"
405 + elog "using the CA certificate generated during the first run."
406 + fi
407 + fi
408 +
409 + if [[ ${advertise_readme} -gt 0 ]]; then
410 + # We need to show the README file location
411 +
412 + echo ""
413 + elog "Please read"
414 + elog ""
415 + elog " ${EPREFIX}/usr/share/doc/${PF}/README.gentoo*"
416 + elog ""
417 + elog "for more details."
418 + fi
419 +}
420 +
421 +pkg_config() {
422 + if ! use ssl ; then
423 + einfo "There is nothing to configure for rsyslog unless you"
424 + einfo "used USE=ssl to build it."
425 + return 0
426 + fi
427 +
428 + # Make sure the certificates directory exists
429 + local CERTDIR="${EROOT}/etc/ssl/${PN}"
430 + if [[ ! -d "${CERTDIR}" ]]; then
431 + mkdir "${CERTDIR}" || die
432 + fi
433 + einfo "Your certificates will be stored in ${CERTDIR}"
434 +
435 + # Create a default CA if needed
436 + if [[ ! -f "${CERTDIR}/${PN}_ca.cert.pem" ]]; then
437 + einfo "No CA key and certificate found in ${CERTDIR}, creating them for you..."
438 + certtool --generate-privkey \
439 + --outfile "${CERTDIR}/${PN}_ca.privkey.pem" &>/dev/null
440 + chmod 400 "${CERTDIR}/${PN}_ca.privkey.pem"
441 +
442 + cat > "${T}/${PF}.$$" <<- _EOF
443 + cn = Portage automated CA
444 + ca
445 + cert_signing_key
446 + expiration_days = 3650
447 + _EOF
448 +
449 + certtool --generate-self-signed \
450 + --load-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \
451 + --outfile "${CERTDIR}/${PN}_ca.cert.pem" \
452 + --template "${T}/${PF}.$$" &>/dev/null
453 + chmod 400 "${CERTDIR}/${PN}_ca.privkey.pem"
454 +
455 + # Create the server certificate
456 + echo
457 + einfon "Please type the Common Name of the SERVER you wish to create a certificate for: "
458 + read -r CN
459 +
460 + einfo "Creating private key and certificate for server ${CN}..."
461 + certtool --generate-privkey \
462 + --outfile "${CERTDIR}/${PN}_${CN}.key.pem" &>/dev/null
463 + chmod 400 "${CERTDIR}/${PN}_${CN}.key.pem"
464 +
465 + cat > "${T}/${PF}.$$" <<- _EOF
466 + cn = ${CN}
467 + tls_www_server
468 + dns_name = ${CN}
469 + expiration_days = 3650
470 + _EOF
471 +
472 + certtool --generate-certificate \
473 + --outfile "${CERTDIR}/${PN}_${CN}.cert.pem" \
474 + --load-privkey "${CERTDIR}/${PN}_${CN}.key.pem" \
475 + --load-ca-certificate "${CERTDIR}/${PN}_ca.cert.pem" \
476 + --load-ca-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \
477 + --template "${T}/${PF}.$$" &>/dev/null
478 + chmod 400 "${CERTDIR}/${PN}_${CN}.cert.pem"
479 +
480 + else
481 + einfo "Found existing ${CERTDIR}/${PN}_ca.cert.pem, skipping CA and SERVER creation."
482 + fi
483 +
484 + # Create a client certificate
485 + echo
486 + einfon "Please type the Common Name of the CLIENT you wish to create a certificate for: "
487 + read -r CN
488 +
489 + einfo "Creating private key and certificate for client ${CN}..."
490 + certtool --generate-privkey \
491 + --outfile "${CERTDIR}/${PN}_${CN}.key.pem" &>/dev/null
492 + chmod 400 "${CERTDIR}/${PN}_${CN}.key.pem"
493 +
494 + cat > "${T}/${PF}.$$" <<- _EOF
495 + cn = ${CN}
496 + tls_www_client
497 + dns_name = ${CN}
498 + expiration_days = 3650
499 + _EOF
500 +
501 + certtool --generate-certificate \
502 + --outfile "${CERTDIR}/${PN}_${CN}.cert.pem" \
503 + --load-privkey "${CERTDIR}/${PN}_${CN}.key.pem" \
504 + --load-ca-certificate "${CERTDIR}/${PN}_ca.cert.pem" \
505 + --load-ca-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \
506 + --template "${T}/${PF}.$$" &>/dev/null
507 + chmod 400 "${CERTDIR}/${PN}_${CN}.cert.pem"
508 +
509 + rm -f "${T}/${PF}.$$"
510 +
511 + echo
512 + einfo "Here is the documentation on how to encrypt your log traffic:"
513 + einfo " http://www.rsyslog.com/doc/rsyslog_tls.html"
514 +}
515
516 diff --git a/profiles/arch/amd64/package.use.mask b/profiles/arch/amd64/package.use.mask
517 index cbbaac8f183..d38817cc07c 100644
518 --- a/profiles/arch/amd64/package.use.mask
519 +++ b/profiles/arch/amd64/package.use.mask
520 @@ -17,6 +17,10 @@
521
522 #--- END OF EXAMPLES ---
523
524 +# Thomas Deutschmann <whissi@g.o> (01 Mar 2017)
525 +# dev-libs/libmaxminddb is keyworded on amd64
526 +app-admin/rsyslog -mdblookup
527 +
528 # Alexis Ballier <aballier@g.o> (21 Feb 2017)
529 # spacetime works on amd64
530 # https://caml.inria.fr/pub/docs/manual-ocaml/spacetime.html
531
532 diff --git a/profiles/arch/base/package.use.mask b/profiles/arch/base/package.use.mask
533 index e6a3b01eb60..f2d3a9b4916 100644
534 --- a/profiles/arch/base/package.use.mask
535 +++ b/profiles/arch/base/package.use.mask
536 @@ -1,6 +1,10 @@
537 # Copyright 1999-2017 Gentoo Foundation
538 # Distributed under the terms of the GNU General Public License v2
539
540 +# Thomas Deutschmann <whissi@g.o> (01 Mar 2017)
541 +# dev-libs/libmaxminddb is only keyworded on amd64 and x86 at the moment
542 +app-admin/rsyslog mdblookup
543 +
544 # Alexis Ballier <aballier@g.o> (21 Feb 2017)
545 # spacetime is only supported on amd64 at the moment.
546 # https://caml.inria.fr/pub/docs/manual-ocaml/spacetime.html
547
548 diff --git a/profiles/arch/x86/package.use.mask b/profiles/arch/x86/package.use.mask
549 index f01e7e33855..df16c605222 100644
550 --- a/profiles/arch/x86/package.use.mask
551 +++ b/profiles/arch/x86/package.use.mask
552 @@ -3,6 +3,10 @@
553
554 # This file requires >=portage-2.1.1
555
556 +# Thomas Deutschmann <whissi@g.o> (01 Mar 2017)
557 +# dev-libs/libmaxminddb is keyworded on x86
558 +app-admin/rsyslog -mdblookup
559 +
560 # David Seifert <soap@g.o> (10 Feb 2017)
561 # Requires dev-lua/ldoc for building documentation,
562 # which is only keyworded for amd64