Note: This bug is displayed in read-only format because
the product is no longer active in Red Hat Bugzilla.
RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
DescriptionJan Pazdziora (Red Hat)
2021-04-09 13:34:50 UTC
Description of problem:
RHEL 9 Content Structure and Guidelines state that weak dependencies in BaseOS are allowed, but discouraged.
By using the Recommends weak dependencies especially for packages in @core group (Minimal host installation) or their direct dependencies, the recommended package gets pulled into the installed package set depending on the current configuration of the dnf transaction.
The dracut package Recommends hardlink, kpartx, memstrack, and pigz.
If those packages are needed by dracut for correct operation, Requires should be used.
If hardlink, kpartx, memstrack, and pigz are essential in minimal host installations, they should be listed in the @core group in the comps file, not pulled in as a weak side-effect of having dracut in @core. Note that util-linux (which provides hardlink) is listed in @core already.
If they are listed primarily for convenience, Suggests might be better option. Or just drop the weak dependency completely.
Currently, memstrack is not even available in RHEL 9 composes.
The dracut package itself is installed on minimal host installations via kexec-tools dependency.
Version-Release number of selected component (if applicable):
dracut-051-1.el9.1.x86_64
How reproducible:
Deterministic.
Steps to Reproduce:
1. dnf remove -y kpartx pigz
2. dnf reinstall -y dracut
Actual results:
================================================================================
Package Architecture Version Repository Size
================================================================================
Reinstalling:
dracut x86_64 051-1.el9.1 beaker-BaseOS 326 k
Installing weak dependencies:
kpartx x86_64 0.8.5-4.el9 beaker-BaseOS 50 k
pigz x86_64 2.5-1.el9 beaker-AppStream 83 k
Expected results:
Only dracut reinstalled.
Additional info:
hardlink is used by default during image creation -> Requires
pigz is used by default during image creation, with fallback to gzip -> either change to Requires or replace with Requires: gzip; I don't have a firm opinion about this one
memstrack is needed by optional--and quite obscure--module memstrack -> drop
kpartx is needed by modules dmraid and multipath, which are pretty important -> Requires
(In reply to David Tardon from comment #2)
> hardlink is used by default during image creation -> Requires
I've found hardlink only in dracut.sh:
’’’
2098 hardlink "$initdir" 2>&1 | dinfo
’’’
This is done by defaut, so I agree.
>
> pigz is used by default during image creation, with fallback to gzip ->
> either change to Requires or replace with Requires: gzip; I don't have a
> firm opinion about this one
I agree, as I don't see why pigz wouldn't be available, we can assume it's a good default; and set it as such (we can do some conditional requires in case someone would prefer gzip instead; if there are such requests).
>
> memstrack is needed by optional--and quite obscure--module memstrack -> drop
I think this is what Suggests is for.
>
> kpartx is needed by modules dmraid and multipath, which are pretty important
> -> Requires
Yes, this would fail otherwise. Unless we want to thread them as recommends (for any reason), these are Required.
I'll create a PR. Let me know if you want some adjustments made.
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory (new packages: dracut), and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.
https://access.redhat.com/errata/RHBA-2022:4070