diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2019-11-10 13:21:36 +0000 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2019-11-10 13:21:36 +0000 |
commit | 77398e424e45d9e98c1cef3c43bdadb9d56e81ef (patch) | |
tree | 5aeffd3fc7b92fc615bd2c222fa8831aeda1925b /net-analyzer/nagios-core | |
parent | bd4aeefe33e63f613512604e47bfca7b2187697d (diff) |
gentoo resync : 10.11.2019
Diffstat (limited to 'net-analyzer/nagios-core')
-rw-r--r-- | net-analyzer/nagios-core/Manifest | 3 | ||||
-rw-r--r-- | net-analyzer/nagios-core/files/99_nagios4-r1.conf | 16 | ||||
-rw-r--r-- | net-analyzer/nagios-core/files/lighttpd_nagios4-r1.conf | 15 | ||||
-rw-r--r-- | net-analyzer/nagios-core/nagios-core-4.4.5-r4.ebuild | 245 |
4 files changed, 279 insertions, 0 deletions
diff --git a/net-analyzer/nagios-core/Manifest b/net-analyzer/nagios-core/Manifest index f986923bb649..3dcc07ea8df4 100644 --- a/net-analyzer/nagios-core/Manifest +++ b/net-analyzer/nagios-core/Manifest @@ -1,8 +1,11 @@ +AUX 99_nagios4-r1.conf 310 BLAKE2B 985059dfdef2159680e554149c805fc31d2cc635ff745cf8fa848f79a70577d825d50da05f63c4ff3b2171bd1683d40574df7c2650c12c7018f57118190cdb5c SHA512 8356e87bc69522838b17ecbcdcb8c9a9ceb51c9289651ff86160d3915fcf758d28e860f5f4f4465f319dec0712dd9e9c16a3aed682d5f8902ead4179a763dd10 AUX 99_nagios4.conf 368 BLAKE2B 147f4b73bd2f7d71dabb56f646399b939d3a87c288efed9b135e9401120e81c27e2a05f96982b62e601d1dd9b21be494e866103467a363336234b8b15095daf1 SHA512 f0b239f23d74afa89483806f27fb9259054e46bc5742de8a414c9a9a9852a4fbdc14db45aeb148a15288196c8f7d51bdd485b005e20d012892e9e7321b50e161 +AUX lighttpd_nagios4-r1.conf 297 BLAKE2B 8976123407c47be6023c5dae57c833f7e0b43ae2c70348dcd72b754453b5a84dd335daa222b4b75e5c19b3d5c18b64496739bdb61b8f2f67f5655b80a0ffb65f SHA512 2ef5268e9ba228d12e3dabb5a23ce73e49b7149a047acd4a2daac3cd3415b5233aaaf3b972c85780e71bd5fe3eefb6755a6222b40a509104fb318e219366867f AUX lighttpd_nagios4.conf 325 BLAKE2B f89b9d5aed8305d54f76adf29c65ba20bee74b6c82d149c8b0a786dddacc58c62337072691136c486d4050d1e3bce82420398d5f525ebc0bb36eefdf3a6a2e7f SHA512 a2f854713512ee8ee5c451235beb6ffccf2e04617a98619c6de807a5abca0a424e0581c34b4d255dcbc108e677e18bed25dd33e3d38df8fe10d7d8d4fab015c9 DIST nagios-4.3.4.tar.gz 11101966 BLAKE2B 6cb8182f40a4f83875c94df040bb1c62ce078d4130e10fa8595ea0b14cf715fc2a237ffb34199da9c1528e4789f3ce8deae3d993b5b795ad712d48b1e5fdb820 SHA512 f4e92aa98151739442a225a245871d93b5560d89510bdacb1a615959b9687f7a92675f10fcba71078b104ca8f237b0155a9261d67ec66f80aec7f033b4b3e316 DIST nagios-4.4.5.tar.gz 11304463 BLAKE2B e1152c2cd14aa790fbdb84c0d7b3eb4691b05793640bf2871bc4ab1e2d645bb52bb2d1660b7389fb26d599d015f71820988ed1cd58003ed978dd9df38c357675 SHA512 14372e2e4470229bd000a8ad94def6ae504ce3f8e2cf94a9da73736560d1e3b2633302fe232ee7099d88ba00aecde5a9e352901828d6d9a9cd1fdce203deca30 DIST nagios-core-gentoo-icons-20141125.tar 40960 BLAKE2B 31c1953e1160c7c7b89606b72b1a80407e4c1b7a7938b40bd1c577cd0c309dd88ca6b775d692a9b846dbf67736537fa9c91e56aa15fdd447769608ca525bff09 SHA512 bf109879cddd6136b76baba55d0b60b2596e37431dcf5ce0905d34a9fa292ebf7e4bde82d9a084362c486e8fac344c76d88f9298b1b85541ed70ffd608493766 EBUILD nagios-core-4.3.4.ebuild 6633 BLAKE2B b179113b24ff38a5c147de20cd48db21fa1379f4ab377c7c354a1f107f9651f1b348f7dbd26825aaacb1fe8ce54d8feedbd7a44b65d3c897480d1c87a1fd4183 SHA512 43668b229464870ff2843790b1fd3bed7e3e2c4ba58f8cc19b90d8e85418c0e86b3b604089ccf52a63f24f6c0fb5e9ea4045769b2f63df96dc7d70c53d3e8411 EBUILD nagios-core-4.4.5-r3.ebuild 7470 BLAKE2B ceb783a9c27047b42b6464a2570452125f2ff6f5c7c6a3333a63f113b2c78037ca7cea1db6cd6ca783d58d3d4bfaa491fade7217bff29b76f2cbaa7496c74dc4 SHA512 4962381b6508363c2f330e81dd81d3de878cb7ef7428f8ba9fc71193c6a3de2c93c8c32298212312feaa72e76b0094fec7ff9e04a9f07072be8181c12497a82a +EBUILD nagios-core-4.4.5-r4.ebuild 8065 BLAKE2B b60bdbed3ec5570ba690b1341889b504da237f7d0b5f676d5152098ce4e6e3bb3aa4c0ae6f33f4a251ca974e74b6534f201beaf5108da8f8f7399d5d561d52b6 SHA512 48e8a38aad29fed8908d8148e2dc69400e95daa900ec91121818a6168d24a9d381fadb7fd4687e3964509caef85fc7ef3259391752ab2317c23d6b49134a2af8 MISC metadata.xml 1466 BLAKE2B 655e382c72b7fcf8f4283055a503e2ad79dbfc695f730980543e6a7381f5aa093ab279341cd2df19a1d5e5053b2c686ecf6884c541a7b984dce60fc1ae4d4599 SHA512 51f819fc2cbe3b87ee96b048fd0e622f78673a29d5b42b2b8f1d963f6f71ead679b057863f5f1a56e997c1e19ff26edf52697c02f79ba89ed6a5480d0ae2296b diff --git a/net-analyzer/nagios-core/files/99_nagios4-r1.conf b/net-analyzer/nagios-core/files/99_nagios4-r1.conf new file mode 100644 index 000000000000..54531ed6275b --- /dev/null +++ b/net-analyzer/nagios-core/files/99_nagios4-r1.conf @@ -0,0 +1,16 @@ +<IfDefine NAGIOS> + + ScriptAlias /nagios/cgi-bin/ @CGIBINDIR@ + <Directory "@CGIBINDIR@"> + AllowOverride AuthConfig + Options ExecCGI + Require all granted + </Directory> + + Alias /nagios @WEBDIR@ + <Directory "@WEBDIR@"> + AllowOverride AuthConfig + Require all granted + </Directory> + +</IfDefine> diff --git a/net-analyzer/nagios-core/files/lighttpd_nagios4-r1.conf b/net-analyzer/nagios-core/files/lighttpd_nagios4-r1.conf new file mode 100644 index 000000000000..2653922ddc93 --- /dev/null +++ b/net-analyzer/nagios-core/files/lighttpd_nagios4-r1.conf @@ -0,0 +1,15 @@ +server.modules += ("mod_cgi") +server.modules += ("mod_alias") + +$HTTP["url"] =~ "^/nagios/cgi-bin/" { + dir-listing.activate = "disable" + cgi.assign = ( + ".pl" => "/usr/bin/perl", + ".cgi" => "" + ) +} + +alias.url += ( + "/nagios/cgi-bin" => "@CGIBINDIR@", + "/nagios" => "@WEBDIR@" +) diff --git a/net-analyzer/nagios-core/nagios-core-4.4.5-r4.ebuild b/net-analyzer/nagios-core/nagios-core-4.4.5-r4.ebuild new file mode 100644 index 000000000000..4a5ffee95d4f --- /dev/null +++ b/net-analyzer/nagios-core/nagios-core-4.4.5-r4.ebuild @@ -0,0 +1,245 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit toolchain-funcs user + +MY_P=${PN/-core}-${PV} +DESCRIPTION="Nagios core - monitoring daemon, web GUI, and documentation" +HOMEPAGE="https://www.nagios.org/" + +# The name of the directory into which our Gentoo icons will be +# extracted, and also the basename of the archive containing it. +GENTOO_ICONS="${PN}-gentoo-icons-20141125" +SRC_URI="mirror://sourceforge/nagios/${MY_P}.tar.gz + web? ( https://dev.gentoo.org/~mjo/distfiles/${GENTOO_ICONS}.tar )" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86" +IUSE="apache2 classicui lighttpd perl +web vim-syntax" + +# In pkg_postinst(), we change the group of the Nagios configuration +# directory to that of the web server user. It can't belong to both +# apache/lighttpd groups at the same time, so we block this combination +# for our own sanity. +# +# This could be made to work, but we would need a better way to allow +# the web user read-only access to Nagios's configuration directory. +# +REQUIRED_USE="apache2? ( !lighttpd )" + +# +# Note, we require one of the apache2 CGI modules: +# +# * mod_cgi +# * mod_cgid +# * mod_fcgid +# +# We just don't care /which/ one. And of course PHP supports both CGI +# (USE=cgi) and FastCGI (USE=fpm). We're pretty lenient with the +# dependencies, and expect the user not to do anything /too/ +# stupid. (For example, installing Apache with only FastCGI support, and +# PHP with only CGI support.) +# +# Another annoyance is that the upstream Makefile uses app-arch/unzip to +# extract a snapshot of AngularJS, but that's only needed when USE=web. +# +MOD_ALIAS=apache2_modules_alias +DEPEND="dev-libs/libltdl:0 + virtual/mailx + perl? ( dev-lang/perl:= ) + web? ( + app-arch/unzip + media-libs/gd[jpeg,png] + lighttpd? ( www-servers/lighttpd[php] ) + apache2? ( + || ( + >=www-servers/apache-2.4[${MOD_ALIAS},apache2_modules_cgi] + >=www-servers/apache-2.4[${MOD_ALIAS},apache2_modules_cgid] + >=www-servers/apache-2.4[${MOD_ALIAS},apache2_modules_fcgid] ) + || ( + dev-lang/php:*[apache2] + dev-lang/php:*[cgi] + dev-lang/php:*[fpm] ) + ) + )" +RDEPEND="${DEPEND} + vim-syntax? ( app-vim/nagios-syntax )" + +S="${WORKDIR}/${MY_P}" + +pkg_setup() { + enewgroup nagios + enewuser nagios -1 -1 -1 nagios +} + +src_configure() { + local myconf + + if use perl; then + myconf="${myconf} --enable-embedded-perl --with-perlcache" + fi + + if use !apache2 && use !lighttpd ; then + myconf="${myconf} --with-command-group=nagios" + else + if use apache2 ; then + myconf="${myconf} --with-command-group=apache" + myconf="${myconf} --with-httpd-conf=/etc/apache2/conf.d" + elif use lighttpd ; then + myconf="${myconf} --with-command-group=lighttpd" + fi + fi + + econf ${myconf} \ + --prefix="${EPREFIX}/usr" \ + --bindir="${EPREFIX}/usr/sbin" \ + --localstatedir="${EPREFIX}/var/lib/nagios" \ + --sysconfdir="${EPREFIX}/etc/nagios" \ + --libexecdir="${EPREFIX}/usr/$(get_libdir)/nagios/plugins" \ + --with-cgibindir="${EPREFIX}/usr/$(get_libdir)/nagios/cgi-bin" \ + --with-webdir="${EPREFIX}/usr/share/nagios/htdocs" + + # The paths in the web server configuration files need to match + # those passed to econf above. + cp "${FILESDIR}/99_nagios4-r1.conf" \ + "${FILESDIR}/lighttpd_nagios4-r1.conf" \ + "${T}/" || die "failed to create copies of web server conf files" + + sed -e "s|@CGIBINDIR@|${EPREFIX}/usr/$(get_libdir)/nagios/cgi-bin|g" \ + -e "s|@WEBDIR@|${EPREFIX}/usr/share/nagios/htdocs|" \ + -i "${T}/99_nagios4-r1.conf" \ + -i "${T}/lighttpd_nagios4-r1.conf" \ + || die "failed to substitute paths into web server conf files" + +} + +src_compile() { + emake CC=$(tc-getCC) nagios + + if use web; then + # Only compile the CGIs/HTML when USE=web is set. + emake CC=$(tc-getCC) DESTDIR="${D}" cgis html + fi +} + +src_install() { + dodoc Changelog CONTRIBUTING.md README.md THANKS UPGRADING + + # There is no way to install the CGIs unstripped from the top-level + # makefile, so descend into base/ here. The empty INSTALL_OPTS + # ensures that root:root: owns the nagios executables. + cd "${S}/base" || die + emake INSTALL_OPTS="" DESTDIR="${D}" install-unstripped + cd "${S}" || die + + # Otherwise this gets installed as 770 and you get "access denied" + # for some reason or other when starting nagios. The permissions + # on nagiostats are just for consistency (these should both get + # fixed upstream). + fperms 775 /usr/sbin/nagios /usr/sbin/nagiostats + + # INSTALL_OPTS are needed for most of install-basic, but we don't + # want them on the LIBEXECDIR, argh. + emake DESTDIR="${D}" install-basic + fowners root:root /usr/$(get_libdir)/nagios/plugins + + # Don't make the configuration owned by the nagios user, because + # then he can edit nagios.cfg and trick nagios into running as root + # and doing his bidding. + emake INSTALL_OPTS="" DESTDIR="${D}" install-config + + # No INSTALL_OPTS used in install-commandmode, thankfully. + emake DESTDIR="${D}" install-commandmode + + # The build system installs these directories, but portage assumes + # that the build system doesn't know what it's doing so we have to + # keepdir them, too. I guess you'll have to manually re-check the + # upstream build system forever to see if this is still necessary. + keepdir /var/lib/nagios{,/archives,/rw,/spool,/spool/checkresults} + + if use web; then + # There is no way to install the CGIs unstripped from the + # top-level makefile, so descend into cgi/ here. The empty + # INSTALL_OPTS ensures that root:root: owns the CGI executables. + cd "${S}/cgi" || die + emake INSTALL_OPTS="" DESTDIR="${D}" install-unstripped + cd "${S}" || die + + # install-html installs the new exfoliation theme + emake INSTALL_OPTS="" DESTDIR="${D}" install-html + + if use classicui; then + # This overwrites the already-installed exfoliation theme + emake INSTALL_OPTS="" DESTDIR="${D}" install-classicui + fi + + # Install cute Gentoo icons (bug #388323), setting their + # owner, group, and mode to match those of the rest of Nagios's + # images. + insinto /usr/share/nagios/htdocs/images/logos + doins "${WORKDIR}/${GENTOO_ICONS}"/*.* + fi + + newinitd startup/openrc-init nagios + + if use web ; then + if use apache2 ; then + # Install the Nagios configuration file for Apache. + insinto "/etc/apache2/modules.d" + doins "${T}/99_nagios4-r1.conf" + elif use lighttpd ; then + # Install the Nagios configuration file for Lighttpd. + insinto /etc/lighttpd + newins "${T}/lighttpd_nagios4-r1.conf" nagios.conf + else + ewarn "${CATEGORY}/${PF} only supports apache or lighttpd" + ewarn "out of the box. Since you are not using one of them, you" + ewarn "will have to configure your webserver yourself." + fi + fi +} + +pkg_postinst() { + + if use web; then + if use apache2 || use lighttpd ; then + if use apache2; then + elog "To enable the Nagios web front-end, please edit" + elog "${ROOT}etc/conf.d/apache2 and add \"-D NAGIOS -D PHP\"" + elog "to APACHE2_OPTS. Then Nagios will be available at," + elog + elif use lighttpd; then + elog "To enable the Nagios web front-end, please add" + elog "'include \"nagios.conf\"' to the lighttpd configuration" + elog "file at ${ROOT}etc/lighttpd/lighttpd.conf. Then Nagios" + elog "will be available at," + elog + fi + + elog " http://localhost/nagios/" + fi + fi + + elog + elog "If your kernel has /proc protection, nagios" + elog "will not be happy as it relies on accessing the proc" + elog "filesystem. You can fix this by adding nagios into" + elog "the group wheel, but this is not recomended." + elog + + if [ -n "${REPLACING_VERSIONS}" ]; then + ewarn "The local state directory for nagios has changed in v4.4.5," + ewarn "from ${EROOT}var/nagios to ${EROOT}var/lib/nagios. If you" + ewarn "wish to migrate your state to the new location, first stop" + ewarn "nagios and then run" + ewarn "" + ewarn " diff --recursive --brief ${EROOT}var/nagios ${EROOT}var/lib/nagios" + ewarn "" + ewarn "to identify any files that should be moved to the new" + ewarn "location. They can simply be moved with \"mv\" before" + ewarn "restarting nagios." + fi +} |