[Rpm-maint] Enforce install/erase order without adding a Requires:
Phil Knirsch
pknirsch at redhat.com
Fri Nov 26 13:19:33 UTC 2010
On 11/26/2010 10:53 AM, Panu Matilainen wrote:
> On Fri, 26 Nov 2010, Michael Schroeder wrote:
>
>> On Fri, Nov 26, 2010 at 10:22:56AM +0200, Panu Matilainen wrote:
>>> Kernel initrd creation (mkinitrd, dracut) mechanisms have special needs:
>>> they can have support for arbitrary number of rare, special hardware
>>> packeges that shouldn't be dragged in on every installation. Yet if
>>> those
>>> optional packages are installed, they should be installed before the
>>> initrd generation to ensure latest versions (be it bug/security fix or
>>> just an enhancement) get bundled up in the initrd on updates.
>>> Requires are
>>> currently needed to ensure the ordering, which is bad.
>>> Suggests/Recommends
>>> etc are not at all optimal here either as their behavior depends on
>>> depsolver policy.
>>
>> Oh, but in that case you ned the reverse version of Requires,
>> because the kernel package cannot know all special hardware packages.
>> Thus something like "Enhances: kernel", but with a different
>> keyword.
>
> At least in Fedora, the dependencies for initrd needs are in dracut,
> which in turn knows which extra packages it currently supports. But yes,
> there should be a reverse variant of the ordering syntax too.
>
Well, partially.
During installation it's actually determined by anaconda, e.g. for many
of the various options around storage (luks, fcoe, lvm, dmraid,
multipath etc) anaconda simply installs those it needs to generate and
configure those, which in turn then get picked up automatically by
dracut to generate the initramfs.
Same goes for later in the system when you haven't set up e.g. a LVM
during installation you'll first need the tools (aka, install them
manually to configure and setup your lvm devices) and afterwards, in
case you need those devices during the initramfs stage you'll need to
recreate the initramfs, but here again the tools will obviously then be
available as you needed those previously to do the setup anyway.
Thanks & regards, Phil
TL;DR: Dracut in itself tries to not require any of the tools it ships
modules for but instead relies on either the installer or the system
later to have the tools installed which are needed in the modules for
bootup in the created initramfs.
--
Philipp Knirsch | Tel.: +49-711-96437-470
Supervisor Core Services | Fax.: +49-711-96437-111
Red Hat GmbH | Email: Phil Knirsch <pknirsch at redhat.com>
Hauptstaetterstr. 58 | Web: http://www.redhat.com/
D-70178 Stuttgart, Germany
Motd: You're only jealous cos the little penguins are talking to me.
More information about the Rpm-maint
mailing list