From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: net-misc/kea/
Date: Sat, 26 Jul 2025 21:33:11 +0000 (UTC) [thread overview]
Message-ID: <1753565537.09940bb9388d1b01cdd8ffd6bd03d338ff581665.sam@gentoo> (raw)
commit: 09940bb9388d1b01cdd8ffd6bd03d338ff581665
Author: Peter Leese <inbox <AT> peterleese <DOT> org>
AuthorDate: Sat Jul 19 20:34:34 2025 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Jul 26 21:32:17 2025 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=09940bb9
net-misc/kea: add 2.6.4
Bug: https://bugs.gentoo.org/960312
Signed-off-by: Peter Leese <inbox <AT> peterleese.org>
Part-of: https://github.com/gentoo/gentoo/pull/43074
Signed-off-by: Sam James <sam <AT> gentoo.org>
net-misc/kea/Manifest | 1 +
net-misc/kea/kea-2.6.4.ebuild | 253 ++++++++++++++++++++++++++++++++++++++++++
2 files changed, 254 insertions(+)
diff --git a/net-misc/kea/Manifest b/net-misc/kea/Manifest
index a52653a425a3..c96e0d961979 100644
--- a/net-misc/kea/Manifest
+++ b/net-misc/kea/Manifest
@@ -1,2 +1,3 @@
DIST kea-2.4.1.tar.gz 10487415 BLAKE2B 21037d28f812ebbc65ae34f5151a209e9c74f6aa005e96ed7cbbf6e4250e6c40eecf5d257b852bf01663a0982b5401008dd6a51a16d861b30a83549f827538b6 SHA512 b8a3b6f2cae213fd9826c37568c71d3458f52eed973dbe437a1d0974dafa026635a730d828c6ff03b32e030be57d75a7914a8ca313833e91d9996b6a05b2b224
DIST kea-2.6.3.tar.gz 10498882 BLAKE2B 7a8549ceb86dccaa2ca8d541cbfd27618ccf8aeedfb8ff26f9d0e10cfd8a103efd70320a55dc318a84094a7764c560c100cf6e10421ae6d40e6c62891570c604 SHA512 d7781c0b95529bfe89c19615c1dd5952fd4c4b60274e187a641992dad81ef5af921dfb15050ec43169a0c2ad267639642b2e294c5d43405f85a5fb11bb1a939a
+DIST kea-2.6.4.tar.gz 10498705 BLAKE2B 491a73dd0d4f7ffc068642d14a597158b70a5e6042967fd1f367f3269dd84bc4f1526b4158c7da8a474e385528b74985ac542c1591c458c6a0df42fc627b612d SHA512 f4dce03a30ba5c0a1a0d97730d7cccc0876188fb7d165e8f67cf4df906cdf157049d651d0a38b3a01f33e5b0ac7b9e8b5b479543e06c89da197d6ef9d0937a18
diff --git a/net-misc/kea/kea-2.6.4.ebuild b/net-misc/kea/kea-2.6.4.ebuild
new file mode 100644
index 000000000000..b52c810909cc
--- /dev/null
+++ b/net-misc/kea/kea-2.6.4.ebuild
@@ -0,0 +1,253 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{11..14} )
+inherit autotools eapi9-ver flag-o-matic python-r1 systemd tmpfiles
+
+DESCRIPTION="High-performance production grade DHCPv4 & DHCPv6 server"
+HOMEPAGE="https://www.isc.org/kea/"
+
+if [[ ${PV} == *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://gitlab.isc.org/isc-projects/kea.git"
+else
+ SRC_URI="https://downloads.isc.org/isc/kea/${PV}/${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm64 ~x86"
+fi
+
+LICENSE="MPL-2.0"
+SLOT="0"
+IUSE="debug doc mysql +openssl postgres shell test"
+
+REQUIRED_USE="shell? ( ${PYTHON_REQUIRED_USE} )"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+ >=dev-libs/boost-1.66:=
+ dev-libs/log4cplus:=
+ mysql? (
+ app-arch/zstd:=
+ dev-db/mysql-connector-c:=
+ dev-libs/openssl:=
+ sys-libs/zlib:=
+ )
+ !openssl? ( dev-libs/botan:2=[boost] )
+ openssl? ( dev-libs/openssl:0= )
+ postgres? ( dev-db/postgresql:* )
+ shell? ( ${PYTHON_DEPS} )
+"
+DEPEND="${COMMON_DEPEND}
+ test? ( dev-cpp/gtest )
+"
+RDEPEND="${COMMON_DEPEND}
+ acct-group/dhcp
+ acct-user/dhcp
+"
+BDEPEND="
+ doc? (
+ $(python_gen_any_dep '
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]
+ ')
+ )
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.2.0-openssl-version.patch
+)
+
+python_check_deps() {
+ use doc || return 0;
+ python_has_version "dev-python/sphinx[${PYTHON_USEDEP}]" \
+ "dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ if use doc || use shell; then
+ python_setup
+ fi
+}
+
+src_prepare() {
+ default
+
+ # set shebang before autotools
+ if use shell; then
+ sed -e 's:^#!@PYTHON@:#!/usr/bin/env python3:' \
+ -i src/bin/shell/kea-shell.in || die
+ fi
+
+ # fix gtest detection
+ sed -e "s:dir/lib/:dir/$(get_libdir)/:" \
+ -i m4macros/ax_gtest.m4 || die
+
+ # skip shell tests that fail to launch daemon in sandbox
+ # may fail to find a suitable interface for generating a DUID-LLT
+ sed -e '/TESTS += $(SHTESTS)$/d' \
+ -i src/bin/dhcp4/tests/Makefile.am \
+ -i src/bin/dhcp6/tests/Makefile.am || die
+ sed -e '/TESTS = $(SHTESTS)$/d' \
+ -i src/bin/keactrl/tests/Makefile.am || die
+
+ # skip shell tests that require a running instance of MySQL
+ if use mysql; then
+ sed -e "/SHTESTS += mysql_tests.sh$/d" \
+ -i src/bin/admin/tests/Makefile.am || die
+ fi
+
+ # skip shell tests that require a running instance of PgSQL
+ if use postgres; then
+ sed -e "/SHTESTS += pgsql_tests.sh$/d" \
+ -i src/bin/admin/tests/Makefile.am || die
+ fi
+
+ # do not create /run
+ sed -e '/$(DESTDIR)${runstatedir}/d' \
+ -i Makefile.am || die
+
+ eautoreconf
+}
+
+src_configure() {
+ # -Werror=odr
+ # https://bugs.gentoo.org/861617
+ #
+ # I would truly love to submit an upstream bug but their self-hosted gitlab
+ # won't let me sign up. -- Eli
+ filter-lto
+
+ local myeconfargs=(
+ --disable-install-configurations
+ --disable-rpath
+ # manually installed
+ --disable-shell
+ --disable-static
+ --enable-generate-messages
+ --enable-logger-checks
+ --enable-perfdhcp
+ --localstatedir="${EPREFIX}/var"
+ --runstatedir="${EPREFIX}/run"
+ --without-werror
+ --with-log4cplus
+ $(use_enable debug)
+ $(use_enable doc generate-docs)
+ $(use_with mysql)
+ $(use_with openssl)
+ $(use_with postgres pgsql)
+ $(usev test --with-gtest="${EPREFIX}/usr")
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_test() {
+ local GTEST_SKIP_TESTS=(
+ # may fail when checking addresses on detected interfaces
+ IfaceMgrTest*
+
+ # may fail to find a suitable interface for generating a DUID-LLT
+ JSONFileBackendTest*
+ CtrlChannelDhcpv6SrvTest*
+
+ # require srv_config_marker_file.txt similarly generated by a disabled test
+ LoadUnloadDhcpv6SrvTest*
+ )
+
+ # tests that require a running instance of MySQL
+ use mysql && GTEST_SKIP_TESTS+=(
+ *MySql*
+ *MySQL*
+ # conditional tests for MySQL
+ Dhcpv*SrvTest.checkConfigFiles
+ )
+
+ # tests that require a running instance of PgSQL
+ use postgres && GTEST_SKIP_TESTS+=(
+ *PgSql*
+ *PgSQL*
+ # conditional tests for PgSQL
+ Dhcpv*SrvTest.checkConfigFiles
+ )
+
+ local -x GTEST_FILTER
+ [[ -n ${GTEST_SKIP_TESTS[*]} ]] && GTEST_FILTER+="-$( IFS=':'; echo "${GTEST_SKIP_TESTS[*]}")"
+
+ default
+}
+
+install_shell() {
+ python_domodule src/bin/shell/*.py
+ python_doscript src/bin/shell/kea-shell
+
+ # fix path to import kea modules
+ sed -e "/^sys.path.append/s|(.*)|('$(python_get_sitedir)/${PN}')|" \
+ -i "${ED}"/usr/lib/python-exec/${EPYTHON}/kea-shell || die
+}
+
+src_install() {
+ emake -j1 install DESTDIR="${D}"
+
+ if use shell; then
+ python_moduleinto ${PN}
+ python_foreach_impl install_shell
+ fi
+
+ dodoc -r doc/examples
+
+ rm -f "${ED}"/usr/share/doc/${P}/COPYING
+
+ diropts -m 0750 -o root -g dhcp
+ dodir /etc/kea
+ insopts -m 0640 -o root -g dhcp
+ insinto /etc/kea
+ newins doc/examples/agent/comments.json kea-ctrl-agent.conf.sample
+ newins doc/examples/kea6/simple.json kea-dhcp6.conf.sample
+ newins doc/examples/kea4/single-subnet.json kea-dhcp4.conf.sample
+ newins doc/examples/ddns/comments.json kea-dhcp-ddns.conf.sample
+
+ # set log to syslog by default
+ sed -e 's/"output": "stdout"/"output": "syslog"/' \
+ -i "${ED}"/etc/kea/*.conf.sample || die
+
+ newconfd "${FILESDIR}"/${PN}-confd-r2 ${PN}
+ newinitd "${FILESDIR}"/${PN}-initd-r2 ${PN}
+
+ systemd_dounit "${FILESDIR}"/${PN}-ctrl-agent.service-r2
+ systemd_dounit "${FILESDIR}"/${PN}-dhcp-ddns.service-r2
+ systemd_dounit "${FILESDIR}"/${PN}-dhcp4.service-r2
+ systemd_dounit "${FILESDIR}"/${PN}-dhcp6.service-r2
+
+ newtmpfiles "${FILESDIR}"/${PN}.tmpfiles.conf ${PN}.conf
+
+ keepdir /var/lib/${PN} /var/log/${PN}
+ fowners -R dhcp:dhcp /var/lib/${PN} /var/log/${PN}
+ fperms 750 /var/lib/${PN} /var/log/${PN}
+
+ find "${ED}" -type f -name "*.la" -delete || die
+}
+
+pkg_postinst() {
+ tmpfiles_process ${PN}.conf
+
+ if ver_replacing -lt 2.6; then
+ ewarn "Several changes have been made for daemons:"
+ ewarn " To comply with common practices for this package,"
+ ewarn " config paths by default has been changed as below:"
+ ewarn " /etc/kea/kea-dhcp4.conf"
+ ewarn " /etc/kea/kea-dhcp6.conf"
+ ewarn " /etc/kea/kea-dhcp-ddns.conf"
+ ewarn " /etc/kea/kea-ctrl-agent.conf"
+ ewarn
+ ewarn " Daemons are launched by default with the unprivileged user 'dhcp'"
+ ewarn
+ ewarn "Please check your configuration!"
+ fi
+
+ if ! has_version net-misc/kea; then
+ elog "See config files in:"
+ elog " ${EROOT}/etc/kea/*.sample"
+ elog " ${EROOT}/usr/share/doc/${PF}/examples"
+ fi
+}
next reply other threads:[~2025-07-26 21:33 UTC|newest]
Thread overview: 94+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-26 21:33 Sam James [this message]
-- strict thread matches above, loose matches on Subject: below --
2025-10-09 20:44 [gentoo-commits] repo/gentoo:master commit in: net-misc/kea/ Sam James
2025-10-09 20:44 Sam James
2025-10-09 20:44 Sam James
2025-09-06 14:46 Sam James
2025-09-06 14:30 Sam James
2025-09-06 14:30 Sam James
2025-09-06 14:30 Sam James
2025-08-23 7:33 Sam James
2025-08-21 1:02 Sam James
2025-07-26 21:33 Sam James
2025-07-20 15:53 Sam James
2025-05-28 20:53 Andreas Sturmlechner
2025-05-28 4:56 Dennis Lamm
2025-05-14 19:00 Andreas Sturmlechner
2025-05-14 19:00 Andreas Sturmlechner
2025-02-23 1:45 Sam James
2025-02-20 10:20 Michał Górny
2024-05-08 23:31 Sam James
2024-02-29 5:44 Sam James
2024-01-25 20:31 Dennis Lamm
2023-09-30 11:14 Dennis Lamm
2023-09-30 11:14 Dennis Lamm
2022-10-19 4:48 Dennis Lamm
2022-10-19 4:48 Dennis Lamm
2022-05-18 12:27 Lars Wendler
2022-05-18 12:27 Lars Wendler
2022-05-18 12:27 Lars Wendler
2022-03-14 6:39 Dennis Lamm
2021-10-04 20:40 Sam James
2021-09-08 4:53 Dennis Lamm
2021-08-15 7:56 Lars Wendler
2021-08-15 7:28 Lars Wendler
2021-08-15 7:28 Lars Wendler
2021-08-08 13:15 Dennis Lamm
2021-08-08 13:15 Dennis Lamm
2021-07-08 17:09 Dennis Lamm
2021-07-03 9:43 Lars Wendler
2021-06-16 18:11 Lars Wendler
2021-05-14 10:04 David Seifert
2021-05-13 13:55 David Seifert
2021-02-15 15:14 Thomas Deutschmann
2020-12-19 16:06 Lars Wendler
2020-11-25 9:26 Lars Wendler
2020-07-30 8:05 Lars Wendler
2020-07-30 8:05 Lars Wendler
2020-06-29 14:27 Lars Wendler
2020-06-29 14:27 Lars Wendler
2020-05-27 12:01 Lars Wendler
2020-05-27 12:01 Lars Wendler
2020-04-30 8:21 Lars Wendler
2020-04-30 8:21 Lars Wendler
2020-03-27 8:58 Lars Wendler
2020-03-27 8:58 Lars Wendler
2020-02-27 8:59 Lars Wendler
2020-02-27 8:59 Lars Wendler
2020-02-27 8:59 Lars Wendler
2020-01-31 14:00 Lars Wendler
2020-01-31 14:00 Lars Wendler
2019-12-19 15:37 Lars Wendler
2019-12-19 15:37 Lars Wendler
2019-11-28 12:23 Lars Wendler
2019-11-28 12:23 Lars Wendler
2019-10-31 12:05 Lars Wendler
2019-10-07 15:25 Lars Wendler
2019-10-07 15:25 Lars Wendler
2019-10-07 15:25 Lars Wendler
2019-09-12 6:09 Lars Wendler
2019-08-29 12:50 Lars Wendler
2019-08-29 12:50 Lars Wendler
2019-08-29 12:50 Lars Wendler
2018-12-18 0:51 Thomas Deutschmann
2018-12-10 11:45 Lars Wendler
2018-12-10 9:36 Lars Wendler
2018-12-03 15:07 Lars Wendler
2018-11-27 8:57 Lars Wendler
2018-11-27 8:57 Lars Wendler
2018-11-27 8:57 Lars Wendler
2018-07-12 9:33 Lars Wendler
2018-07-12 9:26 Lars Wendler
2018-07-12 8:06 Lars Wendler
2018-07-12 8:06 Lars Wendler
2018-06-16 21:10 Lars Wendler
2018-06-16 21:10 Lars Wendler
2018-02-14 13:55 Lars Wendler
2018-02-14 10:45 Lars Wendler
2018-02-05 13:46 Lars Wendler
2017-11-06 9:40 Lars Wendler
2017-11-06 9:40 Lars Wendler
2017-10-04 7:42 Alon Bar-Lev
2017-05-08 11:30 Tony Vroon
2016-10-21 12:46 Tony Vroon
2016-01-07 15:56 Tony Vroon
2016-01-07 15:53 Tony Vroon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1753565537.09940bb9388d1b01cdd8ffd6bd03d338ff581665.sam@gentoo \
--to=sam@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox