Manually updating firmware In Fedora

One thing you should know that GNOME Software i.e. the software center in recent Fedora editions is also capable of updating the firmware. But in situations when it fails for any reason, you can use the command line tool fwupd. I personally did this because an automatic update failed (don’t panic – it doesn’t actually brick the system – just unplug any external batteries and wait for internal batteries to run flat).

Basically, it fwupd uses LVFS – an acronym for the Linux Vendor Firmware Service. Hardware vendors upload redistributable firmware to the LVFS site and thanks to fwupd, you can upgrade those firmware from inside the operating system itself. fwupd is supported by major Linux distributions like Ubuntu and Fedora.

Step 1: Check if your system is supported by LVFS

Since LVFS depends upon hardware vendors, it’s a good idea to check if your system manufacturer supports this feature or not.

Find out your system model and then CHECK IF YOUR SYSTEM USES LVFS

Step 2: Using fwupd for updating fimrware

Normally, fwupd should already be installed on your Linux system. If not, install it using the package manager of your distribution.

sudo dnf install fwupd

After that you can use the following commands one by one to start the daemon, refresh the list of available firmware updates and install the firmware updates.

sudo service fwupd start

Once the daemon is running, check if there are any firmware updates available.

sudo fwupdmgr refresh
Fetching metadata https://cdn.fwupd.org/downloads/firmware.xml.gz
Downloading…             [***************************************] Less than one minute remaining…
Fetching signature https://cdn.fwupd.org/downloads/firmware.xml.gz.asc

The output should look like this:

Fetching metadata https://cdn.fwupd.org/downloads/firmware.xml.gz
Downloading…                         [****************************]
Fetching signature https://cdn.fwupd.org/downloads/firmware.xml.gz.asc

After this, run the firmware update:

sudo fwupdmgr update

The output of the firmware update will be similar to this:

No upgrades for UEFI Device Firmware, current is 184.60.3561: 184.55.3510=older, 184.60.3561=same
Downloading 0.1.57 for 20HEA00JSG System Firmware...
Fetching firmware https://fwupd.org/downloads/204c396001fb80b62c57301a41e23ae555a8208f-Lenovo-ThinkPad-T470-SystemFirmware-1.57.cab
Downloading…         [***********]
Updating 
Decompressing…       [***********]
Authenticating…      [***********] 
Restarting device…   [***********]

This should give you much more control and insight than the built-in idiot-proof tool (not so idiot proof, my Lenovo T470 hung during an update to both UEFI and firmware.