Bugzilla – Bug 1204103
error: unpacking of archive failed on file /usr/lib/firmware/qcom/LENOVO/21BX;633f2acf: cpio: File from package already exists as a directory in system
Last modified: 2022-11-09 13:48:21 UTC
error: unpacking of archive failed on file /usr/lib/firmware/qcom/LENOVO/21BX;633f2acf: cpio: File from package already exists as a directory in system error: kernel-firmware-qcom-20220930-1.1.noarch: install failed error: kernel-firmware-qcom-20220902-1.1.noarch: erase skipped ( 82/133) Installing: kernel-firmware-qcom-20220930-1.1.noarch ...............................................................[error] Installation of kernel-firmware-qcom-20220930-1.1.noarch failed: Error: Subprocess failed. Error: RPM failed: Command exited with status 1.
Created attachment 862011 [details] last boot log
Confirming same error on my system during 10/6 update of kernel-firmware-qcom.
Confirm same error on my system 10/06/2023 during upgrade. Exact same message of kernel-firmware-qcom failure.
Added the package maintainers to cc list (via https://build.opensuse.org/package/users/Kernel:HEAD/kernel-firmware)
This is from https://build.opensuse.org/request/show/1007673 > qcom: rename Lenovo ThinkPad X13s firmware paths
Same on all my 3 Tumbleweed PCs have same issue. # mv /usr/lib/firmware/qcom/LENOVO/21BX/ /usr/lib/firmware/qcom/LENOVO/21BX.sik Solve the issue.
(In reply to ulfbart from comment #6) > Same on all my 3 Tumbleweed PCs have same issue. > > # mv /usr/lib/firmware/qcom/LENOVO/21BX/ > /usr/lib/firmware/qcom/LENOVO/21BX.sik > > Solve the issue. Feedback from Freek de Kruijf at factory@lists.opensuse.org | I did as root: | rm -rf /usr/lib/firmware/qcom/LENOVO/21BX/ | and | zypper in -f kernel-firmware-all kernel-firmware-qcom | kernel-firmware-all was removed when I removed kernel-firmware-qcom after | which installing both did not work. | After the above commands a zypper dup showed all was OK.
Sorry for the late follow up, as I've been off in this week. It's an unfortunate problem that is specific to rpm about the package update; we've hit a similar problem in the past for sof-firmware package (happening at switching from a directory to a symlink), and a similar *very dirty* workaround would be needed for kernel-firmware, too. Sigh. As a workaround, simply remove the directory /usr/lib/firmware/qcom/LENOVO before the update. Or, just uninstall kernel-firmware-qcom package once rpm -e --nodeps kernel-firmware-qcom then update kernel-firmware-* again. Will work on the workaround in the package soon later.
The fix update was submitted to TW now (via OBS Kernel:HEAD/kernel-firmware).
https://build.opensuse.org/request/show/1009073
*** Bug 1204161 has been marked as a duplicate of this bug. ***
Hi did the following rm -rf /usr/lib/firmware/qcom/LENOVO/21BX/ However now when I reboot I drop into console mode? For kernel 6.0.0.1-default I have to select the previous kernel to boot into desktop mode. How can I correct this?
(In reply to Dev Guy from comment #12) > Hi did the following rm -rf /usr/lib/firmware/qcom/LENOVO/21BX/ > > However now when I reboot I drop into console mode? For kernel > 6.0.0.1-default > > I have to select the previous kernel to boot into desktop mode. > How can I correct this? Try to uninstall kernel-firmware-qcom at first, then re-install kernel-firmwre-all again. % rpm -e --nodeps kernel-firmware-qcom % zypper in -f kernel-firmware-all Also, if the previous update was aborted due to this bug, finish the rest. % zypper up If the problem still happens after that, it must be a different bug. Please open another bug report. *** BTW, "rm -rf /usr/lib/firmware/qcom/LENOVO/21BX/" is actually an incorrect workaround. Performing this before the package update will end up with the missing firmware files, and for users who do require those firmware may hit another problem (although it's OK-ish for most users who don't need those files). A safer workaround is to uninstall the previous kernel-firmware-qcom at first as shown in the above.
*** Bug 1204163 has been marked as a duplicate of this bug. ***
The uncompressed kernel-firmware needs the same workaround.
This is an autogenerated message for OBS integration: This bug (1204103) was mentioned in https://build.opensuse.org/request/show/1009300 Factory / kernel-firmware
(In reply to Fabian Vogt from comment #15) > The uncompressed kernel-firmware needs the same workaround. Indeed (although it shouldn't be used on normal systems at all). Will fix it.
https://build.opensuse.org/request/show/1009318