TLDR: I install fwupd
, check for updates, tell it to install the updates, and reboot. After that, checking for updates just shows all the same updates again, as if they haven't installed.
I'm running Debian 10 Buster x64 on a Lenovo Thinkpad X1 Carbon 4th gen. Possibly irrelevant, but the model number is 20FBCTO1WW. I'm trying to use fwupd
to install firmware updates. I install it and start the service:
sudo apt-get install fwupd
sudo service fwupd start
List all the devices that have updates:
root@london:~# fwupdmgr get-devices
20FBCTO1WW System Firmware
DeviceId: c66f3753f0a35b3874d65546d4b7b10896d44ce2
Guid: 81cba30b-c2d4-4e66-bcf3-69d81ba890b0
Plugin: uefi
Flags: internal|updatable|require-ac|supported|registered|needs-reboot
Version: 0.1.8
VersionLowest: 0.1.8
Icon: computer
Created: 2020-01-25
UEFI Device Firmware
DeviceId: 6f92d954409bb3c145828fbbc0346c3ca12f2a9a
Guid: cb3c1682-5386-4591-bd29-7c1f441b7ccb
Plugin: uefi
Flags: internal|updatable|require-ac|supported|registered|needs-reboot
Version: 176.0.1202
VersionLowest: 176.0.1202
Icon: audio-card
Created: 2020-01-25
SAMSUNG MZVKV512HAJH-000L1
DeviceId: 310f45f1f223064b5c16bf6dff31146755a64480
Guid: cce2386f-6d68-5f85-9f3f-ebead9288696 <- NVME\VEN_144D&DEV_A802&REV_01
Guid: 77bb4022-9503-586c-99b7-c8a64502da30 <- NVME\VEN_144D&DEV_A802
Guid: 8fd4ca73-d0ae-52e8-8977-461435c6f4cf <- NVME\VEN_144D
Guid: e339432d-beab-53b2-9a9f-e0787a1ecb8b <- SAMSUNG MZVKV512HAJH-000L1
Serial: bla
Summary: NVM Express Solid State Drive
Plugin: nvme
Flags: internal|updatable|require-ac|registered|needs-reboot
Vendor: Samsung Electronics Co Ltd
VendorId: NVME:0x144D
Version: 6L0QBXX7
Icon: drive-harddisk
Created: 2020-01-25
Listing all the updates shows quite a few too (which I've omitted to save on space):
root@london:~# fwupdmgr refresh
Fetching metadata https://cdn.fwupd.org/downloads/firmware.xml.gz
Downloading… [***************************************]
Fetching signature https://cdn.fwupd.org/downloads/firmware.xml.gz.asc
root@london:~# fwupdmgr get-updates
20FBCTO1WW System Firmware has firmware updates:
GUID: 81cba30b-c2d4-4e66-bcf3-69d81ba890b0
ID: com.lenovo.ThinkPadN1FET.firmware
Update Version: 0.1.42
Update Name: ThinkPad X1 Carbon 4th / X1 Yoga 1st System Update
Update Summary: Lenovo ThinkPad X1 Carbon 4th / X1 Yoga 1st System Firmware
Update Remote ID: lvfs
Update Checksum: SHA1(efb007a2bda94c96d60c349a6f24cc80d51d7322)
Update Location: https://fwupd.org/downloads/a06bbb48aa46c90497459ac6e98157f2acfe1778-Lenovo-ThinkPad-X1Carbon4th-X1Yoga1st-SystemFirmware-1.42.cab
Update Description: Lenovo ThinkPad X1 Carbon 4th / X1 Yoga 1st System Firmware Version 1.42
I run the updates:
root@london:~# fwupdmgr update -v
Downloading 0.1.42 for 20FBCTO1WW System Firmware...
(fwupdmgr:2813): FuCommon-DEBUG: 09:11:45.120: creating path /root/.cache/fwupd
(fwupdmgr:2813): FuMain-DEBUG: 09:11:45.132: skpping download as file already exists
(fwupdmgr:2813): Fwupd-DEBUG: 09:11:45.134: Emitting ::status-changed() [decompressing]
Decompressing… [- ](fwupdmgr:2813): Fwupd-DEBUG: 09:11:45.162: Emitting ::status-changed() [idle]
Decompressing… [***************************************]
(fwupdmgr:2813): Fwupd-DEBUG: 09:11:45.162: Emitting ::status-changed() [waiting-for-auth]
Authenticating… [ - ](fwupdmgr:2813): Fwupd-DEBUG: 09:11:45.162: Emitting ::status-changed() [idle]
Authenticating… [***************************************]
Could not check for auth: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.PolicyKit1 was not provided by any .service files
I don't understand the errors about waiting for authorization, since I'm running this as root. After a reboot, fwupdmgr
still says "No history" of updates. Even if I install the .cab firmware file directly, it still doesn't seem to update:
fwupdmgr install --allow-reinstall /root/.cache/fwupd/a06bbb48aa46c90497459ac6e98157f2acfe1778-Lenovo-ThinkPad-X1Carbon4th-X1Yoga1st-SystemFirmware-1.42.cab
What am I doing wrong?