Thinkpad update firmware on Linux (X1 extreme/P1 gen2)

ADVERTISEMENTS



What is fwupd?

I have ThinkPad P1 Gen 2 or X1 Extreme 2nd Laptop. Can I easily Install ThinkPad firmware updates on Linux using GUI?The latest models of Lenovo ThinkPads can update the firmware using the Linux Vendor Firmware Service (LVFS). When updates are published on LVFS, GNOME can notify you about upgrades. Installing the firmware on Linux wasn’t an easy thing as most vendors only supported the Windows family of operating systems. However, LVFS makes it easier to install UEFI firmware updates on Linux systems. LVFS allows OEMs and ODMs to distribute firmware for Linux.

fwupd is an open-source daemon for managing the installation of firmware updates on Linux-based desktop and server operating systems, developed by GNOME. As explained earlier, the Linux Vendor Firmware Service (LVFS) gives resources for OEMs vendors to package their UEFI firmware updates. fwupd works using GUI tools such as GNOME Software or CLI tool such as fwupdmgr command.

Do NOT turn off your computer or remove the AC adapter while update is in progress. Please make sure your laptop power supply plugged in. In some cases, the battery must charge up to 80-100%. Desktop or server users make sure your system plugged into an uninterruptible power source (UPS) unit to avoid bricking of the motherboard. The author and nixCraft site is not responsible for any damages.

Thinkpad update firmware on Linux GUI

GNOME Software (also known as Ubuntu Software on Ubuntu desktop) is a utility for application and updates on Linux. It is part of the GNOME Core Applications. The same app supports fwupd for servicing of system firmware.



Install ThinkPad firmware updates in Linux using the cli

Sometimes you may see multiple BIOS updates too:All you have to do is click the Update button and reboot the system to install firmware updates.

The fwupdmgr command-line tool allows Linux system administrators to query and control the fwupd daemon. You can perform actions such as installing or downgrading firmware for motherboards, SSD, and other parts of the system supported by LVFS.

How to list all devices that support firmware updates

Run:

sudo fwupdmgr get-devices



How to find your BIOS version on Linux

One can check bios version on Linux using the dmidecode command:

sudo dmidecode -s bios-version

Try the following bash for loop:

for d in system-manufacturer system-product-name bios-release-date bios-version

do

echo "${d^} : " $(sudo dmidecode -s $d)

done



Download and refresh metadata from LVFS server

Execute:

sudo fwupdmgr refresh

## we can use '--force' option to refresh again. ##

sudo fwupdmgr refresh --force

Fetching metadata https://cdn.fwupd.org/downloads/firmware.xml.gz Downloading… [***************************************] Fetching signature https://cdn.fwupd.org/downloads/firmware.xml.gz.asc Successfully downloaded new metadata: 2 local devices supported

List updates available for any devices on the system

Run:

fwupdmgr get-updates



Install BIOS and other firmware updates

Please note that updates that can be applied live will be done immediately and firmware updates will install at the next reboot:

sudo fwupdmgr update



Verification

Your system will reboot and presented with the following screen:During the update process, your desktop or laptop will reset (reboot) multiple times:

Make sure we got an updated version using the dmidecode command:

sudo dmidecode -s bios-version

Sample outputs:

[sudo] password for vivek: N2OET44W (1.31 )

Are these commands and GUI tools limited to Thinkpads?

No. Other vendors such as Dell, Acer, and many additional OEMs support updating modern Linux desktop using LVFS. Please see this page for a supported list of vendors.

A note about KDE desktop users

KDE Discover is a software center used by Plasma desktop. However, you need the release of KDE Plasma version 5.14 for firmware updates.

Can I still update my device firmware under Linux if not supported by these GUI and CLI tools for LVFS?

Yes, you don’t need MS-Windows tax. Please see how to extract the bootable image and install the firmware using a USB pen drive under Linux operating systems.

Conclusion

You learned how to install Thinkpad BIOS firmware updates on Linux running on different Linux distros such as Ubuntu, Debian, Fedora, and others.

Category List of Unix and Linux commands File Management cat Network Utilities dig • host • ip • nmap Package Manager apk • apt Processes Management bg • chroot • disown • fg • jobs • killall • kill • pidof • pstree • pwdx • time Searching grep • whereis • which User Information groups • id • lastcomm • last • lid/libuser-lid • logname • members • users • whoami • who • w