Vencord / Vesktop

Vesktop is a custom Discord App aiming to give you better performance and improve linux support
GNU General Public License v3.0
4.09k stars 187 forks source link

Vesktop-bin crashes with `SIGTRAP` on Arch Linux (Wayland) #535

Closed 00-kat closed 6 months ago

00-kat commented 6 months ago

Describe the bug

I launch Vesktop. The loading screen thing opens. It disappears. According to my terminal it was terminated by a 'trace or breakpoint trap' (SIGTRAP).

To Reproduce

  1. Download Arch Linux. Sorry
  2. Download vesktop-bin from the AUR (not vesktop which apparently has segfaults). This will pull in electron 29 (not 30).
  3. Run it in a terminal.
  4. Observe how it crashes.

Expected behavior

Vesktop doesn't crash.

Screenshots

I open it. I see this: Image of the splash screen thing It disappears. SIGTRAP.

Desktop (please complete the following information):

It could possibly be because I'm using the hardened kernel, but I doubt it.

Command line output

Ran it with ELECTRON_ENABLE_LOGGING=1, yw.

[21472:0422/163205.287382:WARNING:wayland_object.cc(159)] Binding to zwp_linux_dmabuf_v1 version 3 but version 4 is available.
[21472:0422/163205.287464:WARNING:wayland_object.cc(159)] Binding to wl_seat version 8 but version 9 is available.
[21472:0422/163205.287506:WARNING:wayland_object.cc(159)] Binding to zwp_pointer_gestures_v1 version 1 but version 3 is available.
[21472:0422/163205.354223:WARNING:wayland_surface.cc(182)] Server doesn't support zcr_alpha_compositing_v1.
[21472:0422/163205.354252:WARNING:wayland_surface.cc(197)] Server doesn't support overlay_prioritizer.
[21472:0422/163205.354259:WARNING:wayland_surface.cc(211)] Server doesn't support surface_augmenter.
[21472:0422/163205.354266:WARNING:wayland_surface.cc(226)] Server doesn't support wp_content_type_v1
[21472:0422/163205.354270:WARNING:wayland_surface.cc(245)] Server doesn't support zcr_color_management_surface.
[21521:0422/163205.435021:WARNING:sandbox_linux.cc(418)] InitializeSandbox() called with multiple threads in process gpu-process.
[21472:0422/163205.453720:WARNING:bluez_dbus_manager.cc(248)] Floss manager not present, cannot set Floss enable/disable.
[arRPC > ipc] listening at /run/user/1000/discord-ipc-0
[arRPC > websocket] listening on 6463
[arRPC > process] started
[21472:0422/163205.808228:INFO:CONSOLE(0)] "Error with Permissions-Policy header: Origin trial controlled feature not enabled: 'interest-cohort'.", source:  (0)
[21472:0422/163205.808420:INFO:CONSOLE(0)] "Unrecognized Content-Security-Policy directive 'prefetch-src'.", source: https://discord.com/app (0)
[21472:0422/163205.810866:INFO:CONSOLE(2)] "%cElectron Security Warning (Insecure Content-Security-Policy) font-weight: bold; This renderer process has either no Content Security
  Policy set or a policy with "unsafe-eval" enabled. This exposes users of
  this app to unnecessary security risks.

For more information and help, consult
https://electronjs.org/docs/tutorial/security.
This warning will not show up
once the app is packaged.", source: node:electron/js2c/sandbox_bundle (2)
[21472:0422/163205.953975:INFO:CONSOLE(5)] "%c Vencord %c %c PluginManager  background: #a6d189; color: black; font-weight: bold; border-radius: 5px;  background: #a6d189; color: black; font-weight: bold; border-radius: 5px; Starting plugins (stage Init)", source: VencordDesktopRenderer (5)
[21472:0422/163205.954079:INFO:CONSOLE(5)] "%c Vencord %c %c PluginManager  background: #a6d189; color: black; font-weight: bold; border-radius: 5px;  background: #a6d189; color: black; font-weight: bold; border-radius: 5px; Starting plugin PreviewMessage", source: VencordDesktopRenderer (5)
[21472:0422/163205.963955:INFO:CONSOLE(1)] "read if cute :3", source: VCDRenderer (1)
[21472:0422/163205.973329:INFO:CONSOLE(42)] "[FAST CONNECT] wss://gateway.discord.gg/?encoding=json&v=9&compress=zlib-stream, encoding: json, version: 9", source: https://discord.com/app (42)
[21472:0422/163206.053289:INFO:CONSOLE(49)] "Unrecognized Content-Security-Policy directive 'prefetch-src'.", source: https://discord.com/app (49)
[21472:0422/163206.054929:INFO:CONSOLE(49)] "Unrecognized Content-Security-Policy directive 'prefetch-src'.", source: https://discord.com/app (49)
[21472:0422/163206.070616:INFO:CONSOLE(5)] "%c Vencord %c %c WebpackInterceptor  background: #a6d189; color: black; font-weight: bold; border-radius: 5px;  background: #8caaee; color: black; font-weight: bold; border-radius: 5px; Patching webpackChunkdiscord_app.push", source: VencordDesktopRenderer (5)
[21472:0422/163206.770472:INFO:CONSOLE(5)] "%c Vencord %c %c WebpackInterceptor  background: #a6d189; color: black; font-weight: bold; border-radius: 5px;  background: #8caaee; color: black; font-weight: bold; border-radius: 5px; Found webpack module factory", source: VencordDesktopRenderer (5)
[21472:0422/163206.863243:INFO:CONSOLE(1)] "%c[ProcessUtilsElectron] 
font-weight: bold;
color: purple;
 setMemoryInformation not available.", source: https://discord.com/assets/73050.ed28c446e39c70b0c6c0.js (1)
