Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

riot-desktop does not start on debian 9 (stretch) due to segfault #13553

Closed
cknoll opened this issue May 6, 2020 · 13 comments
Closed

riot-desktop does not start on debian 9 (stretch) due to segfault #13553

cknoll opened this issue May 6, 2020 · 13 comments
Assignees
Labels
A-Packaging Packaging, signing, releasing T-Defect X-Regression

Comments

@cknoll
Copy link

cknoll commented May 6, 2020

Description

After recent update from the package riot-web to riot-desktop I cant start the program.

Steps to reproduce

in a terminal emulator I use the command riot-desktop and get the output:

Fontconfig warning: "/etc/fonts/fonts.conf", line 100: unknown element "blank"
Seshat unexpected error: Error: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.27' not found (required by /tmp/.org.chromium.Chromium.Eve6bf)
    at process.func (electron/js2c/asar.js:140:31)
    at process.func [as dlopen] (electron/js2c/asar.js:140:31)
    at Object.Module._extensions..node (internal/modules/cjs/loader.js:1016:18)
    at Object.func (electron/js2c/asar.js:140:31)
    at Object.func [as .node] (electron/js2c/asar.js:149:18)
    at Module.load (internal/modules/cjs/loader.js:816:32)
    at Module._load (internal/modules/cjs/loader.js:728:14)
    at Module._load (electron/js2c/asar.js:717:26)
    at Function.Module._load (electron/js2c/asar.js:717:26)
    at Module.require (internal/modules/cjs/loader.js:853:19)
Starting auto update with base URL: https://packages.riot.im/desktop/update/
Auto update not supported on this platform
Segmentation fault

I would expect the app to start.

Additionally, the same happens if I use riot-desktop --no-update. This seems strange because the the error message seems related to failing autoupdate.

Version information

  • Debian GNU/Linux 9 (stretch)
  • riot-desktop 1.6.0
  • ldd --version gives: ldd (Debian GLIBC 2.24-11+deb9u4) 2.24

Further Information

This issue seems to be related to #7623. There it is suggested to start with a fresh profile. But I dont know where my profile files are stored.

@uhoreg
Copy link
Member

uhoreg commented May 6, 2020

The failing autoupdate message is normal. But it may be related to the fact that seshat seems to be expecting glibc >= 2.27, while stretch only has 2.24.

If you want to try with a new profile, your profile is stored in ~/.config/Riot

@dbkr
Copy link
Member

dbkr commented May 6, 2020

Yeah, the docker image we're using to build has glibc 2.27

@cknoll
Copy link
Author

cknoll commented May 7, 2020

If you want to try with a new profile, your profile is stored in ~/.config/Riot

I deleted this directory and tried again: same result with same error message. But at leas a new directory ~/.config/Riot with some files is created.

If it helps I would be available today for a live debug session with voice-chat and screensharing.
topic-specific realtime contact: https://matrix.to/#/!ioMweEZnIFgBvaYGVe:matrix.org?via=matrix.org

#riot-debian9-debugging:matrix.org

@jryans
Copy link
Collaborator

jryans commented May 7, 2020

Looking across the supported distributions between Ubuntu and Debian, it appears Ubuntu's xenial (16.04 LTS) has the oldest glibc at 2.23.

@jryans
Copy link
Collaborator

jryans commented May 7, 2020

I'll attempt to craft a custom Docker image that uses Xenial as the base.

@jryans jryans self-assigned this May 7, 2020
@jryans jryans added X-Regression A-Packaging Packaging, signing, releasing labels May 7, 2020
jryans added a commit to element-hq/element-desktop that referenced this issue May 7, 2020
Since Xenial has the oldest glibc (2.23) of all the active distributions, this
attempts to construct a build image based on that. The Dockerfile here was built
by recursively expanding the `FROM` lines until reaching
`buildpack-deps:bionic-curl` and then changing that to `xenial`. Everything else
is the same.

Part of element-hq/element-web#13553
@jryans
Copy link
Collaborator

jryans commented May 7, 2020

@cknoll Could you try installing riot-nightly (you should get version 2020050702 or newer) and checking whether that nightly build works on Stretch? If so, I'll prepare a fixed release build as well.

@t3chguy
Copy link
Member

t3chguy commented May 7, 2020

(nightly is affected by the space-in-path issue with electron sandboxing though)

@jryans
Copy link
Collaborator

jryans commented May 7, 2020

Ah right, I guess you may need to rename /opt/Riot Nightly to not have a space after install... 😭

@cknoll
Copy link
Author

cknoll commented May 7, 2020

just installed riot-nightly and the segfault issue is gone 👍 . However it takes unusually long for syncing (ca. 10min and still going...)

@jryans
Copy link
Collaborator

jryans commented May 7, 2020

Great to hear the segfault is fixed! I'll proceed with building release the same way then.

However it takes unusually long for syncing (ca. 10min and still going...)

Hmm, okay, that seems unrelated to this issue, but feel free to create a new issue and capture logs to investigate. The initial sync time is highly dependent on account size, server used, etc.

@cknoll
Copy link
Author

cknoll commented May 7, 2020

Finally, syncing finished and the app seems to work fine. Thank you!

@jryans
Copy link
Collaborator

jryans commented May 11, 2020

1.6.0-2 has now been published which should fix this issue for release as well.

@jryans jryans closed this as completed May 11, 2020
@cknoll
Copy link
Author

cknoll commented May 12, 2020

1.6.0-2 has now been published which should fix this issue for release as well.

I can confirm this on my system.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-Packaging Packaging, signing, releasing T-Defect X-Regression
Projects
None yet
Development

No branches or pull requests

6 participants