commit: 790469e11da87901b4f4d7c721e50e5a1173032d Author: Giuseppe Foti <foti.giuseppe <AT> gmail <DOT> com> AuthorDate: Mon Feb 2 19:12:05 2026 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Sun Mar 1 00:50:28 2026 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=790469e1
net-analyzer/gvmd: add 26.18.1 Signed-off-by: Giuseppe Foti <foti.giuseppe <AT> gmail.com> Part-of: https://github.com/gentoo/gentoo/pull/45604 Closes: https://github.com/gentoo/gentoo/pull/45604 Signed-off-by: Sam James <sam <AT> gentoo.org> net-analyzer/gvmd/Manifest | 1 + net-analyzer/gvmd/files/gvmd-22.init | 4 +- .../gvmd-26.18.1-remove-unworking-tests.patch | 35 ++++++ net-analyzer/gvmd/files/gvmd.service.conf | 2 + net-analyzer/gvmd/gvmd-26.18.1.ebuild | 140 +++++++++++++++++++++ 5 files changed, 180 insertions(+), 2 deletions(-) diff --git a/net-analyzer/gvmd/Manifest b/net-analyzer/gvmd/Manifest index ea519af55a56..76d530f9b4c4 100644 --- a/net-analyzer/gvmd/Manifest +++ b/net-analyzer/gvmd/Manifest @@ -1,2 +1,3 @@ DIST gvmd-25.2.1.tar.gz 1123704 BLAKE2B 598ed09b9d77ef472cc33d2c180ea32a6eb029e648edb70fc49eac3ed641c7de4d4129af0c9d92fcaf169580d0e8aa521d7eb226132e43693bd1cfff88089c24 SHA512 6d5474bf6972e08013f51e46b73dfb07b42bc26c15b560a9e5d3574449510371bad4a78dc72619e6bedede78fee287ab660b19b0026d290807052087aa960b41 +DIST gvmd-26.18.1.tar.gz 1270941 BLAKE2B e1055824d687e820b5a89da4a1f89d1dc09dd16f537dc107e4f318615fd5ed497258f68b77620be32ce6797e51de02ffe4537ae11096d322cc7481db25754347 SHA512 0da3d83a220583ac31ca527f7c3080d6e4a0c86fa3312d09397cc90eaaef11d83229b39a7edf42c8bb204b5e3d92d35cac413bf7b90503efbc53e9991e5e12cd DIST gvmd-26.3.0.tar.gz 1217037 BLAKE2B a2a60a04910bee6dac68bb6fd11aa3baba8fb70a506e131e877a82a931858c9c46e8c5dd272794097883dda542fc90d3eee2d025739fd7caa63bf782fb7dc8ce SHA512 cfb351b4c6cd6391f888c0031f44b72a48a16e355798f136ebec063df5561d36726332bf3fd257f7559bde5833990ac08598993d125f4e45e8eac3c595fdf6f7 diff --git a/net-analyzer/gvmd/files/gvmd-22.init b/net-analyzer/gvmd/files/gvmd-22.init index 834a84668c90..784ac4fd3d80 100644 --- a/net-analyzer/gvmd/files/gvmd-22.init +++ b/net-analyzer/gvmd/files/gvmd-22.init @@ -14,8 +14,8 @@ pidfile="/run/gvmd/gvmd.pid" retry="${GVMD_TIMEOUT}" depend() { - after bootmisc postgresql postgresql-9.6 postgresql-10 postgresql-11 postgresql-12 postgresql-13 postgresql-14 postgresql-15 postgresql-16 postgresql-17 - want postgresql postgresql-9.6 postgresql-10 postgresql-11 postgresql-12 postgresql-13 postgresql-14 postgresql-15 postgresql-16 postgresql-17 + after bootmisc postgresql postgresql-9.6 postgresql-10 postgresql-11 postgresql-12 postgresql-13 postgresql-14 postgresql-15 postgresql-16 postgresql-17 postgresql-18 + want postgresql postgresql-9.6 postgresql-10 postgresql-11 postgresql-12 postgresql-13 postgresql-14 postgresql-15 postgresql-16 postgresql-17 postgresql-18 need localmount net ospd-openvas } diff --git a/net-analyzer/gvmd/files/gvmd-26.18.1-remove-unworking-tests.patch b/net-analyzer/gvmd/files/gvmd-26.18.1-remove-unworking-tests.patch new file mode 100644 index 000000000000..e9eb667f5473 --- /dev/null +++ b/net-analyzer/gvmd/files/gvmd-26.18.1-remove-unworking-tests.patch @@ -0,0 +1,35 @@ +# Remove tests that don't work in the network sandbox +# Strip out sanitizer from tests + +--- a/cmake/add_unit_test.cmake ++++ b/cmake/add_unit_test.cmake +@@ -22,14 +22,16 @@ macro(add_unit_test _baseName _objects _extraSource) + ${_objects} + ${TEST_TARGET_EXTRA_SRC} + ) +- target_compile_options(${_testName} PRIVATE "-fsanitize=address") +- target_link_options(${_testName} PRIVATE "-fsanitize=address") ++# target_compile_options(${_testName} PRIVATE "-fsanitize=address") ++# target_link_options(${_testName} PRIVATE "-fsanitize=address") + add_test(${_testName} ${_testName}) ++#[===[ + set_tests_properties( + ${_testName} + PROPERTIES + ENVIRONMENT "ASAN_OPTIONS=detect_leaks=1:halt_on_error=1:abort_on_error=1" + ) ++]===] + target_link_libraries( + ${_testName} + cgreen +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -428,7 +428,7 @@ set( + $<TARGET_OBJECTS:all-misc-obj> + $<TARGET_OBJECTS:all-sql-obj> + ) +-add_unit_test(gmp-tickets "${ALL_OBJECTS}" "${ALL_GMP_SRC}") ++#add_unit_test(gmp-tickets "${ALL_OBJECTS}" "${ALL_GMP_SRC}") + + set( + ALL_OBJECTS diff --git a/net-analyzer/gvmd/files/gvmd.service.conf b/net-analyzer/gvmd/files/gvmd.service.conf index 8edc19c97eae..4ea1442d4a7a 100644 --- a/net-analyzer/gvmd/files/gvmd.service.conf +++ b/net-analyzer/gvmd/files/gvmd.service.conf @@ -8,6 +8,7 @@ After=postgresql-14.service After=postgresql-15.service After=postgresql-16.service After=postgresql-17.service +After=postgresql-18.service Wants=postgresql-9.6.service Wants=postgresql-10.service Wants=postgresql-11.service @@ -17,6 +18,7 @@ Wants=postgresql-14.service Wants=postgresql-15.service Wants=postgresql-16.service Wants=postgresql-17.service +Wants=postgresql-18.service PartOf=gvm.target [Service] diff --git a/net-analyzer/gvmd/gvmd-26.18.1.ebuild b/net-analyzer/gvmd/gvmd-26.18.1.ebuild new file mode 100644 index 000000000000..eeef96c1df11 --- /dev/null +++ b/net-analyzer/gvmd/gvmd-26.18.1.ebuild @@ -0,0 +1,140 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake systemd toolchain-funcs + +DESCRIPTION="Greenbone vulnerability manager, previously named openvas-manager" +HOMEPAGE="https://www.greenbone.net https://github.com/greenbone/gvmd/" +SRC_URI="https://github.com/greenbone/gvmd/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="AGPL-3+" +SLOT="0" +KEYWORDS="~amd64" +IUSE="doc test" +RESTRICT="!test? ( test )" + +DEPEND=" + acct-user/gvm + app-crypt/gpgme:1= + dev-libs/libbsd + >=dev-db/postgresql-9.6:=[uuid] + >=dev-libs/cJSON-1.7.14 + >=dev-libs/glib-2.42:2 + >=dev-libs/libical-1.0.0:= + >=net-analyzer/gvm-libs-22.34 + >=net-libs/gnutls-3.2.15:=[tools] +" + +# gvmd (optionally) uses xml_split from XML-Twig at runtime. And texlive +# and xmlstartlet are used for (PDF) report generator at runtime. +RDEPEND=" + ${DEPEND} + app-text/xmlstarlet + dev-perl/XML-Twig + dev-texlive/texlive-latexextra + >=net-analyzer/ospd-openvas-22.4 + >=dev-db/pg-gvm-22.4 +" +BDEPEND=" + app-alternatives/yacc + app-alternatives/lex + virtual/pkgconfig + doc? ( + app-text/doxygen[dot] + app-text/xmltoman + app-text/htmldoc + dev-libs/libxslt + ) + test? ( dev-libs/cgreen ) +" + +PATCHES=( + # Remove tests that don't work in the network sandbox + "${FILESDIR}/${P}-remove-unworking-tests.patch" +) + +src_prepare() { + cmake_src_prepare + # QA-Fix | Use correct FHS/Gentoo policy paths for 9.0.0 + sed -i -e "s*share/doc/gvm/html/*share/doc/${PF}/html/*g" docs/CMakeLists.txt || die + sed -i -e "s*/doc/gvm/*/doc/${PF}/*g" CMakeLists.txt || die + # Fix errors in Doxigen OUTPUT_DIRECTORY paths + sed -i -e "s*@/doc/generated*@/docs/generated*g" docs/Doxyfile.in || die + sed -i -e "s*@/doc/generated*@/docs/generated*g" docs/Doxyfile_full.in || die + sed -i -e "s*@/doc/generated*@/docs/generated*g" docs/Doxyfile_xml.in || die + # QA-Fix | Remove !CLANG Doxygen warnings for 9.0.0 + if use doc; then + if ! tc-is-clang; then + local f + for f in docs/*.in + do + sed -i \ + -e "s*CLANG_ASSISTED_PARSING = NO*#CLANG_ASSISTED_PARSING = NO*g" \ + -e "s*CLANG_OPTIONS*#CLANG_OPTIONS*g" \ + "${f}" || die "couldn't disable CLANG parsing" + done + fi + fi +} + +src_configure() { + local mycmakeargs=( + "-DLOCALSTATEDIR=${EPREFIX}/var" + "-DSYSCONFDIR=${EPREFIX}/etc" + "-DLIBDIR=${EPREFIX}/usr/$(get_libdir)" + "-DSBINDIR=${EPREFIX}/usr/bin" + "-DSYSTEMD_SERVICE_DIR=$(systemd_get_systemunitdir)" + "-DGVM_DEFAULT_DROP_USER=gvm" + ) + cmake_src_configure +} + +src_compile() { + cmake_src_compile + if use doc; then + cmake_build -C "${BUILD_DIR}" doc + cmake_build doc-full -C "${BUILD_DIR}" doc + fi + if use test; then + cmake_build tests + fi + cmake_build rebuild_cache +} + +src_install() { + if use doc; then + local HTML_DOCS=( "${BUILD_DIR}"/docs/generated/html/. ) + fi + cmake_src_install + + insinto /etc/gvm/sysconfig + newins "${FILESDIR}/${PN}-daemon-22.conf" "${PN}-daemon.conf" + if ! use prefix; then + fowners -R gvm:gvm /etc/gvm + fi + + newinitd "${FILESDIR}/${PN}-22.init" "${PN}" + newconfd "${FILESDIR}/${PN}-daemon-22.conf" "${PN}" + + # Set proper permissions on required files/directories + keepdir /var/lib/gvm/gvmd + if ! use prefix; then + fowners -R gvm:gvm /var/lib/gvm + fi + + systemd_install_serviced "${FILESDIR}/gvmd.service.conf" \ + ${PN}.service +} + +pkg_postinst() { + if [[ ${REPLACING_VERSIONS} ]]; then + elog "If you are upgrading from a previous version, you need to update the database version." + elog "Please, create the running directory and give write permission to the database user" + elog "then run gvmd as the gvm user with --migrate option:" + elog "~# mkdir /run/gvmd" + elog "~# setfacl -m u:gvm:rwx /run/gvmd/" + elog "~# sudo -u gvm gvmd --migrate" + fi +}
