At 2025-04-20T23:22:04+0500, Andrey Rakhmatullin wrote:
> On Sun, Apr 20, 2025 at 06:25:53PM +0100, Josh Triplett wrote:
> > What I'm suggesting here is that if every individual package that
> > needs awk has a Depends on it (via a package that allows switching
> > implementations), rather than relying on Essential, then it becomes
> > possible to make incremental progress, and that incremental progress
> > benefits people who are willing to carefully remove some of what
> > Debian normally always has installed packages.
> 
> Should we start declaring deps on all essential packages explicitly?

I think that's a good idea.  "Explicit is better than implicit," as the
Zen of Python puts it.[1]

Factual statements about one's run-time dependencies should be as
decoupled from the details of the set of "Essential" packages as
possible.  One reason is that the identities of the people making these
decisions are disjoint.  Often a package maintainer lacks this power;
except for dependencies they introduce through operation of their
maintainer scripts (or Debian add-ons), such run-time dependencies are
beyond their control.

By contrast, the population of the Essential set is up to...well, I'm
not sure who.  Some vaguely defined intersection of the dpkg
maintainer(s), the release managers, and installer team, I guess.

In principle, the all of the developers collectively (and interested
discussants) are responsible for such decisions.  Unfortunately,
decisions in Debian are sometimes not made by those whom we claim.

"You must not tag any packages essential before this has been discussed
on the debian-devel mailing list and a consensus about doing that has
been reached." -- Debian Policy Manual, ยง3.8[2]

That implies to me that a package can be taken _out_ of the essential
set unilaterally by the package maintainer(s) of a package that's in it,
but because of the status quo of being able to depend on an essential
package without declaring that fact, in practice that probably wouldn't
work well, and we should update the Policy Manual to require discussion
of the dropping of such a "tag" as well.

...for which achievement of the goal you propose is a prerequisite.

One of the current Policy Manual editors might opine.

Regards,
Branden

[1] https://peps.python.org/pep-0020/
[2] https://www.debian.org/doc/debian-policy/ch-binary.html#essential-packages

Attachment: signature.asc
Description: PGP signature

Reply via email to