Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Bug#1051421: cloud-init: Avoid hard dependency on isc-dhcp-client

31 views
Skip to first unread message

Michael Prokop

unread,
Sep 7, 2023, 11:40:05 AM9/7/23
to
Package: cloud-init
Version: 23.2.1-1
Severity: normal

Hi,

as of v21.4-2, Debian's cloud-init has a hard dependency on
isc-dhcp-client, while the isc-dhcp suite has been deprecated by the
ISC (also see e.g.
https://www.debian.org/releases/bookworm/amd64/release-notes/ch-information.en.html#deprecated-components).

This makes integration/usage of cloud-init with e.g. dhcpcd
impossible:

| # apt install cloud-init dhcpcd
| Reading package lists... Done
| Building dependency tree... Done
| Some packages could not be installed. This may mean that you have
| requested an impossible situation or if you are using the unstable
| distribution that some required packages have not yet been created
| or been moved out of Incoming.
| The following information may help to resolve the situation:
|
| The following packages have unmet dependencies:
| dhcpcd-base : Conflicts: dhcp-client
| E: Unable to correct problems, you have held broken packages.

Quoting from
https://github.com/canonical/cloud-init/releases/tag/23.3,
cloud-init doesn't seem to strictly depend on isc-dhcp-client any
longer though:

| network: support busybox micro DHCP client (udhcpc) alternative to
| deprecated isc-dhcp-client.

So while one can install udhcpc next to isc-dhcp-client in
Debian (because they don't conflict with each other), it's
not yet possible to use Debian with cloud-init, without having
also isc-dhcp-client on the system.

Please consider adapting the Depends for the new cloud-init version
in Debian accordingly, so one can use e.g. cloud-init with udhcpc
(which also allows co-installation next to dhcpcd), but without
having to also have isc-dhcp-client present.

-mika-

Bastian Blank

unread,
Sep 7, 2023, 12:00:05 PM9/7/23
to
On Thu, Sep 07, 2023 at 05:36:06PM +0200, Michael Prokop wrote:
> Please consider adapting the Depends for the new cloud-init version
> in Debian accordingly, so one can use e.g. cloud-init with udhcpc
> (which also allows co-installation next to dhcpcd), but without
> having to also have isc-dhcp-client present.

When the following commit is includes:

| commit ce7d597a65413f8ed14154f8a0fe64dda126d1f3
| Author: Jean-François Roche <jfr...@pyxel.be>
| Date: Wed Jul 19 00:37:24 2023 +0200
|
| net/dhcp: add udhcpc support (#4190)

Bastian

--
Too much of anything, even love, isn't necessarily a good thing.
-- Kirk, "The Trouble with Tribbles", stardate 4525.6

Michael Prokop

unread,
Sep 7, 2023, 12:00:05 PM9/7/23
to
Hi,

* Michael Prokop [Thu Sep 07, 2023 at 05:36:06PM +0200]:

> as of v21.4-2, Debian's cloud-init has a hard dependency on
> isc-dhcp-client, while the isc-dhcp suite has been deprecated by the
> ISC (also see e.g.
> https://www.debian.org/releases/bookworm/amd64/release-notes/ch-information.en.html#deprecated-components).
>
> This makes integration/usage of cloud-init with e.g. dhcpcd
> impossible:
>
> | # apt install cloud-init dhcpcd
> | Reading package lists... Done
> | Building dependency tree... Done
> | Some packages could not be installed. This may mean that you have
> | requested an impossible situation or if you are using the unstable
> | distribution that some required packages have not yet been created
> | or been moved out of Incoming.
> | The following information may help to resolve the situation:
> |
> | The following packages have unmet dependencies:
> | dhcpcd-base : Conflicts: dhcp-client
> | E: Unable to correct problems, you have held broken packages.

Sorry, forgot to clarify: the `apt install cloud-init dhcpcd` from
above doesn't work on Debian <=bookworm, while on >= trixie it
works, because dhcpcd-base no longer conflicts with dhcp-client, as
it used to do up and until bookworm:

| root@f50263b65142:/# apt-get install dhcpcd isc-dhcp-client 2>&1 | tail -3
| The following packages have unmet dependencies:
| dhcpcd-base : Conflicts: dhcp-client
| E: Unable to correct problems, you have held broken packages.
| root@f50263b65142:/# apt-cache show dhcpcd-base | grep Conflicts
| Conflicts: dhcp-client

> Quoting from
> https://github.com/canonical/cloud-init/releases/tag/23.3,
> cloud-init doesn't seem to strictly depend on isc-dhcp-client any
> longer though:
>
> | network: support busybox micro DHCP client (udhcpc) alternative to
> | deprecated isc-dhcp-client.
>
> So while one can install udhcpc next to isc-dhcp-client in
> Debian (because they don't conflict with each other), it's
> not yet possible to use Debian with cloud-init, without having
> also isc-dhcp-client on the system.
>
> Please consider adapting the Depends for the new cloud-init version
> in Debian accordingly, so one can use e.g. cloud-init with udhcpc
> (which also allows co-installation next to dhcpcd), but without
> having to also have isc-dhcp-client present.

While this request still stands of course, to actually get rid of
isc-dhcp-client (at least with >=trixie). :)

regards
-mika-
signature.asc

Bastian Blank

unread,
Sep 7, 2023, 3:10:05 PM9/7/23
to
On Thu, Sep 07, 2023 at 05:50:41PM +0200, Bastian Blank wrote:
> When the following commit is includes:

Just for background information: cloud-init depends on isc-dhcp-client
because it uses the dhclient binary. So removing that as dependency is
not feasible right now.

Bastian

--
Fascinating, a totally parochial attitude.
-- Spock, "Metamorphosis", stardate 3219.8
0 new messages