• Status New   Reopened
  • Percent Complete
    0%
  • Task Type Bug Report
  • Category Packages
  • Assigned To No-one
  • Operating System pentium4
  • Severity Critical
  • Priority Medium
  • Reported Version
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Arch Linux 32
Opened by Andreas Baumann - 20.04.2024
Last edited by Andreas Baumann - 25.04.2024

FS#355 - KDE packages fail to install because of /lib

Some KDE packages try to replace the ‘lib’ symlink with a directory, causing the system
to fail to start.

If you are lucky, pacman warns you about it and says:

pacman -S breeze-icons
resolving dependencies...
looking for conflicting packages...

Packages (1) breeze-icons-6.0.0-1.0

Total Installed Size:  71.92 MiB
Net Upgrade Size:       0.61 MiB

:: Proceed with installation? [Y/n] 
(1/1) checking keys in keyring                                  [##################################] 100%
(1/1) checking package integrity                                [##################################] 100%
(1/1) loading package files                                     [##################################] 100%
(1/1) checking for file conflicts                               [##################################] 100%
error: failed to commit transaction (conflicting files)
breeze-icons: /lib exists in filesystem (owned by filesystem)
Errors occurred, no packages were upgraded

I had one hard-to-reproduce case where I basically nuked my VMs with that.

The recovery procedure in this case is:

# Boot from last ISO
# mount /dev/xxx to /mnt
cd /usr
mv lib/cmake/* usr/lib/cmake/.
mv lib/qml /usr/lib/.
rmdir lib/cmake
rmdir lib
ln -s usr/lib lib

Packages known to misbehave are ‘kqtquickcharts’, ‘breeze-icons’. Surely more to follow..

Admin
Andreas Baumann commented on 25.04.2024 06:52
breeze-icons: /usr/lib/cmake/KF6BreezeIcons/KF6BreezeIconsConfig.cmake exists in filesystem
breeze-icons: /usr/lib/cmake/KF6BreezeIcons/KF6BreezeIconsConfigVersion.cmake exists in filesystem
kqtquickcharts: /usr/lib/cmake/KQtQuickCharts/KQtQuickChartsConfig.cmake exists in filesystem
kqtquickcharts: /usr/lib/cmake/KQtQuickCharts/KQtQuickChartsVersion.cmake exists in filesystem

That's also not really better. But we can force overwrite those files..

Admin
Andreas Baumann commented on 25.04.2024 06:58

ok, overwritting renders the VM again unusable and replaces the /lib symlink.

Admin
Andreas Baumann commented on 25.04.2024 07:02

Ah, cool, now the /lib symlink is totally absent, so you just have to add it again..

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing