On 2023-06-19 21:37 +0100, Simon McVittie wrote:

> On Mon, 19 Jun 2023 at 21:42:08 +0300, Martin-Éric Racine wrote:
>> I've never had to do this before, so I wonder if moving packages to
>> severity: standard or higher (in this case, important) requires any
>> decision from the CTTE or a similar authority, before we proceed?
>
> Regarding *whether* to make that change: as Luca said, I don't think a
> DHCP client really needs to be at an elevated Priority at all. I think
> it would be better to lower the priority of isc-dhcp-client to optional,
> but *not* raise the priority of dhcpcd-base, and instead have ifupdown
> pull in the DHCP client of its choice (currently isc-dhcp-client, but
> you'd prefer this to be dhcpcd-base) as a Recommends or Depends.
> My understanding is that because ifupdown is (currently)
> Priority: important, that dependency would still pull your chosen DHCP
> client into a default debootstrap.

Unfortunately that assumption is not correct, because ifupdown only
"Recommends: isc-dhcp-client | dhcp-client", and debootstrap ignores
Recommends.  So as long as ifupdown is installed by debootstrap, either
it would have to change that recommendation to
"Depends: dhcpcd-base | dhcp-client", or the priority of dhcpcd-base
needs to be bumped so that debootstrap picks it up due to its priority.

> Years ago we had a rule in Policy that if package A depends on package B,
> then the priority of B must be >= the priority of A; but we dropped that
> rule, because it wasn't particularly helpful, and sometimes led to wrong
> situations where packages get installed for no good reason. So there's no
> need to follow that rule any more.

As far as debootstrap is concerned, it only handles Depends, ignores
everything but the first alternative and cannot deal with virtual
packages.  For dependencies on libraries computed by dpkg-shlibdeps this
usually works, but manually inserted relationships do not always
fulfill these constraints.

> If you agree with the way forward that I'm suggesting, then I think the
> way to do it would be:
>
> 1. open an override bug asking for isc-dhcp-client to be lowered from
>    important to optional
> 2. wait for the ftp team to do that
> 3. ask the ifupdown maintainer to switch the Recommends to point to
>    dhcpcd-base instead of isc-dhcp-client

If my above statements about debootstrap are correct, this will result
in no dhcp-client being installed at all by debootstrap unless the
override bug also requests bumping dhcpcd-base's priority from optional
to important.

Cheers,
       Sven

Reply via email to