You are not logged in.

#1 2019-02-28 17:25:43

ozwigh
Member
Registered: 2014-10-07
Posts: 21

[SOLVED] libncursesw.so.6 is included incorrectly into initramfs image

Hi there.

After the recent update, my system (LVM2 on LUKS) failed to boot 'cause of missed lvm2 dependency (libncursesw.so.6). File itself (libncursesw.so.6) does exist in the image, but it's located in /usr/lib/swift/linux (?!), and it's the only file there. Obviously, it's wrong, 'cause before that, it was located correctly in /usr/lib (I checked backups).
So, what's the cause and how to fix it?

Thanks.

Edit: my mkinitcpio.conf is pretty much standard and I tried various combinations: systemd/busybox with/without autoconf, same result everywhere.

Edit2: guess I found the culprit. /usr/lib/swift/linux/libncursesw.so.6 comes from swift-bin package and included into image as-is. But why mkinitcpio includes it instead of one located in /usr/bin? I had swift installed for ages and mkinitcpio version 24 handled it correctly. Looks like mkinitcpio version 25 issue, no?

Edit3: removing swift-bin before rebuilding images solves the problem. Guess I should create mkinitcpio bug report too.

Last edited by ozwigh (2019-02-28 17:54:40)

Offline

#2 2019-02-28 17:28:23

Slithery
Administrator
From: Norfolk, UK
Registered: 2013-12-01
Posts: 5,776

Re: [SOLVED] libncursesw.so.6 is included incorrectly into initramfs image

Does it work if you rebuild the initramfs?

Do you have anything in your path that could lead to non-system binaries being called by mkinitcpio?


No, it didn't "fix" anything. It just shifted the brokeness one space to the right. - jasonwryan
Closing -- for deletion; Banning -- for muppetry. - jasonwryan

aur - dotfiles

Offline

#3 2019-02-28 17:31:10

ozwigh
Member
Registered: 2014-10-07
Posts: 21

Re: [SOLVED] libncursesw.so.6 is included incorrectly into initramfs image

Slithery wrote:

Does it work if you rebuild the initramfs?

Do you have anything in your path that could lead to non-system binaries being called by mkinitcpio?

No, I rebuilt it a few times, no effect. libncursesw.so.6 is always in the wrong place.

As for another question - no idea, but I'll check it right now.

Offline

#4 2019-02-28 17:59:34

Slithery
Administrator
From: Norfolk, UK
Registered: 2013-12-01
Posts: 5,776

Re: [SOLVED] libncursesw.so.6 is included incorrectly into initramfs image

It isn't a mkinitcpio bug, it's a packaging bug in swift-bin.
Read the comments on the AUR page.

Can you please try to refrain from top-posting like you've just done as it destroys the flow of conversation (you need to read back to the first post before jumping back down to this one to understand my comments). Thanks smile


No, it didn't "fix" anything. It just shifted the brokeness one space to the right. - jasonwryan
Closing -- for deletion; Banning -- for muppetry. - jasonwryan

aur - dotfiles

Offline

#5 2019-02-28 22:49:05

eschwartz
Fellow
Registered: 2014-08-08
Posts: 4,097

Re: [SOLVED] libncursesw.so.6 is included incorrectly into initramfs image

The swift-bin package has numerous problems with it, and I'm strongly considering a deletion request to get rid of it from the world. Copy-pasting my reasons from there...

eschwartz@aur.archlinux.org wrote:

> In addition, the Fedora Swift binaries are now used over the Ubuntu ones, which means that no more ld hacks are needed, and the amount of ugly changes to the binaries has been significantly dropped.

Unfortunately, this now means that the package is a lie, as a -bin package that does not actually use the upstream "Official binary builds" has no excuse to exist.

It is also the source of a very major problem -- you have done vastly inappropriate things to the ld loader in order to *lie* about the binaries, introducing deadly libicu symlinks to the entire user ecosystem rather than depending on https://aur.archlinux.org/packages/icu62 for the *incompatible* libraries that *don't work at all*.

And rather than assassinating peoples' initramfs with broken and inadvisable ncurses breakage, you should have used patchelf --replace-needed to redirect the ncurses linkage.

But this is precisely why it is completely wrong to create -bin packages for open-source code that merely download some other linux distribution's unofficial builds. There is zero utility of using this over the one that builds, properly, from source. The only reason -bin packages make sense at all is when upstream developers provide standalone binaries that are meant to work out of the box and which they test against for source code regressions. None of that is the case here -- Fedora doesn't build statically against icu or ncurses, so you end up breaking not only the package, but also peoples' systems, trying to sledgehammer it into working.

...

Anyway, give me one reason why this package should not be deleted.

Last edited by eschwartz (2019-02-28 23:06:14)


Managing AUR repos The Right Way -- aurpublish (now a standalone tool)

Offline

#6 2019-02-28 23:13:08

jasonwryan
Anarchist
From: .nz
Registered: 2009-05-09
Posts: 30,424
Website

Re: [SOLVED] libncursesw.so.6 is included incorrectly into initramfs image

No point continuing to cast shade on pacman for this one. Moving to AUR Issues...


Arch + dwm   •   Mercurial repos  •   Surfraw

Registered Linux User #482438

Offline

Board footer

Powered by FluxBB