Dear fellows, in our moving free world, it’s not always bienvenue to talk about one of the *kit* software around.
Most of them have bad reputation, (with good or bad reasons) this is the debate of this post.
But in the uni-kit-verse there’s one you must known, especially if you are the proud owner of a laptop or one of this computer the manufacter deliver its firmware only in DOS exe format.
FirmwareUpdateKit (was introduced in 2008 in openSUSE by Steffen Winterfeldt
How that works?
As the title of the post give you the right command, open a console, then use the cnf (command-not-found) tool to learn what to do
Install the package
cnf fuk The program 'fuk' can be found in the following package: * FirmwareUpdateKit [ path: /usr/bin/fuk, repository: zypp (repo-oss) ] Try installing with: zypper install FirmwareUpdateKit
Pretty clear and cool, let’s install that stuff!
sudo zypper install FirmwareUpdateKit root's password: Loading repository data... Reading installed packages... Resolving package dependencies... The following NEW packages are going to be installed: FirmwareUpdateKit syslinux 2 new packages to install. Overall download size: 758.0 KiB. After the operation, additional 2.1 MiB will be used. Continue? [y/n/?] (y): y Retrieving package syslinux-4.04-12.1.3.x86_64 (1/2), 642.0 KiB (1.9 MiB unpacked) Retrieving: syslinux-4.04-12.1.3.x86_64.rpm [done] Retrieving package FirmwareUpdateKit-1.1-14.1.1.x86_64 (2/2), 116.0 KiB (178.0 KiB unpacked) Retrieving: FirmwareUpdateKit-1.1-14.1.1.x86_64.rpm [done] Installing: syslinux-4.04-12.1.3 [done] Installing: FirmwareUpdateKit-1.1-14.1.1 [done]
Get your bios
Nothing easy for that, you will have to surf on boring mfg website, and find an appropriate bios for your computer.
Be serious during that selection, you can screw up totally your computer
Time to fuk
As always before running a program, it’s always good to check if there’s the fine manual (not the case here) or try a -h –help
fuk --help Usage: fuk [OPTIONS] FILES FirmwareUpdateKit version 1.1. Create bootable DOS system and add FILES to it. The main purpose is to assist with DOS-based firmware updates. Options: --grub Add boot entry to /boot/grub/menu.lst. --lilo Add boot entry to /etc/lilo.conf. --title TITLE Use TITLE as label for boot menu entry. --iso FILE Create bootable CD. --floppy FILE Create bootable (1440 kB) floppy disk. --image FILE Create bootable harddisk. --run COMMAND Run COMMAND after booting DOS. --verbose Be more verbose.
Nothing complicated as a nuclear plan here, everything seems to be self explicit.
Let try it, and install a new grub entry for the new A8 version for my lappy.
fuk --verbose --grub --run M4600A08.exe /home/bruno/src_tmp/HARDWARE/DELL_M4600/M4600A08.exe /tmp/fuk.lSVIgS0cMt/fwupdate.img: chs = 186/4/16, size = 11904 blocks - writing mbr - writing fat12 boot block - copying: /usr/share/FirmwareUpdateKit/kernel.sys /usr/share/FirmwareUpdateKit/command.com /tmp/fuk.lSVIgS0cMt/config.sys /tmp/fuk.lSVIgS0cMt/autoexec.bat /home/bruno/src_tmp/HARDWARE/DELL_M4600/M4600_A08.exe c-3po:~ #
That’s all I’ve now a new entry in my grub list
title Firmware Update kernel /boot/memdisk initrd /boot/fwupdate.img
Apply
Now just reboot and use the grub entry, then upgrade your bios, like you will normally have done with you old complicated build iso, or diskette (I’m joking)