You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/net-analyzer/netdata/netdata-1.16.0.ebuild

132 lines
2.9 KiB

# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python{2_7,3_5,3_6,3_7} )
inherit autotools fcaps linux-info python-r1 systemd user
if [[ ${PV} == *9999 ]] ; then
EGIT_REPO_URI="https://github.com/netdata/${PN}.git"
inherit git-r3
else
SRC_URI="https://github.com/netdata/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
fi
DESCRIPTION="Linux real time system monitoring, done right!"
HOMEPAGE="https://github.com/netdata/netdata https://my-netdata.io/"
LICENSE="GPL-3+ MIT BSD"
SLOT="0"
IUSE="caps +compression cpu_flags_x86_sse2 cups dbengine ipmi mysql nfacct nodejs postgres +python tor xen"
REQUIRED_USE="
mysql? ( python )
python? ( ${PYTHON_REQUIRED_USE} )
tor? ( python )"
# most unconditional dependencies are for plugins.d/charts.d.plugin:
RDEPEND="
app-misc/jq
>=app-shells/bash-4:0
|| (
net-analyzer/openbsd-netcat
net-analyzer/netcat
)
net-analyzer/tcpdump
net-analyzer/traceroute
net-misc/curl
net-misc/wget
sys-apps/util-linux
virtual/awk
caps? ( sys-libs/libcap )
cups? ( net-print/cups )
dbengine? (
dev-libs/libuv
app-arch/lz4
dev-libs/judy
dev-libs/openssl:=
)
compression? ( sys-libs/zlib )
ipmi? ( sys-libs/freeipmi )
nfacct? (
net-firewall/nfacct
net-libs/libmnl
)
nodejs? ( net-libs/nodejs )
python? (
${PYTHON_DEPS}
dev-python/pyyaml[${PYTHON_USEDEP}]
mysql? (
|| (
dev-python/mysqlclient[${PYTHON_USEDEP}]
dev-python/mysql-python[${PYTHON_USEDEP}]
)
)
postgres? ( dev-python/psycopg:2[${PYTHON_USEDEP}] )
tor? ( net-libs/stem[${PYTHON_USEDEP}] )
)
xen? (
app-emulation/xen-tools
dev-libs/yajl
)"
DEPEND="${RDEPEND}
virtual/pkgconfig"
: ${NETDATA_USER:=netdata}
: ${NETDATA_GROUP:=netdata}
FILECAPS=(
'cap_dac_read_search,cap_sys_ptrace+ep' 'usr/libexec/netdata/plugins.d/apps.plugin'
)
pkg_setup() {
linux-info_pkg_setup
enewgroup ${PN}
enewuser ${PN} -1 -1 / ${PN}
}
src_prepare() {
default
eautoreconf
}
src_configure() {
econf \
--localstatedir="${EPREFIX}"/var \
--with-user=${NETDATA_USER} \
$(use_enable cups plugin-cups) \
$(use_enable dbengine) \
$(use_enable nfacct plugin-nfacct) \
$(use_enable ipmi plugin-freeipmi) \
$(use_enable xen plugin-xenstat) \
$(use_enable cpu_flags_x86_sse2 x86-sse) \
$(use_with compression zlib)
}
src_install() {
default
rm -rf "${D}/var/cache" || die
# Remove unneeded .keep files
find "${ED}" -name ".keep" -delete || die
fowners -Rc ${NETDATA_USER}:${NETDATA_GROUP} /var/log/netdata
keepdir /var/log/netdata
fowners -Rc ${NETDATA_USER}:${NETDATA_GROUP} /var/lib/netdata
keepdir /var/lib/netdata
keepdir /var/lib/netdata/registry
fowners -Rc root:${NETDATA_GROUP} /usr/share/${PN}
newinitd system/netdata-openrc ${PN}
systemd_dounit system/netdata.service
insinto /etc/netdata
doins system/netdata.conf
echo "CONFIG_PROTECT=\"${EPREFIX}/usr/$(get_libdir)/netdata/conf.d\"" > 99netdata
doenvd 99netdata
}