Skip to content

Add firmware support to <os/>

Fabiano Fidêncio requested to merge fidencio/osinfo-db:wip/uefi_support into master

This patchset adds support to advertising the firmware types an OS supports and follows the same naming used by libvirt.

For now, I've decided to not yet start decorating all x86_64/i686 OSes we have in osinfo-db with , but it may be needed in the future.

Also, this patch set only adds info about UEFI support for Fedora and RHEL (well, Silverblue and CentOS will get it for free). So, it'll have to be expanded later on.

In the mailing list, Cole asked:

What's the criteria for 'support' status here, just officially
advertised in distro docs? If so, do you have links? Quick googling
didn't give me much for fedora and rhel

How do you envision we would advertise something like secureboot
support... as its own type='efi-secureboot', an extra attribute, a sub
element, etc. For that matter how does libvirt new firmware= support
handle it?

And my answer for that:

So, in these patches I'm proposing:
<os>
  <firmware arch='all|x86_64|armv7l' type='bios|efi'
supported='true|false'/>
</os>

When taking secure boot into account, I'd extend what we have now and
add:
<os>
  <firmware arch='all|x86_64|armv7l' type='bios|efi'
supported='true|false' secure='true|false'/>
</os>

What do you think about this?

One other thing that you didn't raise but that I'm not exactly
convinced on how to do is how to expose the bios support.

I may be mistaken but I don't think any app would actually want to
check whether bios is supported (although apps would want to check when
bios is *not* supported). So, for now, I'd *not* add info about bios
and would have to add an API for returning the supported types and
another one for returning the *non* supported types. It's either this
or start adding info in a bunch of entries about bios being supported
(and here I can see some issues because bios may not be exactly the way
to go for different arches ... well, a lot of testing/research would
have to be done anyways).

What's your opinion/preference on this?

Merge request reports