diff options
author | Jeroen Roovers <jer@gentoo.org> | 2018-02-08 20:39:42 +0100 |
---|---|---|
committer | Jeroen Roovers <jer@gentoo.org> | 2018-02-08 20:44:32 +0100 |
commit | d610d25991c7d3f5309d0c6f04ba98498fef05c1 (patch) | |
tree | 154b48152caed33166019bb7f8ecf8269eeefc56 /net-analyzer/smokeping | |
parent | app-office/kraft: Drop old (diff) | |
download | gentoo-d610d25991c7d3f5309d0c6f04ba98498fef05c1.tar.gz gentoo-d610d25991c7d3f5309d0c6f04ba98498fef05c1.tar.bz2 gentoo-d610d25991c7d3f5309d0c6f04ba98498fef05c1.zip |
net-analyzer/smokeping: Version 2.7.1.
Package-Manager: Portage-2.3.19, Repoman-2.3.6
Diffstat (limited to 'net-analyzer/smokeping')
-rw-r--r-- | net-analyzer/smokeping/Manifest | 1 | ||||
-rw-r--r-- | net-analyzer/smokeping/files/smokeping.init.5 | 56 | ||||
-rw-r--r-- | net-analyzer/smokeping/smokeping-2.7.1.ebuild | 147 |
3 files changed, 204 insertions, 0 deletions
diff --git a/net-analyzer/smokeping/Manifest b/net-analyzer/smokeping/Manifest index 27b1f05ca283..7502e5dc1a6b 100644 --- a/net-analyzer/smokeping/Manifest +++ b/net-analyzer/smokeping/Manifest @@ -1,3 +1,4 @@ DIST smokeping-2.6.11.tar.gz 417338 BLAKE2B e1ff2fc05fd8d39f42e1cc89831aa36ef0522716d1768dba9bdedf09f6c64cc2b35f30c3b727959dd93ed8922235729a27c85acceb1e1c3ec9c5f60e21455ab9 SHA512 928722832d6e01ffbb7b74542678f7b9d5fc22819c0feae164ce58b8d8a5595800f617c8a672e07cae4b2c4ccbfa4883a11438ba2a172fc2887abc2933388422 DIST smokeping-2.6.9.tar.gz 427185 BLAKE2B 3b626d852542f5e9e616ce88a8fd2fd773036822f10f548a1cec242f5d420ec67d940ee49c08da99f7e0815921251cb474b103c8c12c364f90651a4e74e9abf3 SHA512 ab3cec15fd9f90510f902da7ce5bac5915558cac198cc88f0ce193a53a0158c9055e28c8c6671cc6653ac42ab51346e1eb19e537f1ab5c234fd498c6b777499d DIST smokeping-2.7.0.tar.gz 8914621 BLAKE2B a139fdcaafe37c61695ea2e31e3ddaeb4389f754f28fd41318db120f2ae5f4b5f355ebfb5e0c852b48e2e6872194952bc3733ff5f6bcd2886859a1c276835121 SHA512 17ada10e2cdc7966e81e589dec603fe77bc0a273790734b36342ff2b8ac3d5bca6797f6eb95a6e2e22a576b7bb5d2ca4232b4fb23057b360de9c156d141ed0ca +DIST smokeping-2.7.1.tar.gz 8919251 BLAKE2B 91f348b573d5a7ce98e8b51c96d9f45bb0af21cae4b049ba113bfc97c60800d8fdea0c05eb5414ec861f07f30170abf64ee34e0e29899528c01283ddab0ecde8 SHA512 c7208a40725e5694813a0545d6f8b663bab49739fe716bed5fd85ed6258c1c0abde4a18a0678988fff067ecc7807c83313abf12c04b935377b0b7158f07d8626 diff --git a/net-analyzer/smokeping/files/smokeping.init.5 b/net-analyzer/smokeping/files/smokeping.init.5 new file mode 100644 index 000000000000..3c08c3fdc65e --- /dev/null +++ b/net-analyzer/smokeping/files/smokeping.init.5 @@ -0,0 +1,56 @@ +#!/sbin/openrc-run +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +command="/usr/bin/smokeping" +command_args="--nodaemon" +command_background="true" +command_user="smokeping:smokeping" +pidfile="/run/${RC_SVCNAME}.pid" +extra_started_commands="dump reload restore" +required_files="/etc/smokeping/config" + +depend() { + need net + use dns +} + +start_pre() { + export LC_ALL=C +} + +reload() { + ebegin "Reloading smokeping" + "${command}" --reload 2>&1 >/dev/null + eend $? +} + +dump() { + ebegin "Dumping smokeping rrd files to XML for backup or upgrade use" + if service_started "${myservice}" ; then + eerror "You need to stop smokeping before dumping files!" + return 1 + fi + for f in $(find /var/lib/smokeping -name '*.rrd' -print) ; do + f_xml=$(dirname $f)/$(basename $f .rrd).xml + rrdtool dump "$f" > "${f_xml}" + chown root:0 "${f_xml}" + done + eend $? +} + +restore() { + ebegin "Restoring smokeping rrd files from XML dump files" + if service_started "${myservice}" ; then + eerror "You need to stop smokeping before restoring files!" + return 1 + fi + for f in $(find /var/lib/smokeping -name '*.xml' -print) ; do + f_rrd=$(dirname $f)/$(basename $f .xml).rrd + mv -f "${f_rrd}" "${f_rrd}.bak" + chown root:0 "${f_rrd}.bak" + rrdtool restore "$f" "${f_rrd}" + chown smokeping:smokeping "${f_rrd}" + done + eend $? +} diff --git a/net-analyzer/smokeping/smokeping-2.7.1.ebuild b/net-analyzer/smokeping/smokeping-2.7.1.ebuild new file mode 100644 index 000000000000..7f9baf701feb --- /dev/null +++ b/net-analyzer/smokeping/smokeping-2.7.1.ebuild @@ -0,0 +1,147 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit autotools eutils multilib user systemd + +DESCRIPTION="A powerful latency measurement tool" +HOMEPAGE="http://oss.oetiker.ch/smokeping/" +SRC_URI="http://oss.oetiker.ch/smokeping/pub/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +IUSE="apache2 curl dig echoping ipv6 radius" + +DEPEND=" + >=dev-lang/perl-5.8.8-r8 + >=dev-perl/SNMP_Session-1.13 + >=net-analyzer/fping-2.4_beta2-r2[suid] + >=net-analyzer/rrdtool-1.2[graph,perl] + dev-perl/CGI + dev-perl/CGI-Session + dev-perl/Config-Grammar + dev-perl/Digest-HMAC + dev-perl/FCGI + dev-perl/IO-Socket-SSL + dev-perl/IO-Tty + dev-perl/Net-DNS + dev-perl/Net-OpenSSH + dev-perl/Net-SNMP + dev-perl/Net-Telnet + dev-perl/libwww-perl + dev-perl/perl-ldap + virtual/perl-libnet + || ( dev-perl/CGI-Fast <dev-perl/CGI-4 ) + !apache2? ( virtual/httpd-cgi ) + apache2? ( + >=www-apache/mod_perl-2.0.1 + www-apache/mod_fcgid + ) + curl? ( >=net-misc/curl-7.21.4 ) + dig? ( net-dns/bind-tools ) + echoping? ( >=net-analyzer/echoping-6.0.2 ) + ipv6? ( >=dev-perl/Socket6-0.20 ) + radius? ( dev-perl/Authen-Radius ) +" + +RDEPEND="${DEPEND}" + +pkg_setup() { + enewgroup smokeping + enewuser smokeping -1 -1 /var/lib/smokeping smokeping +} + +src_prepare() { + default + + sed -i -e '/^SUBDIRS = / s|thirdparty||g' Makefile.am || die + sed -i -e '/^perllibdir = / s|= .*|= $(libdir)|g' lib/Makefile.am || die + rm -r lib/{BER.pm,SNMP_Session.pm,SNMP_util.pm} || die # dev-perl/SNMP_Session + echo ${PV} > VERSION + + eautoreconf +} + +src_configure() { + econf \ + --sysconfdir=/etc/smokeping \ + --with-htdocs-dir=/var/www/localhost/smokeping +} + +src_compile() { + LC_ALL=C emake +} + +src_install() { + dodir /usr/$(get_libdir) + default + + newinitd "${FILESDIR}"/${PN}.init.5 ${PN} + systemd_dotmpfilesd "${FILESDIR}"/"${PN}".conf + systemd_dounit "${FILESDIR}"/"${PN}".service + + mv "${D}/etc/smokeping/basepage.html.dist" "${D}/etc/smokeping/basepage.html" + mv "${D}/etc/smokeping/config.dist" "${D}/etc/smokeping/config" + mv "${D}/etc/smokeping/smokemail.dist" "${D}/etc/smokeping/smokemail" + mv "${D}/etc/smokeping/smokeping_secrets.dist" "${D}/etc/smokeping/smokeping_secrets" + mv "${D}/etc/smokeping/tmail.dist" "${D}/etc/smokeping/tmail" + + sed -i \ + -e '/^imgcache/{s:\(^imgcache[ \t]*=\).*:\1 /var/lib/smokeping/.simg:}' \ + -e '/^imgurl/{s:\(^imgurl[ \t]*=\).*:\1 ../.simg:}' \ + -e '/^datadir/{s:\(^datadir[ \t]*=\).*:\1 /var/lib/smokeping:}' \ + -e '/^piddir/{s:\(^piddir[ \t]*=\).*:\1 /run/smokeping:}' \ + -e '/^cgiurl/{s#\(^cgiurl[ \t]*=\).*#\1 http://some.place.xyz/perl/smokeping.pl#}' \ + -e '/^smokemail/{s:\(^smokemail[ \t]*=\).*:\1 /etc/smokeping/smokemail:}' \ + -e '/^tmail/{s:\(^tmail[ \t]*=\).*:\1 /etc/smokeping/tmail:}' \ + -e '/^secrets/{s:\(^secrets[ \t]*=\).*:\1 /etc/smokeping/smokeping_secrets:}' \ + -e '/^template/{s:\(^template[ \t]*=\).*:\1 /etc/smokeping/basepage.html:}' \ + "${D}/etc/${PN}/config" || die + + sed -i \ + -e '/^<script/{s:cropper/:/cropper/:}' \ + "${D}/etc/${PN}/basepage.html" || die + + sed -i \ + -e 's/$FindBin::Bin\/..\/etc\/config/\/etc\/smokeping\/config/g' \ + "${D}/usr/bin/smokeping" "${D}/usr/bin/smokeping_cgi" || die + + sed -i \ + -e 's:etc/config.dist:/etc/smokeping/config:' \ + "${D}/usr/bin/tSmoke" || die + + sed -i \ + -e 's:/usr/etc/config:/etc/smokeping/config:' \ + "${D}/var/www/localhost/smokeping/smokeping.fcgi.dist" || die + + dodir /var/www/localhost/cgi-bin + mv "${D}/var/www/localhost/smokeping/smokeping.fcgi.dist" \ + "${D}/var/www/localhost/cgi-bin/smokeping.fcgi" + + fperms 700 /etc/${PN}/smokeping_secrets + + if use apache2 ; then + insinto /etc/apache2/modules.d + doins "${FILESDIR}/79_${PN}.conf" + fi + + # Create the files in /var for rrd file storage + keepdir /var/lib/${PN}/.simg + fowners smokeping:smokeping /var/lib/${PN} + + if use apache2 ; then + fowners apache:apache /var/lib/${PN}/.simg + fowners -R apache:apache /var/www + else + fowners smokeping:smokeping /var/lib/${PN}/.simg + fi + + fperms 775 /var/lib/${PN} /var/lib/${PN}/.simg +} + +pkg_postinst() { + chown smokeping:smokeping "${ROOT}/var/lib/${PN}" + chmod 755 "${ROOT}/var/lib/${PN}" +} |