On Thu, Jun 29 2023 at 12:24:23 AM +0200, Fabio Valentini
<decathorpe@xxxxxxxxx> wrote:
Thanks for the clarification, though this is only partially
reassuring:
I'm not sure how this accounts for the fact that there are some
situations in which weak dependencies are *not installed at all*.
Most notably, they are not installed into build environments *at all*
(i.e. mock sets `install_weak_deps=0`).
I guess this is OK. It's not what I would have expected, but if
something important winds up missing, it just means you need more
BuildRequires and is generally not a big deal.
I'm not sure how the process that builds ISOs and container images
handle this, but I assume they set this option as well.
So we'd need to be careful not to remove "hard" dependencies on tzdata
and replace them with lots of "weak" dependencies all over the place -
just to find out that it ends up missing from important places because
they disable weak dependencies.
For Recommends/Supplements weak dependencies to be useful, packagers
must be able to assume they are installed by default. With that
assumption, you can stop second-guessing when to use weak deps; without
that assumption, nothing works and the weak deps are not useful.
Accordingly, most ISOs, container images, etc. should be built with
weak dependencies enabled; it would be a serious bug if weak deps were
missing from the Fedora Workstation images, for example. Opting out of
weak deps should be done with the understanding that there will be
degraded functionality and some features will not work. E.g. minimal
images will want to be really minimal and not install the weak deps,
even though this means missing timezones.
Because Recommends and Supplements are installed by default, we need to
be careful and use them sparingly, only when it really makes sense for
some package to be pulled in for almost all users of another package.
Thus far, Fedora and RHEL have done a good job of this, primarily
because we were very late to the weak dep party and have had much more
time to learn best practices and much less time to screw up. This is in
contrast to some other distros where it's common for users to disable
weak deps to avoid "bloat." We don't ever want our
Recommends/Supplements to be considered bloat. (That's what
Suggests/Enhances is for. :) And since they're not bloat, they should
be respected when building most non-minimal images.
Michael
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue