Nativefier: Electron segfaults under glibc 2.28 on arch linux (how to fix!)

Created on 9 Aug 2018  路  5Comments  路  Source: jiahaog/nativefier

Description

This isn't a nativefier issue per se, but rather an issue with how electron was compiled for linux and the new glibc 2.28 on arch linux

If you upgrade glibc you will get a segmentation fault when you launch any app created with nativefier, but you can fix it by patching it with the older version

Steps to reproduce issue

pacman -S glibc
npm i -g nativefier
nativefier https://medium.com
./medium-linux-x64/medium

Details

Resolution:

pacman -S patchelf
cd [your nativefier app]
mkdir glibc
curl -O https://archive.archlinux.org/packages/g/glibc/glibc-2.27-3-x86_64.pkg.tar.xz
tar -xJf glibc-2.27-3-x86_64.pkg.tar.xz -C glibc
patchelf --set-interpreter glibc/usr/lib/ld-linux-x86-64.so.2 [nativefier binary]
patchelf --set-rpath $(pwd):$(pwd)/glibc/usr/lib [nativefier binary]

This should allow your nativefied app to launch again.

  • Are you nativefying a public website?
    Yes

  • Feature request? Have you looked at nativefier --help to see if an existing option could fit your needs?
    No

  • Full nativefier command used to build your app:
    nativefier --name Plex https://app.plex.tv/desktop

  • Version of Nativefier (run nativefier --version): v7.6.7

  • Version of node.js (run node --version): v8.11.2

  • OS: Arch Linux
  • Error message / stack trace (if any): segmentation fault
<Error message / Stack trace here>
bug linux

Most helpful comment

I was also able to fix this by updating to glibc 2.28-4. It seems like the issues were revered in the commit here: https://git.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/glibc&id=f2aaaac68876f6959c62ea09dcdda5d441bf4ff7

Links to packages that I updated to fix this:

http://arch.mirror.square-r00t.net/testing/os/x86_64/glibc-2.28-4-x86_64.pkg.tar.xz
http://arch.mirror.square-r00t.net/testing/os/x86_64/lib32-glibc-2.28-4-x86_64.pkg.tar.xz

All 5 comments

On sites that include a file selection prompt you need to also downgrade icu, lib32-icu, and libxml2.

Thanks for the workaround 馃憤馃憤馃憤. That's https://github.com/electron/electron/issues/13972 . We're not going to do anything about it, just wait for Electron to fix it.

Arch passersby, sorry for the inconvenience, please use the above-mentioned workaround or use an old (2.0.4 maybe?) or recent (e.g. 3.0.0-beta.5) Electron. I use 3.0.0-beta.5 myself under Arch and it works :green_apple: .

I was also able to fix this by updating to glibc 2.28-4. It seems like the issues were revered in the commit here: https://git.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/glibc&id=f2aaaac68876f6959c62ea09dcdda5d441bf4ff7

Links to packages that I updated to fix this:

http://arch.mirror.square-r00t.net/testing/os/x86_64/glibc-2.28-4-x86_64.pkg.tar.xz
http://arch.mirror.square-r00t.net/testing/os/x86_64/lib32-glibc-2.28-4-x86_64.pkg.tar.xz

@unfw This is the real fix, thanks!

wget http://arch.mirror.square-r00t.net/testing/os/x86_64/glibc-2.28-4-x86_64.pkg.tar.xz
pacman -U glibc-2.28-4-x86_64.pkg.tar.xz

glibc will be updated this way and there will be no problems anymore.

glibc-2.28-4 is now the default on Arch. This should be closed.

Was this page helpful?
0 / 5 - 0 ratings