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
+}

Reply via email to