[Yum-devel] rfc - plugin to integrate hardware inventory into yum

Michael E Brown Michael_E_Brown at dell.com
Thu Aug 16 18:16:04 UTC 2007


On Tue, Aug 14, 2007 at 11:35:28PM -0400, seth vidal wrote:
> 
> On Tue, 2007-08-14 at 14:57 -0500, Michael E Brown wrote:
> 
> > The idea behind injecting virtual packages was that this would all be
> > handled completely automatically.
> > 
> > For example:
> > 
> >   -- user runs 'yum upgrade'
> >     1) firmware-tools bootstrap plugin runs, generating virtual packages
> >     for bootstrap (ie. devices that exist on the system for which we
> >     currently have no firmware utilities installed):
> > 
> >     Virtual RPM Name                      Virtual RPM version
> >     pci_firmware(ven_0x8086_dev_0x3500) = 0:0.0-0
> >     pci_firmware(ven_0x8086_dev_0x350c) = 0:0.0-0
> >     pci_firmware(ven_0x8086_dev_0x3510) = 0:0.0-0
> >     pci_firmware(ven_0x8086_dev_0x3514) = 0:0.0-0
> >     pci_firmware(ven_0x8086_dev_0x4222_subven_0x8086_subdev_0x1020) = 0:0.0-0
> >     ... snip ...
> > 
> >     2) yum looks in the repo and sees that there are RPMs that
> >     'Provide:' some of the names above:
> > 
> >     pci_firmware_Intel_Wireless-X.Y-z.noarch.rpm
> >         Provides: pci_firmware(ven_0x8086_dev_0x4222_subven_0x8086_subdev_0x1020) = 0:2.3-4
> > 
> >     3) yum installs said RPM.
> > 
> > Exactly. This is how I have things already set up for firmware-tools. :)
> 
> So, then - how are what you have and what you want different?

Ah. I see where I am confusing you. Sorry.

My *current* code is (literally):
  # yum install $(boostrap_firmware)

What I *want* is a plugin that automatically does this, but I wanted to
run the idea past yum-devel first for feedback.

> Let's take this out of the context and look at the general idea:
> 
> yum runs
> plugin starts up - looks at some variables or some other constant and
> interjects additional things it thinks should be done
> yum depsolves
> transaction finishes
> 
> this sounds like what you're describing and it sounds reasonable to me.
> This is what the plugin infrastructure is for, I think.

That is what I wanted to hear. What you describe is exactly what I want
to do.

> 
> Am I missing something else here b/c at this point I'm not entirely
> certain what the question is.

Nope, you arent missing anything. It was just very basic question.

Now... my next question is how do I do this? I need some example code or
docs to look at that give a good example. Can you point me in the right
direction?
--
Michael



More information about the Yum-devel mailing list