[21472:0422/163207.116916:INFO:CONSOLE(1)] "%c[DatabaseManager] 
font-weight: bold;
color: purple;
 active user changed (now: 665120188047556609, was: null, was: undefined)", source: https://discord.com/assets/73050.ed28c446e39c70b0c6c0.js (1)
[21472:0422/163207.137082:INFO:CONSOLE(1)] "%c[default] 
font-weight: bold;
color: purple;
 [BUILD INFO] Release Channel: stable, Build Number: 286349, Version Hash: 4b5188ef75489964e4fd8ea3155fc3e8c42a74b8", source: https://discord.com/assets/73050.ed28c446e39c70b0c6c0.js (1)
[21472:0422/163207.137303:INFO:CONSOLE(1)] "AppCrashedFatalReport: getLastCrash not supported.", source: https://discord.com/assets/73050.ed28c446e39c70b0c6c0.js (1)
[21472:0422/163207.345851:INFO:CONSOLE(5)] "%c Vencord %c %c WebpackInterceptor  background: #a6d189; color: black; font-weight: bold; border-radius: 5px;  background: #8caaee; color: black; font-weight: bold; border-radius: 5px; Successfully initialised Vencord webpack", source: VencordDesktopRenderer (5)
[21472:0422/163207.368964:INFO:CONSOLE(5)] "%c Vencord %c %c WebpackInterceptor  background: #a6d189; color: black; font-weight: bold; border-radius: 5px;  background: #8caaee; color: black; font-weight: bold; border-radius: 5px; Found webpack module factory", source: VencordDesktopRenderer (5)
[21472:0422/163207.378185:INFO:CONSOLE(5)] "%c Vencord %c %c PluginManager  background: #a6d189; color: black; font-weight: bold; border-radius: 5px;  background: #a6d189; color: black; font-weight: bold; border-radius: 5px; Starting plugins (stage DOMContentLoaded)", source: VencordDesktopRenderer (5)
[21472:0422/163207.381066:INFO:CONSOLE(42)] "[FAST CONNECT] connected in 1407ms", source: https://discord.com/app (42)
[21472:0422/163207.424236:INFO:CONSOLE(1)] "Uncaught (in promise) Error: Cannot find module './notosans-400-normalitalic.woff2'", source: https://discord.com/assets/73050.ed28c446e39c70b0c6c0.js (1)
[21472:0422/163207.935450:INFO:CONSOLE(12)] "[DEPRECATED] Please use `subscribeWithSelector` middleware", source: https://discord.com/assets/44076.b5f9426088ebaff2b53a.js (12)
[21472:0422/163207.984536:INFO:CONSOLE(1)] "%c[ConnectionStore] 
font-weight: bold;
color: purple;
 Socket is reconnecting because of starting new session", source: https://discord.com/assets/73050.ed28c446e39c70b0c6c0.js (1)
[21472:0422/163207.984587:INFO:CONSOLE(1)] "%c[GatewaySocket] 
font-weight: bold;
color: purple;
 .connect() called, new state is WILL_RECONNECT", source: https://discord.com/assets/73050.ed28c446e39c70b0c6c0.js (1)
[21472:0422/163207.984664:INFO:CONSOLE(1)] "%c[GatewaySocket] 
font-weight: bold;
color: purple;
 Setting connection state to WILL_RECONNECT", source: https://discord.com/assets/73050.ed28c446e39c70b0c6c0.js (1)
[21472:0422/163207.984870:INFO:CONSOLE(1)] "%c[GatewaySocket] 
font-weight: bold;
color: purple;
 Setting connection state to CONNECTING", source: https://discord.com/assets/73050.ed28c446e39c70b0c6c0.js (1)
