Change:
Was announced multiple times, now it is EOL with release 4.2.3 We should remove it before branching 22.05.

Discussion:
}; dhcp = mkOption { <del> type = types.enum [ "dhclient" "dhcpcd" "internal" ]; </del> <ins> type = types.enum [ "dhcpcd" "internal" ]; </ins> default = "internal"; description = '' Which program (or internal library) should be used for DHCP.

"d /etc/ipsec.d 0700 root root -" "d /var/lib/NetworkManager-fortisslvpn 0700 root root -" <del> "d /var/lib/dhclient 0755 root root -" </del> "d /var/lib/misc 0755 root root -" # for dnsmasq.leases ];

{ stdenv, lib, fetchFromGitHub, makeWrapper <del> , bridge-utils, iproute2, lxc, openvswitch, docker, busybox, dhcpcd, dhcp </del> <ins> , bridge-utils, iproute2, lxc, openvswitch, docker, busybox, dhcpcd </ins> }: stdenv.mkDerivation {

installPhase = '' install -D pipework $out/bin/pipework wrapProgram $out/bin/pipework --prefix PATH :  <del> ${lib.makeBinPath [ bridge-utils iproute2 lxc openvswitch docker busybox dhcpcd dhcp ]}; </del> <ins> ${lib.makeBinPath [ bridge-utils iproute2 lxc openvswitch docker busybox dhcpcd ]}; </ins> ''; meta = with lib; { description = "Software-Defined Networking tools for LXC";

{ stdenv, fetchurl, fetchpatch, perl, file, nettools, iputils, iproute2, makeWrapper , coreutils, gnused, openldap ? null , buildPackages, lib <ins> # client and relay are end of life, remove after 4.4.3 , withClient ? false , withRelay ? false </ins> }: stdenv.mkDerivation rec { pname = "dhcp"; <del> version = "4.4.2-P1"; </del> <ins> version = "4.4.3"; </ins> src = fetchurl { url = "https://ftp.isc.org/isc/dhcp/${version}/${pname}-${version}.tar.gz"; <del> sha256 = "06jsr0cg5rsmyibshrpcb9za0qgwvqccashdma7mlm1rflrh8pmh"; </del> <ins> sha256 = "sha256-Dj7GtMKgXsAUiHS82ZmmbQVRg3jXdCH2B/sLydATWBg="; </ins> }; patches =

# patch, the hostname doesn't get set properly if the old # hostname (i.e. before reboot) is equal to the new hostname. ./set-hostname.patch <del> (fetchpatch { # upstream build fix against -fno-common compilers like >=gcc-10 url = "https://gitlab.isc.org/isc-projects/dhcp/-/commit/6c7e61578b1b449272dbb40dd8b98d03dad8a57a.patch"; sha256 = "1g37ix0yf9zza8ri8bg438ygcjviniblfyb20y4gzc8lysy28m8b"; }) # Fix parallel build failure, the patch is pending upstream inclusion: #  https://gitlab.isc.org/isc-projects/dhcp/-/merge_requests/76 (fetchpatch { name = "parallel-make.patch"; url = "https://gitlab.isc.org/isc-projects/dhcp/-/commit/46d101b97c5a3b19a3f63f7b60e5f88994a64e22.patch"; sha256 = "1y3nsmqjzcg4bhp1xmqp47v7rkl3bpcildkx6mlrg255yvxapmdp"; }) </del> ]; nativeBuildInputs = [ perl makeWrapper ];

--replace /sbin/ip ${iproute2}/sbin/ip wrapProgram "$out/sbin/dhclient-script" --prefix PATH :  "${nettools}/bin:${nettools}/sbin:${iputils}/bin:${coreutils}/bin:${gnused}/bin" <ins> '' + lib.optionalString (!withClient) '' rm $out/sbin/{dhclient,dhclient-script,.dhclient-script-wrapped} '' + lib.optionalString (!withRelay) '' rm $out/sbin/dhcrelay </ins> ''; preConfigure =

homepage = "https://www.isc.org/dhcp/"; license = licenses.mpl20; platforms = platforms.unix; <ins> knownVulnerabilities = lib.optional (withClient || withRelay) "The client and relay component of the dhcp package have reached their end of life"; </ins> }; }

, polkit , gnutls , ppp <del> , dhcp </del> <ins> , dhcpcd </ins> , iptables , nftables , python3

"-Dresolvconf=${openresolv}/bin/resolvconf" # DHCP clients <del> "-Ddhclient=${dhcp}/bin/dhclient" # Upstream prefers dhclient, so don't add dhcpcd to the closure "-Ddhcpcd=no" </del> <ins> # ISC DHCP client has reached it's end of life, so stop using it "-Ddhclient=no" "-Ddhcpcd=${dhcpcd}/bin/dhcpcd" </ins> "-Ddhcpcanon=no" # Miscellaneous