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/ospd-openvas/ospd-openvas-21.4.4-r4.ebuild

77 lines
1.9 KiB

# Copyright 2020-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{8..10} )
DISTUTILS_USE_PEP517=poetry
inherit distutils-r1 systemd
DESCRIPTION="This is an OSP server implementation to allow GVM to remotely control OpenVAS"
HOMEPAGE="https://www.greenbone.net https://github.com/greenbone/ospd-openvas"
SRC_URI="https://github.com/greenbone/ospd-openvas/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="AGPL-3+ GPL-2+"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="doc"
DEPEND="
acct-user/gvm
dev-python/defusedxml[${PYTHON_USEDEP}]
dev-python/deprecated[${PYTHON_USEDEP}]
dev-python/lxml[${PYTHON_USEDEP}]
>=dev-python/packaging-20.4[${PYTHON_USEDEP}]
dev-python/paramiko[${PYTHON_USEDEP}]
>=dev-python/psutil-5.7.0[${PYTHON_USEDEP}]
>=dev-python/redis-py-3.5.3[${PYTHON_USEDEP}]
!net-analyzer/ospd[${PYTHON_USEDEP}]
"
RDEPEND="
${DEPEND}
app-admin/sudo
>=net-analyzer/openvas-scanner-${PV}
"
distutils_enable_tests unittest
src_prepare() {
default
# https://github.com/greenbone/ospd-openvas/pull/649
sed -i '/^Group=gvm/d' config/ospd-openvas.service || die
# https://github.com/greenbone/ospd-openvas/pull/653
sed -i 's;/usr/local/bin/;/usr/bin/;' config/ospd-openvas.service || die
}
python_compile() {
if use doc; then
bash "${S}"/docs/generate || die
HTML_DOCS=( "${S}"/docs/. )
fi
distutils-r1_python_compile
}
python_install() {
distutils-r1_python_install
insinto /etc/gvm
doins config/${PN}.conf
if ! use prefix; then
fowners -R gvm:gvm /etc/gvm
fi
newinitd "${FILESDIR}/${PN}.initd" "${PN}"
newconfd "${FILESDIR}/${PN}.confd" "${PN}"
systemd_dounit config/${PN}.service
# OSPD OpenVAS attempts to call openvas via sudo as network security
# scanning often requires priviliged operations.
insinto /etc/sudoers.d
newins - openvas <<-EOF
gvm ALL = NOPASSWD: /usr/bin/openvas
EOF
}