[21472:0422/163207.985009:INFO:CONSOLE(1)] "%c[GatewaySocket] 
font-weight: bold;
color: purple;
 [CONNECT] wss://gateway.discord.gg, encoding: json, version: 9, compression: zlib-stream", source: https://discord.com/assets/73050.ed28c446e39c70b0c6c0.js (1)
[21472:0422/163207.985231:INFO:CONSOLE(1)] "%c[GatewaySocket] 
font-weight: bold;
color: purple;
 [FAST CONNECT] successfully took over websocket, state: [object Object]", source: https://discord.com/assets/73050.ed28c446e39c70b0c6c0.js (1)
[21472:0422/163207.985353:INFO:CONSOLE(1)] "%c[GatewaySocket] 
font-weight: bold;
color: purple;
 [CONNECTED] wss://gateway.discord.gg/?encoding=json&v=9&compress=zlib-stream in 1 ms", source: https://discord.com/assets/73050.ed28c446e39c70b0c6c0.js (1)
[21472:0422/163207.985552:INFO:CONSOLE(1)] "%c[ConnectionStore] 
font-weight: bold;
color: purple;
 handleIdentify called [object Object]", source: https://discord.com/assets/73050.ed28c446e39c70b0c6c0.js (1)
[21472:0422/163207.985584:INFO:CONSOLE(1)] "%c[GatewaySocket] 
font-weight: bold;
color: purple;
 Setting connection state to IDENTIFYING", source: https://discord.com/assets/73050.ed28c446e39c70b0c6c0.js (1)
[21472:0422/163207.987389:INFO:CONSOLE(1)] "%c[GatewaySocket] 
font-weight: bold;
color: purple;
 [HELLO] via 
gateway-prd-us-east1-c-q1kr: 0, heartbeat interval: 41250, took 3 ms", source: https://discord.com/assets/73050.ed28c446e39c70b0c6c0.js (1)
[21472:0422/163208.000241:INFO:CONSOLE(1)] "%c[GatewaySocket] 
font-weight: bold;
color: purple;
 [IDENTIFY]", source: https://discord.com/assets/73050.ed28c446e39c70b0c6c0.js (1)
[21472:0422/163208.074918:INFO:CONSOLE(1)] "Unrecognized Content-Security-Policy directive 'prefetch-src'.", source: https://discord.com/cdn-cgi/challenge-platform/scripts/jsd/main.js (1)
[21472:0422/163208.075359:INFO:CONSOLE(1)] "Unrecognized Content-Security-Policy directive 'prefetch-src'.", source: https://discord.com/cdn-cgi/challenge-platform/scripts/jsd/main.js (1)
fish: Job 1, 'ELECTRON_ENABLE_LOGGING=1 veskt…' terminated by signal SIGTRAP (Trace or breakpoint trap)

Looks perfectly fine until it just decides to die. Can't find any reason why, because those logs look like normal-ish runtime logs.

Also noticed that there are some warm, fresh coredumps (/s). Here's coredumpctl info:

           PID: 23919 (electron)
           UID: 1000 (mycoolusername)
           GID: 1000 (mycoolusername)
        Signal: 5 (TRAP)
     Timestamp: redacted (2min 6s ago)
  Command Line: $'/usr/lib/electron29/electron /usr/lib/vesktop/app.asar env ELECTRON_OZONE_PLATFORM_HINT=auto'
    Executable: /usr/lib/electron29/electron
 Control Group: /user.slice/user-1000.slice/session-1.scope
          Unit: session-1.scope
         Slice: user-1000.slice
       Session: 1
     Owner UID: 1000 (mycoolusername)
       Boot ID: no thx
    Machine ID: no thx
      Hostname: ArchLinux
       Storage: /var/lib/systemd/coredump/core.electron.1000.longfilename.zst (present)
  Size on Disk: 25.8M
       Message: Process 23919 (electron) of user 1000 dumped core.

I am hesitant to upload the coredump as that probably has my Discord token in it.

Additional context

This did not happen 18 hours ago when I was using Vesktop. It happened 6 hours ago though. I checked pacman.log and there doesn't seem to have been any Vesktop or Electron update? I think? I definitely know I updated yesterday and I did not close Vesktop until I went to sleep, so maybe it got updated ¯_(ツ)_/¯.

I don't feel like compiling Chromium from source today, and I hear from many other issues that vesktop from the AUR is broken with recommendations to use vesktop-bin instead, so I won't be trying either of those.

Vendicated commented 6 months ago

the aur packages are not ofdicial and thus not supported. Try official builds like the flatpak or AppImage

00-kat commented 6 months ago

But which issue is this a duplicate of?

Edit: also, is the .deb file from releases an official build? Because if it is, the AUR package vesktop-bin is almost official (since it just downloads the deb archive, unpacks it and installs it). Not saying that it should make this a valid issue, just saying that it's what it does.