QtBiosUpdate, good for *any* Linux and for "any" vendor.

Gaetano Andrea Callea callea.gaetano.andrea at gmail.com
Sun Apr 26 00:27:15 BST 2009

Hi All,

First things first:

I'm including all of these mailing lists and people because I reckon that
might be good to discuss this idea with all of you involving so many aspects
and realities and considering that joining efforts and ideas could bring up
something more interesting than my rants. Of course when I say "involving so
many aspects" I mean that all of you might be interested for the nature of
this thing and for what you already do in your respective fields. After this
will be defined (for the better hopefully) we could trim down the parties to
the case a bit. Of course anyone can call himself in or out of things and/or
blame me for SPAM and/or heresy at any time. One last note: I include links
at the end of this email, so you can read about the existing projects I
mention here if you don't know about them yet.

So, let's get to the matter:

QtBiosUpdate, like many of you already understood from the name, it's about
writing a Qt application to (guess what?) perform the BIOS Update.

A bit of story first, to get the idea:

The idea of QtBiosUpdate all started from the boring manual update[0] of my
Dell XPS M1330. I first wrote a BASH script[1] to automate the process, then
I spoke to drf_ (an italian KDE develpoer) to get a GUI for this script, he
suggested that it could have been better to make a real application and use
libsmbios[2] instead of calling Dell's dellBiosUpdate to make a 10 minutes
GUI and he offered to help. So I created a repo on github[3] but
unfortunately he's busy with so many projects and I didn't even start to
learn C++ and Qt, so QtBiosUpdate stuck at a concept level.

Meanwhile, some folks told me that Dell's repositories provide
"Firmware_Tools"[4] and that updating the BIOS with it it's just a matter of
updating the system; a breeze. True, but unfortunately this seem to be
available only for certain distro and only for Dell's at the moment.

Provided that I'm not a develpoer: that's where QtBiosUpdate comes in, along
with libsmbios.

In few words, QtBiosUpdate will use libsmbios[5], by itself or with some
"pluggable" application like Dell's dellBiosUpdate[6], and it will take care
of BIOS updates. Since libsmbios talks (or will talk) to many verndor's
BIOSes we could have one unique Qt application for any flavour of Linux and
for any vendors to update their BIOS.

One might question the choice of Qt here, fair enough but: Qt are cross
platform and don't depend on the whole KDE. This it's a good starting point
for a (very imaginative I know) porting to other software worlds and, right
now, desktop agnostic and light.

Some other already objected that: "well then it might be usable, but I will
still prefer the livecd of my vendor"; but I don't agree with this.

Would you prefer: (provided that Firmware_Tools seem to be available only
for certain distro and only for Dell's at the moment)

  1 - get the distro (if your vendor provides one)
  2 - burn the CD (or use the img for USB ok)
  3 - reboot in livecd/usb
  4 - update the BIOS.
  5 - reboot
  6 - repeat this every time you need to update the BIOS.


  1 - fire up one application, update and reboot.

I would definitely go for the second option. Wouldn't you?

Another thing that someone mentioned in this evening chat is about fundings.
What if Dell (or any vendor) or Linux Foundation[7] or any ISV (or a joint
venture of these players) could provide fundings for this to get developed??
This will help speeding up things. I call myself ouy of this, I'm not a
developer and I would feel like stealing money. The only thing that I could
want would be my name mentioned in the project, that's all.

While on players topic and what they could do for QtBiosUpdate, another good
thing they could do (or the only one perhaps) is providing tools to work
with (I think of a repo better than mine, a mailing list and hadrware).

So the first move, after we get this whole QtBiosUpdate thing understood a
bit better on the feasiblity matter, could be to blog about it and have a
little propaganda to search for partners. I know that I sound funny (or
stupid if you will) since I include also some Dell's mailing list here, but
I stronlgy think that we should get this accepted by other parties too and
involve them so to get a large army working and brainstorming on this.

But blogging could start even from now, so folks, should you blog about it
and see what happens?

Might be that someone would read it and get interested[8]. We could start
from developing for Dell's only and showcase the QtBiosUpdate, then lobby
about it and get other parties involved. IMHO the most important thing (that
I keep stressing) is getting vendors to use libsmbios and HDR BIOS as a
standard for Linux[9].

At the end of the story everyone (everyone being a verndor or a distro and
most important us, the final users of Linux) will benefit from this. One
library and one application to update BIOS for everyone. [As J.R.R. Tolkien
told me yesterday: "Many vendors, many computers, many BIOSes, one
application to update them all ;)"]

I hope you like it and that it is feasible.

ps: I started working on a GUI mock up, you can find it in my repository.

[0] http://linux.dell.com/wiki/index.php/Tech/libsmbios_dellBiosUpdate
[1] http://github.com/cga/dellbiosupdate.sh/tree/master
[2] http://linux.dell.com/libsmbios/main/index.html
[3] http://github.com/cga/qtbiosupdate/tree/master
[4] http://linux.dell.com/wiki/index.php/Oss/Firmware_Tools

[5] Provided that libsmbios works for other vendors too or that vendors
might switch to it in the Linux world with a bit of lobbying from Dell or
from the Linux Foundation.
[6] Which introduces us to the modular structure QtBiosUpdate should have in
case we'll need something like dellBiosUpdate from other vendors.

[7] Please someone start a workgroup on Linux Foundation if he can request
[8] Another idea of mine that is being developed by kde devs:
[9] But this can start only from a strong position like the one Dell or the
Linux Foundation have.

Callea Gaetano Andrea
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20090426/7021ad7b/attachment.htm>

More information about the kde-core-devel mailing list