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

[Wayland] Intermittent segfault crash on startup #6247

Closed
2 tasks done
kevinoid opened this issue Jan 16, 2023 · 44 comments
Closed
2 tasks done

[Wayland] Intermittent segfault crash on startup #6247

kevinoid opened this issue Jan 16, 2023 · 44 comments

Comments

@kevinoid
Copy link

  • I have searched open and closed issues for duplicates
  • I am using Signal-Desktop as provided by the Signal team, not a 3rd-party package.

Bug Description

Signal Desktop Beta v6.3.0-beta.1 crashes shortly after starting, when started with --ozone-platform=wayland, approximately 50% of the time.

Steps to Reproduce

  1. Run signal-desktop-beta --ozone-platform=wayland

Actual Result:

The Signal window briefly appears then disappears. On the next execution, the "Application crashed" dialog appears. (Note: This occurs ~50% of the time. The other 50% Signal does not crash.)

Expected Result:

Signal does not crash.

Output

Set Windows Application User Model ID (AUMID) { appUserModelId: 'org.whispersystems.signal-desktop-beta' }
NODE_ENV production
NODE_CONFIG_DIR /opt/Signal Beta/resources/app.asar/config
NODE_CONFIG {}
ALLOW_CONFIG_MUTATIONS undefined
HOSTNAME undefined
NODE_APP_INSTANCE undefined
SUPPRESS_NO_CONFIG_WARNING undefined
SIGNAL_ENABLE_HTTP undefined
userData: /home/kevin/.config/Signal Beta
config/get: Successfully read user config file
config/get: Successfully read ephemeral config file
(node:367121) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
(Use `exe --trace-deprecation ...` to show where the warning was created)
[0116/115826.461669:ERROR:elf_dynamic_array_reader.h(64)] tag not found
[0116/115826.462095:ERROR:elf_dynamic_array_reader.h(64)] tag not found

Platform Info

Signal Version: 6.3.0-beta.1

Operating System: Debian GNU/Linux bookworm/sid with Linux 6.2.0-rc3

Linked Device Version: 6.8.2

Link to Debug Log

https://debuglogs.org/desktop/6.3.0-beta.1/desktop-crash-e227e80a9fa0d3629e04b5e5bc2da13ff2111d52190d804bad3fe883cf2f2612.dmp

@ctot-nondef
Copy link

not sure if this is the same issue, but I can reproduce this behaviour on fedora sliverblue (since version 6.5.0):

[  162.827616] signal-desktop[3338]: segfault at 2d0 ip 00007f43d9e90e44 sp 00007fff15f58370 error 4 in libc.so.6[7f43d9e28000+180000] likely on CPU 12 (core 6, socket 0)
[  162.827625] Code: b1 55 f8 5d c3 90 f3 0f 1e fa 55 48 89 e5 41 57 41 56 41 55 41 54 53 48 83 ec 48 64 48 8b 04 25 28 00 00 00 48 89 45 c8 31 c0 <8b> 87 d0 02 00 00 85 c0 0f 88 5e 01 00 00 49 89 ff 48 39 bf 28 06

@indutny-signal
Copy link
Contributor

Unfortunately we don't officially support Fedora Linux right now, so I'd advise reaching out to maintainers of the package to see if they can help. Thanks!

@omeid
Copy link

omeid commented Feb 16, 2023

Same thing happens on Archlinux.

@dumol
Copy link

dumol commented Mar 3, 2023

Using Signal 6.8.0 through Flatpak on a Void Linux musl-based installation, similar issues…

@scottnonnenberg-signal
Copy link
Contributor

@dumol Unfortunately we don't officially support the Flatpak installation technique, or Void Linux, at the moment. I'd recommend that you reach out to the folks maintaining that Flatpak installation technique, see if they can help you out.

@dumol
Copy link

dumol commented Mar 7, 2023

@scottnonnenberg-signal Thanks, but the idea was to document that the same issue manifests itself when running Signal under Flatpak. So there's really no reason to look for solutions somewhere else, anyone else affected should wait for Signal (or Electron?) to fix this, AFAICT.

@hacktivateit
Copy link

hacktivateit commented Mar 15, 2023

Also happening to me
Archlinux fully updated as today, Wayland with Sway, Signal-Desktop 6.9.0-1 installed from community

Signal-desktop manually launched with
signal-desktop --enable-features=UseOzonePlatform --ozone-platform=wayland --enable-features=WaylandWindowDecorations

Segfault after 4-5 seconds, this is the full output

Set Windows Application User Model ID (AUMID) { appUserModelId: 'org.whispersystems.signal-desktop' }
NODE_ENV production
NODE_CONFIG_DIR /usr/lib/signal-desktop/resources/app.asar/config
NODE_CONFIG {}
ALLOW_CONFIG_MUTATIONS undefined
HOSTNAME undefined
NODE_APP_INSTANCE undefined
SUPPRESS_NO_CONFIG_WARNING undefined
SIGNAL_ENABLE_HTTP undefined
userData: /home/REDACTED/.config/Signal
config/get: Successfully read user config file
config/get: Successfully read ephemeral config file
making app single instance
[5539:0315/155754.066057:ERROR:object_proxy.cc(623)] Failed to call method: org.freedesktop.DBus.Properties.Get: object_path= /org/freedesktop/portal/desktop: org.freedesktop.DBus.Error.InvalidArgs: Interfaccia «org.freedesktop.portal.FileChooser» inesistente
[5539:0315/155754.066090:ERROR:select_file_dialog_linux_portal.cc(274)] Failed to read portal version property
{"level":30,"time":"2023-03-15T14:57:54.113Z","msg":"app.ready: preferred system locales: it, it-IT, it-IT, it, it"}
{"level":30,"time":"2023-03-15T14:57:54.118Z","msg":"Loading preferred system locale: 'it'"}
{"level":30,"time":"2023-03-15T14:57:54.145Z","msg":"app ready"}
{"level":30,"time":"2023-03-15T14:57:54.145Z","msg":"starting version 6.9.0"}
{"level":30,"time":"2023-03-15T14:57:54.145Z","msg":"media access status [object Undefined] [object Undefined]"}
{"level":30,"time":"2023-03-15T14:57:54.146Z","msg":"got fast theme-setting value dark"}
{"level":30,"time":"2023-03-15T14:57:54.147Z","msg":"got fast theme-setting value dark"}
{"level":30,"time":"2023-03-15T14:57:54.148Z","msg":"got fast spellcheck setting true"}
{"level":30,"time":"2023-03-15T14:57:54.148Z","msg":"getSystemTraySetting had no flags and did no DB lookups. Returning DoNotUseSystemTray"}
{"level":30,"time":"2023-03-15T14:57:54.149Z","msg":"Initializing BrowserWindow config: {\"show\":false,\"width\":848,\"height\":1053,\"minWidth\":300,\"minHeight\":200,\"autoHideMenuBar\":true,\"titleBarStyle\":\"default\",\"titleBarOverlay\":false,\"backgroundColor\":\"#121212\",\"webPreferences\":{\"devTools\":false,\"spellcheck\":true,\"nodeIntegration\":false,\"nodeIntegrationInWorker\":false,\"sandbox\":false,\"contextIsolation\":true,\"preload\":\"[REDACTED]/preload.bundle.js\",\"backgroundThrottling\":true,\"enablePreferredSizeMode\":true,\"disableBlinkFeatures\":\"Accelerated2dCanvas,AcceleratedSmallCanvases\"},\"icon\":\"[REDACTED]/images/signal-logo-desktop-linux.png\",\"x\":0,\"y\":0}"}
{"level":30,"time":"2023-03-15T14:57:54.159Z","msg":"spellcheck: user locale: it"}
{"level":30,"time":"2023-03-15T14:57:54.159Z","msg":"spellcheck: available spellchecker languages:  [\"af\",\"bg\",\"ca\",\"cs\",\"cy\",\"da\",\"de\",\"de-DE\",\"el\",\"en\",\"en-AU\",\"en-CA\",\"en-GB\",\"en-GB-oxendict\",\"en-US\",\"es\",\"es-419\",\"es-AR\",\"es-ES\",\"es-MX\",\"es-US\",\"et\",\"fa\",\"fo\",\"fr\",\"fr-FR\",\"he\",\"hi\",\"hr\",\"hu\",\"hy\",\"id\",\"it\",\"it-IT\",\"ko\",\"lt\",\"lv\",\"nb\",\"nl\",\"pl\",\"pt\",\"pt-BR\",\"pt-PT\",\"ro\",\"ru\",\"sh\",\"sk\",\"sl\",\"sq\",\"sr\",\"sv\",\"ta\",\"tg\",\"tr\",\"uk\",\"vi\"]"}
{"level":30,"time":"2023-03-15T14:57:54.159Z","msg":"spellcheck: setting languages to:  [\"it\"]"}
{"level":30,"time":"2023-03-15T14:57:54.160Z","msg":"got fast theme-setting value dark"}
{"level":30,"time":"2023-03-15T14:57:54.167Z","msg":"MainSQL: updateSchema:\n  Current user_version: 78;\n  Most recent db schema: 78;\n  SQLite version: 3.39.4;\n  SQLCipher version: 4.5.3 community;\n  (deprecated) schema_version: 339;\n"}
{"level":30,"time":"2023-03-15T14:57:55.019Z","msg":"main window is ready-to-show"}
{"level":30,"time":"2023-03-15T14:57:55.020Z","msg":"showing main window"}
{"level":30,"time":"2023-03-15T14:57:55.027Z","msg":"got fast spellcheck setting true"}
{"level":30,"time":"2023-03-15T14:57:55.035Z","msg":"System tray service: created"}
{"level":30,"time":"2023-03-15T14:57:55.035Z","msg":"System tray service: updating main window. Previously, there was not a window, and now there is"}
{"level":30,"time":"2023-03-15T14:57:55.035Z","msg":"System tray service: rendering no tray"}
{"level":30,"time":"2023-03-15T14:57:55.036Z","msg":"Begin ensuring permissions"}
{"level":30,"time":"2023-03-15T14:57:55.072Z","msg":"Ensuring file permissions for 4 files"}
{"level":30,"time":"2023-03-15T14:57:55.074Z","msg":"Finish ensuring permissions in 38ms"}
{"level":30,"time":"2023-03-15T14:57:55.551Z","msg":"MainSQL: slow query getAllConversations duration=42ms"}
{"level":30,"time":"2023-03-15T14:57:56.069Z","msg":"sending `database-ready`"}
{"level":30,"time":"2023-03-15T14:57:56.469Z","msg":"Prevent display sleep service: allowing display sleep"}
{"level":30,"time":"2023-03-15T14:57:56.470Z","msg":"Background throttling enabled because no call is active"}
{"level":30,"time":"2023-03-15T14:57:57.012Z","msg":"updater/start: Updates disabled - not starting new version checks"}
{"level":30,"time":"2023-03-15T14:57:57.036Z","msg":"App loaded - time: 2897"}
{"level":30,"time":"2023-03-15T14:57:57.036Z","msg":"SQL init - time: 28"}
{"level":30,"time":"2023-03-15T14:57:57.036Z","msg":"Preload - time: 504"}
{"level":30,"time":"2023-03-15T14:57:57.036Z","msg":"WebSocket connect - time: 1631"}
{"level":30,"time":"2023-03-15T14:57:57.036Z","msg":"Processed count: 0"}
{"level":30,"time":"2023-03-15T14:57:57.037Z","msg":"Messages per second: 0"}
Errore di segmentazione (core dump creato)

@RaitoBezarius
Copy link

I can confirm I reproduce this on signal-desktop stable (6.9.0) on NixOS.

@vilvo
Copy link

vilvo commented Mar 20, 2023

Reproduces on signal-desktop 6.10.1 with:

❯ signal-desktop
Set Windows Application User Model ID (AUMID) { appUserModelId: 'org.whispersystems.signal-desktop' }
NODE_ENV production
NODE_CONFIG_DIR /nix/store/z7674vjpxnyyc584fdal2pd11h7xw1hq-signal-desktop-6.10.1/lib/Signal/resources/app.asar/config
NODE_CONFIG {}
ALLOW_CONFIG_MUTATIONS undefined
HOSTNAME undefined
NODE_APP_INSTANCE undefined
SUPPRESS_NO_CONFIG_WARNING undefined
SIGNAL_ENABLE_HTTP undefined
userData: /home/vilvo/.config/Signal
config/get: Successfully read user config file
config/get: Successfully read ephemeral config file
making app single instance
{"level":30,"time":"2023-03-20T13:05:05.678Z","msg":"app.ready: preferred system locales: en-US, en"}
{"level":30,"time":"2023-03-20T13:05:05.682Z","msg":"Loading preferred system locale: 'en-US'"}
{"level":40,"time":"2023-03-20T13:05:05.682Z","msg":"Problem loading messages for locale 'en-US', Error: ENOENT, _locales/en-US/messages.json not found in [REDACTED]"}
{"level":40,"time":"2023-03-20T13:05:05.682Z","msg":"Falling back to parent language: 'en'"}
{"level":30,"time":"2023-03-20T13:05:05.710Z","msg":"app ready"}
{"level":30,"time":"2023-03-20T13:05:05.711Z","msg":"starting version 6.10.1"}
{"level":30,"time":"2023-03-20T13:05:05.711Z","msg":"media access status [object Undefined] [object Undefined]"}
{"level":30,"time":"2023-03-20T13:05:05.711Z","msg":"got fast theme-setting value system"}
{"level":30,"time":"2023-03-20T13:05:05.713Z","msg":"got fast theme-setting value system"}
{"level":30,"time":"2023-03-20T13:05:05.714Z","msg":"got fast spellcheck setting true"}
{"level":30,"time":"2023-03-20T13:05:05.714Z","msg":"getSystemTraySetting had no flags and did no DB lookups. Returning DoNotUseSystemTray"}
{"level":30,"time":"2023-03-20T13:05:05.715Z","msg":"Initializing BrowserWindow config: {\"show\":false,\"width\":956,\"height\":1030,\"minWidth\":300,\"minHeight\":200,\"autoHideMenuBar\":false,\"titleBarStyle\":\"default\",\"titleBarOverlay\":false,\"backgroundColor\":\"#3a76f0\",\"webPreferences\":{\"devTools\":false,\"spellcheck\":true,\"nodeIntegration\":false,\"nodeIntegrationInWorker\":false,\"sandbox\":false,\"contextIsolation\":true,\"preload\":\"[REDACTED]/preload.bundle.js\",\"backgroundThrottling\":true,\"enablePreferredSizeMode\":true,\"disableBlinkFeatures\":\"Accelerated2dCanvas,AcceleratedSmallCanvases\"},\"icon\":\"[REDACTED]/images/signal-logo-desktop-linux.png\",\"x\":0,\"y\":0}"}
{"level":30,"time":"2023-03-20T13:05:05.725Z","msg":"spellcheck: user locale: en-US"}
{"level":30,"time":"2023-03-20T13:05:05.725Z","msg":"spellcheck: available spellchecker languages:  [\"af\",\"bg\",\"ca\",\"cs\",\"cy\",\"da\",\"de\",\"de-DE\",\"el\",\"en\",\"en-AU\",\"en-CA\",\"en-GB\",\"en-GB-oxendict\",\"en-US\",\"es\",\"es-419\",\"es-AR\",\"es-ES\",\"es-MX\",\"es-US\",\"et\",\"fa\",\"fo\",\"fr\",\"fr-FR\",\"he\",\"hi\",\"hr\",\"hu\",\"hy\",\"id\",\"it\",\"it-IT\",\"ko\",\"lt\",\"lv\",\"nb\",\"nl\",\"pl\",\"pt\",\"pt-BR\",\"pt-PT\",\"ro\",\"ru\",\"sh\",\"sk\",\"sl\",\"sq\",\"sr\",\"sv\",\"ta\",\"tg\",\"tr\",\"uk\",\"vi\"]"}
{"level":30,"time":"2023-03-20T13:05:05.725Z","msg":"spellcheck: setting languages to:  [\"en-US\"]"}
{"level":30,"time":"2023-03-20T13:05:05.726Z","msg":"got fast theme-setting value system"}
{"level":30,"time":"2023-03-20T13:05:05.734Z","msg":"MainSQL: updateSchema:\n  Current user_version: 79;\n  Most recent db schema: 79;\n  SQLite version: 3.39.4;\n  SQLCipher version: 4.5.3 community;\n  (deprecated) schema_version: 341;\n"}
{"level":30,"time":"2023-03-20T13:05:06.658Z","msg":"main window is ready-to-show"}
{"level":30,"time":"2023-03-20T13:05:06.659Z","msg":"showing main window"}
Segmentation fault (core dumped)

kernel log

[  218.632454] signal-desktop[2160]: segfault at 31c001010101 ip 00007f2e46159fec sp 00007ffe218b8978 error 6 in libc.so.6[7f2e46028000+176000] likely on CPU 1 (core 1, socket 0)
[  218.632464] Code: 7c 10 8a 0e 74 0a 0f b7 74 16 fe 66 89 74 17 fe 88 0f c3 8b 4c 16 fc 8b 36 89 4c 17 fc 89 37 c3 c5 fa 6f 06 c5 fa 6f 4c 16 f0 <c5> fa 7f 07 c5 fa 7f 4c 17 f0 c3 66 0f 1f 84 00 00 00 00 00 48 8b
[  233.396679] signal-desktop[2393]: segfault at 141801010101 ip 000055ab91c08aa6 sp 00007ffee1ae48f0 error 4 in signal-desktop[55ab8a9c8000+75e0000] likely on CPU 5 (core 1, socket 0)
[  233.396692] Code: 53 48 83 ec 48 48 89 f3 48 83 7f 20 00 0f 85 35 01 00 00 4c 8b a7 28 01 00 00 4c 8b bf 30 01 00 00 4d 39 fc 0f 84 0f 01 00 00 <4d> 8b 2c 24 4d 8b b5 20 01 00 00 4d 85 f6 74 28 e8 a5 2d 78 fc 88
[  246.808079] signal-desktop[2604]: segfault at 208c01010101 ip 0000560cb094faa6 sp 00007ffcd441bad0 error 4 in signal-desktop[560ca970f000+75e0000] likely on CPU 0 (core 0, socket 0)
[  246.808092] Code: 53 48 83 ec 48 48 89 f3 48 83 7f 20 00 0f 85 35 01 00 00 4c 8b a7 28 01 00 00 4c 8b bf 30 01 00 00 4d 39 fc 0f 84 0f 01 00 00 <4d> 8b 2c 24 4d 8b b5 20 01 00 00 4d 85 f6 74 28 e8 a5 2d 78 fc 88

@wooque
Copy link

wooque commented Apr 20, 2023

Intermittent segmentation faults happen with latest Signal - 6.15.0 on Debian 12 as well.

@ghost
Copy link

ghost commented Apr 23, 2023

Segmentation fault happens moments after the window pops up - version 6.15.0 on Alpine Linux edge (musl based).

@eclairevoyant
Copy link

eclairevoyant commented Apr 26, 2023

Wait a month until signal starts using electron 23 (see #6112), that should fix this

posting logs is not really going to help unless you've compiled signal yourself with debugging symbols enabled and can post a full backtrace

@wooque
Copy link

wooque commented May 3, 2023

I found workaround for greater stability.
I start Signal first without arguments, that starts Signal on Xwayland and after it does initialization and sync, I close Signal and start as Wayland native app with --enable-features=UseOzonePlatform,WaylandWindowDecorations --ozone-platform=wayland arguments.
I haven't experience any crashes.
Seems that initialization/synchronization has something that depends on Xorg. But after that it works on Wayland without problems.

@aerosol
Copy link

aerosol commented May 25, 2023

For anyone interested, I had the same issue on Arch until 6.18.1-1, it works fine at last. Maybe it helps to identify the cause?

@ghost
Copy link

ghost commented May 25, 2023

I can't seem to reproduce anymore either.

@aerosol
Copy link

aerosol commented May 25, 2023

For anyone ending up here via search -- actually, it's not the package update, my own setup was faulty.

Having the following commands executed (here: via hyprland config) makes it not segfault anymore:

exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=$XDG_CURRENT_DESKTOP

@PhoenixClank
Copy link

For anyone ending up here via search -- actually, it's not the package update, my own setup was faulty.

Having the following commands executed (here: via hyprland config) makes it not segfault anymore:

exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=$XDG_CURRENT_DESKTOP

Still crashes on me with the second line included (the first one I already had).

@scottnonnenberg-signal
Copy link
Contributor

Please let us know how Signal Desktop 6.20.0-beta.1 works for you - it is on a newer version of Electron.

@xbb
Copy link

xbb commented May 27, 2023

Please let us know how Signal Desktop 6.20.0-beta.1 works for you - it is on a newer version of Electron.

Thanks, I noticed 6.20.0-beta.1 and 6.19.0 share the same Electron version.

Tried 6.20.0-beta.1 briefly then installed 6.19.0, both didn't crash for me yet.

@hacktivateit
Copy link

hacktivateit commented Jun 7, 2023

Archlinux, sway on Wayland, extra/signal-desktop updated to 6.20.1-1
lauching with

signal-desktop --enable-features=UseOzonePlatform,WaylandWindowDecorations --ozone-platform=wayland

I also remove .config/Signal for a completely fresh start

No segmentation fault, but the windows is not showing 😭

Set Windows Application User Model ID (AUMID) { appUserModelId: 'org.whispersystems.signal-desktop' }
NODE_ENV production
NODE_CONFIG_DIR /usr/lib/signal-desktop/resources/app.asar/config
NODE_CONFIG {}
ALLOW_CONFIG_MUTATIONS undefined
HOSTNAME undefined
NODE_APP_INSTANCE undefined
SUPPRESS_NO_CONFIG_WARNING undefined
SIGNAL_ENABLE_HTTP undefined
userData: /home/REDACTED/.config/Signal
config/start: Did not find user config file (or it was empty), cache is now empty object
config/start: Did not find ephemeral config file (or it was empty), cache is now empty object
making app single instance
[20426:0607/130505.277184:ERROR:object_proxy.cc(623)] Failed to call method: org.freedesktop.DBus.Properties.Get: object_path= /org/freedesktop/portal/desktop: org.freedesktop.DBus.Error.InvalidArgs: Interfaccia «org.freedesktop.portal.FileChooser» inesistente
[20426:0607/130505.277224:ERROR:select_file_dialog_linux_portal.cc(274)] Failed to read portal version property
{"level":30,"time":"2023-06-07T11:05:05.305Z","msg":"app.ready: preferred system locales: it-IT, it"}
{"level":30,"time":"2023-06-07T11:05:05.306Z","msg":"locale: Supported locales: af-ZA, ar, az-AZ, bg-BG, bn-BD, bs-BA, ca, cs, da, de, el, en, es, et-EE, eu, fa-IR, fi, fr, ga-IE, gl-ES, gu-IN, he, hi-IN, hr-HR, hu, id, it, ja, ka-GE, kk-KZ, km-KH, kn-IN, ko, ky-KG, lt-LT, lv-LV, mk-MK, ml-IN, mr-IN, ms, my, nb, nl, pa-IN, pl, pt-BR, pt-PT, ro-RO, ru, sk-SK, sl-SI, sq-AL, sr, sv, sw, ta-IN, te-IN, th, tl-PH, tr, ug, uk-UA, ur, vi, yue, zh-CN, zh-HK, zh-Hant"}
{"level":30,"time":"2023-06-07T11:05:05.306Z","msg":"locale: Preferred locales:  it-IT, it"}
{"level":30,"time":"2023-06-07T11:05:05.307Z","msg":"locale: Matched locale: it"}
{"level":30,"time":"2023-06-07T11:05:05.347Z","msg":"locale: Text info direction for it: ltr"}
{"level":30,"time":"2023-06-07T11:05:05.347Z","msg":"key/initialize: Generating new encryption key, since we did not find it on disk"}
{"level":30,"time":"2023-06-07T11:05:05.348Z","msg":"config/set: Saving user config to disk"}
{"level":30,"time":"2023-06-07T11:05:05.348Z","msg":"config/set: Saved user config to disk"}
{"level":30,"time":"2023-06-07T11:05:05.350Z","msg":"app ready"}
{"level":30,"time":"2023-06-07T11:05:05.350Z","msg":"starting version 6.20.1"}
{"level":30,"time":"2023-06-07T11:05:05.350Z","msg":"media access status [object Undefined] [object Undefined]"}
{"level":30,"time":"2023-06-07T11:05:05.365Z","msg":"MainSQL: migrateSchemaVersion: Migrating from schema_version 0 to user_version 0"}
{"level":30,"time":"2023-06-07T11:05:05.374Z","msg":"MainSQL: updateSchema:\n  Current user_version: 0;\n  Most recent db schema: 83;\n  SQLite version: 3.39.4;\n  SQLCipher version: 4.5.3 community;\n  (deprecated) schema_version: 0;\n"}
{"level":30,"time":"2023-06-07T11:05:05.374Z","msg":"MainSQL: updateToSchemaVersion1: starting..."}
{"level":30,"time":"2023-06-07T11:05:05.379Z","msg":"MainSQL: updateToSchemaVersion1: success!"}
{"level":30,"time":"2023-06-07T11:05:05.379Z","msg":"MainSQL: updateToSchemaVersion2: starting..."}
{"level":30,"time":"2023-06-07T11:05:05.383Z","msg":"MainSQL: updateToSchemaVersion2: success!"}
{"level":30,"time":"2023-06-07T11:05:05.383Z","msg":"MainSQL: updateToSchemaVersion3: starting..."}
{"level":30,"time":"2023-06-07T11:05:05.387Z","msg":"MainSQL: updateToSchemaVersion3: success!"}
{"level":30,"time":"2023-06-07T11:05:05.387Z","msg":"MainSQL: updateToSchemaVersion4: starting..."}
{"level":30,"time":"2023-06-07T11:05:05.391Z","msg":"MainSQL: updateToSchemaVersion4: success!"}
{"level":30,"time":"2023-06-07T11:05:05.391Z","msg":"MainSQL: updateToSchemaVersion6: starting..."}
{"level":30,"time":"2023-06-07T11:05:05.395Z","msg":"MainSQL: updateToSchemaVersion6: success!"}
{"level":30,"time":"2023-06-07T11:05:05.395Z","msg":"MainSQL: updateToSchemaVersion7: starting..."}
{"level":30,"time":"2023-06-07T11:05:05.400Z","msg":"MainSQL: updateToSchemaVersion7: success!"}
{"level":30,"time":"2023-06-07T11:05:05.400Z","msg":"MainSQL: updateToSchemaVersion8: starting..."}
{"level":30,"time":"2023-06-07T11:05:05.405Z","msg":"MainSQL: updateToSchemaVersion8: success!"}
{"level":30,"time":"2023-06-07T11:05:05.405Z","msg":"MainSQL: updateToSchemaVersion9: starting..."}
{"level":30,"time":"2023-06-07T11:05:05.408Z","msg":"MainSQL: updateToSchemaVersion9: success!"}
{"level":30,"time":"2023-06-07T11:05:05.408Z","msg":"MainSQL: updateToSchemaVersion10: starting..."}
{"level":30,"time":"2023-06-07T11:05:05.412Z","msg":"MainSQL: updateToSchemaVersion10: success!"}
{"level":30,"time":"2023-06-07T11:05:05.412Z","msg":"MainSQL: updateToSchemaVersion11: starting..."}
{"level":30,"time":"2023-06-07T11:05:05.416Z","msg":"MainSQL: updateToSchemaVersion11: success!"}
{"level":30,"time":"2023-06-07T11:05:05.416Z","msg":"MainSQL: updateToSchemaVersion12: starting..."}
{"level":30,"time":"2023-06-07T11:05:05.420Z","msg":"MainSQL: updateToSchemaVersion12: success!"}
{"level":30,"time":"2023-06-07T11:05:05.420Z","msg":"MainSQL: updateToSchemaVersion13: starting..."}
{"level":30,"time":"2023-06-07T11:05:05.423Z","msg":"MainSQL: updateToSchemaVersion13: success!"}
{"level":30,"time":"2023-06-07T11:05:05.423Z","msg":"MainSQL: updateToSchemaVersion14: starting..."}
{"level":30,"time":"2023-06-07T11:05:05.427Z","msg":"MainSQL: updateToSchemaVersion14: success!"}
{"level":30,"time":"2023-06-07T11:05:05.427Z","msg":"MainSQL: updateToSchemaVersion15: starting..."}
{"level":30,"time":"2023-06-07T11:05:05.432Z","msg":"MainSQL: updateToSchemaVersion15: success!"}
{"level":30,"time":"2023-06-07T11:05:05.432Z","msg":"MainSQL: updateToSchemaVersion16: starting..."}
{"level":30,"time":"2023-06-07T11:05:05.436Z","msg":"MainSQL: updateToSchemaVersion16: success!"}
{"level":30,"time":"2023-06-07T11:05:05.436Z","msg":"MainSQL: updateToSchemaVersion17: starting..."}
{"level":30,"time":"2023-06-07T11:05:05.437Z","msg":"MainSQL: updateToSchemaVersion17: Index messages_view_once did not already exist"}
{"level":30,"time":"2023-06-07T11:05:05.441Z","msg":"MainSQL: updateToSchemaVersion17: success!"}
{"level":30,"time":"2023-06-07T11:05:05.441Z","msg":"MainSQL: updateToSchemaVersion18: starting..."}
{"level":30,"time":"2023-06-07T11:05:05.445Z","msg":"MainSQL: updateToSchemaVersion18: success!"}
{"level":30,"time":"2023-06-07T11:05:05.445Z","msg":"MainSQL: updateToSchemaVersion19: starting..."}
{"level":30,"time":"2023-06-07T11:05:05.449Z","msg":"MainSQL: updateToSchemaVersion19: success!"}
{"level":30,"time":"2023-06-07T11:05:05.449Z","msg":"MainSQL: updateToSchemaVersion20: starting..."}
{"level":30,"time":"2023-06-07T11:05:05.455Z","msg":"MainSQL: updateToSchemaVersion20: success!"}
{"level":30,"time":"2023-06-07T11:05:05.459Z","msg":"MainSQL: updateToSchemaVersion21: success!"}
{"level":30,"time":"2023-06-07T11:05:05.463Z","msg":"MainSQL: updateToSchemaVersion22: success!"}
{"level":30,"time":"2023-06-07T11:05:05.467Z","msg":"MainSQL: updateToSchemaVersion23: success!"}
{"level":30,"time":"2023-06-07T11:05:05.471Z","msg":"MainSQL: updateToSchemaVersion24: success!"}
{"level":30,"time":"2023-06-07T11:05:05.477Z","msg":"MainSQL: updateToSchemaVersion25: success!"}
{"level":30,"time":"2023-06-07T11:05:05.481Z","msg":"MainSQL: updateToSchemaVersion26: success!"}
{"level":30,"time":"2023-06-07T11:05:05.485Z","msg":"MainSQL: updateToSchemaVersion27: success!"}
{"level":30,"time":"2023-06-07T11:05:05.489Z","msg":"MainSQL: updateToSchemaVersion28: success!"}
{"level":30,"time":"2023-06-07T11:05:05.493Z","msg":"MainSQL: updateToSchemaVersion29: success!"}
{"level":30,"time":"2023-06-07T11:05:05.497Z","msg":"MainSQL: updateToSchemaVersion30: success!"}
{"level":30,"time":"2023-06-07T11:05:05.497Z","msg":"MainSQL: updateToSchemaVersion31: starting..."}
{"level":30,"time":"2023-06-07T11:05:05.502Z","msg":"MainSQL: updateToSchemaVersion31: success!"}
{"level":30,"time":"2023-06-07T11:05:05.507Z","msg":"MainSQL: updateToSchemaVersion32: success!"}
{"level":30,"time":"2023-06-07T11:05:05.512Z","msg":"MainSQL: updateToSchemaVersion33: success!"}
{"level":30,"time":"2023-06-07T11:05:05.516Z","msg":"MainSQL: updateToSchemaVersion34: success!"}
{"level":30,"time":"2023-06-07T11:05:05.520Z","msg":"MainSQL: updateToSchemaVersion35: success!"}
{"level":30,"time":"2023-06-07T11:05:05.524Z","msg":"MainSQL: updateToSchemaVersion36: success!"}
{"level":30,"time":"2023-06-07T11:05:05.529Z","msg":"MainSQL: updateToSchemaVersion37: success!"}
{"level":30,"time":"2023-06-07T11:05:05.538Z","msg":"MainSQL: updateToSchemaVersion38: success!"}
{"level":30,"time":"2023-06-07T11:05:05.543Z","msg":"MainSQL: updateToSchemaVersion39: success!"}
{"level":30,"time":"2023-06-07T11:05:05.548Z","msg":"MainSQL: updateToSchemaVersion40: success!"}
{"level":30,"time":"2023-06-07T11:05:05.556Z","msg":"MainSQL: updateToSchemaVersion41: success!"}
{"level":30,"time":"2023-06-07T11:05:05.558Z","msg":"MainSQL: updateToSchemaVersion42: success!"}
{"level":30,"time":"2023-06-07T11:05:05.559Z","msg":"MainSQL: updateToSchemaVersion43: About to iterate through 0 conversations"}
{"level":30,"time":"2023-06-07T11:05:05.559Z","msg":"MainSQL: updateToSchemaVersion43: About to iterate through 0 messages"}
{"level":30,"time":"2023-06-07T11:05:05.559Z","msg":"MainSQL: updateToSchemaVersion43: Updated 0 messages"}
{"level":30,"time":"2023-06-07T11:05:05.563Z","msg":"MainSQL: updateToSchemaVersion43: success!"}
{"level":30,"time":"2023-06-07T11:05:05.567Z","msg":"MainSQL: updateToSchemaVersion44: success!"}
{"level":30,"time":"2023-06-07T11:05:05.573Z","msg":"MainSQL: updateToSchemaVersion45: success!"}
{"level":30,"time":"2023-06-07T11:05:05.577Z","msg":"MainSQL: updateToSchemaVersion46: success!"}
{"level":40,"time":"2023-06-07T11:05:05.582Z","msg":"MainSQL: updateToSchemaVersion47: our UUID not found"}
{"level":30,"time":"2023-06-07T11:05:05.586Z","msg":"MainSQL: updateToSchemaVersion47: success!"}
{"level":30,"time":"2023-06-07T11:05:05.589Z","msg":"MainSQL: updateToSchemaVersion48: success!"}
{"level":30,"time":"2023-06-07T11:05:05.592Z","msg":"MainSQL: updateToSchemaVersion49: success!"}
{"level":30,"time":"2023-06-07T11:05:05.595Z","msg":"MainSQL: updateToSchemaVersion50: success!"}
{"level":30,"time":"2023-06-07T11:05:05.597Z","msg":"MainSQL: updateToSchemaVersion51: success!"}
{"level":30,"time":"2023-06-07T11:05:05.601Z","msg":"MainSQL: updateToSchemaVersion52: success!"}
{"level":30,"time":"2023-06-07T11:05:05.601Z","msg":"MainSQL: updateToSchemaVersion53: About to iterate through 0 conversations"}
{"level":30,"time":"2023-06-07T11:05:05.601Z","msg":"MainSQL: updateToSchemaVersion53: Updated 0 conversations"}
{"level":30,"time":"2023-06-07T11:05:05.603Z","msg":"MainSQL: updateToSchemaVersion53: success!"}
{"level":30,"time":"2023-06-07T11:05:05.608Z","msg":"MainSQL: updateToSchemaVersion54: success!"}
{"level":30,"time":"2023-06-07T11:05:05.611Z","msg":"MainSQL: updateToSchemaVersion55: success!"}
{"level":30,"time":"2023-06-07T11:05:05.616Z","msg":"MainSQL: updateToSchemaVersion56: success!"}
{"level":30,"time":"2023-06-07T11:05:05.619Z","msg":"MainSQL: updateToSchemaVersion57: success!"}
{"level":30,"time":"2023-06-07T11:05:05.622Z","msg":"MainSQL: updateToSchemaVersion58: success!"}
{"level":30,"time":"2023-06-07T11:05:05.625Z","msg":"MainSQL: updateToSchemaVersion59: success!"}
{"level":30,"time":"2023-06-07T11:05:05.629Z","msg":"MainSQL: updateToSchemaVersion60: success!"}
{"level":30,"time":"2023-06-07T11:05:05.639Z","msg":"MainSQL: updateToSchemaVersion61: success!"}
{"level":30,"time":"2023-06-07T11:05:05.644Z","msg":"MainSQL: updateToSchemaVersion62: success!"}
{"level":30,"time":"2023-06-07T11:05:05.647Z","msg":"MainSQL: updateToSchemaVersion63: success!"}
{"level":30,"time":"2023-06-07T11:05:05.653Z","msg":"MainSQL: updateToSchemaVersion64: success!"}
{"level":30,"time":"2023-06-07T11:05:05.660Z","msg":"MainSQL: updateToSchemaVersion65: success!"}
{"level":30,"time":"2023-06-07T11:05:05.663Z","msg":"MainSQL: updateToSchemaVersion66: success!"}
{"level":30,"time":"2023-06-07T11:05:05.668Z","msg":"MainSQL: updateToSchemaVersion67: success!"}
{"level":30,"time":"2023-06-07T11:05:05.676Z","msg":"MainSQL: updateToSchemaVersion68: success!"}
{"level":30,"time":"2023-06-07T11:05:05.681Z","msg":"MainSQL: updateToSchemaVersion69: success!"}
{"level":30,"time":"2023-06-07T11:05:05.687Z","msg":"MainSQL: updateToSchemaVersion70: success!"}
{"level":30,"time":"2023-06-07T11:05:05.700Z","msg":"MainSQL: updateToSchemaVersion71: success!"}
{"level":30,"time":"2023-06-07T11:05:05.704Z","msg":"MainSQL: updateToSchemaVersion72: success!"}
{"level":30,"time":"2023-06-07T11:05:05.717Z","msg":"MainSQL: updateToSchemaVersion73: success!"}
{"level":30,"time":"2023-06-07T11:05:05.722Z","msg":"MainSQL: updateToSchemaVersion74: success!"}
{"level":30,"time":"2023-06-07T11:05:05.725Z","msg":"MainSQL: updateToSchemaVersion75: success!"}
{"level":30,"time":"2023-06-07T11:05:05.732Z","msg":"MainSQL: updateToSchemaVersion76: success!"}
{"level":30,"time":"2023-06-07T11:05:05.737Z","msg":"MainSQL: updateToSchemaVersion77: success!"}
{"level":30,"time":"2023-06-07T11:05:05.741Z","msg":"MainSQL: updateToSchemaVersion78: success!"}
{"level":30,"time":"2023-06-07T11:05:05.744Z","msg":"MainSQL: updateToSchemaVersion79: success!"}
{"level":30,"time":"2023-06-07T11:05:05.748Z","msg":"MainSQL: updateToSchemaVersion80: success!"}
{"level":30,"time":"2023-06-07T11:05:05.760Z","msg":"MainSQL: updateToSchemaVersion81: success!"}
{"level":30,"time":"2023-06-07T11:05:05.766Z","msg":"MainSQL: updateToSchemaVersion82: success!"}
{"level":30,"time":"2023-06-07T11:05:05.771Z","msg":"MainSQL: updateToSchemaVersion83: success!"}
{"level":30,"time":"2023-06-07T11:05:05.772Z","msg":"MainSQL: updateSchema: optimize took 0ms"}
{"level":30,"time":"2023-06-07T11:05:05.772Z","msg":"config/set: Saving ephemeral config to disk"}
{"level":30,"time":"2023-06-07T11:05:05.772Z","msg":"config/set: Saved ephemeral config to disk"}
{"level":30,"time":"2023-06-07T11:05:05.772Z","msg":"got slow theme-setting value system"}
{"level":30,"time":"2023-06-07T11:05:05.773Z","msg":"config/set: Saving ephemeral config to disk"}
{"level":30,"time":"2023-06-07T11:05:05.773Z","msg":"config/set: Saved ephemeral config to disk"}
{"level":30,"time":"2023-06-07T11:05:05.773Z","msg":"got slow spellcheck setting true"}
{"level":30,"time":"2023-06-07T11:05:05.773Z","msg":"getSystemTraySetting had no flags and did no DB lookups. Returning DoNotUseSystemTray"}
{"level":50,"time":"2023-06-07T11:05:05.774Z","msg":"visibleOnAnyScreen: windowOptions didn't have valid bounds fields"}
{"level":30,"time":"2023-06-07T11:05:05.774Z","msg":"Location reset needed"}
{"level":30,"time":"2023-06-07T11:05:05.774Z","msg":"Initializing BrowserWindow config: {\"show\":false,\"width\":800,\"height\":610,\"minWidth\":300,\"minHeight\":200,\"autoHideMenuBar\":false,\"titleBarStyle\":\"default\",\"titleBarOverlay\":false,\"backgroundColor\":\"#3a76f0\",\"webPreferences\":{\"devTools\":false,\"spellcheck\":true,\"enableBlinkFeatures\":\"CSSPseudoDir,CSSLogical\",\"nodeIntegration\":false,\"nodeIntegrationInWorker\":false,\"sandbox\":false,\"contextIsolation\":true,\"preload\":\"[REDACTED]/preload.bundle.js\",\"backgroundThrottling\":true,\"enablePreferredSizeMode\":true,\"disableBlinkFeatures\":\"Accelerated2dCanvas,AcceleratedSmallCanvases\"},\"icon\":\"[REDACTED]/images/signal-logo-desktop-linux.png\"}"}
{"level":30,"time":"2023-06-07T11:05:05.781Z","msg":"spellcheck: user locales: [\"it-IT\",\"it\"]"}
{"level":30,"time":"2023-06-07T11:05:05.781Z","msg":"spellcheck: available spellchecker languages: [\"af\",\"bg\",\"ca\",\"cs\",\"cy\",\"da\",\"de\",\"de-DE\",\"el\",\"en\",\"en-AU\",\"en-CA\",\"en-GB\",\"en-GB-oxendict\",\"en-US\",\"es\",\"es-419\",\"es-AR\",\"es-ES\",\"es-MX\",\"es-US\",\"et\",\"fa\",\"fo\",\"fr\",\"fr-FR\",\"he\",\"hi\",\"hr\",\"hu\",\"hy\",\"id\",\"it\",\"it-IT\",\"ko\",\"lt\",\"lv\",\"nb\",\"nl\",\"pl\",\"pt\",\"pt-BR\",\"pt-PT\",\"ro\",\"ru\",\"sh\",\"sk\",\"sl\",\"sq\",\"sr\",\"sv\",\"ta\",\"tg\",\"tr\",\"uk\",\"vi\"]"}
{"level":30,"time":"2023-06-07T11:05:05.781Z","msg":"spellcheck: setting languages to: [\"it-IT\",\"it\"]"}
{"level":30,"time":"2023-06-07T11:05:06.066Z","msg":"got fast theme-setting value system"}
{"level":30,"time":"2023-06-07T11:05:06.624Z","msg":"got fast spellcheck setting true"}
{"level":30,"time":"2023-06-07T11:05:06.627Z","msg":"System tray service: created"}
{"level":30,"time":"2023-06-07T11:05:06.627Z","msg":"System tray service: updating main window. Previously, there was not a window, and now there is"}
{"level":30,"time":"2023-06-07T11:05:06.627Z","msg":"System tray service: rendering no tray"}
{"level":30,"time":"2023-06-07T11:05:06.627Z","msg":"Begin ensuring permissions"}
{"level":30,"time":"2023-06-07T11:05:06.628Z","msg":"Ensuring file permissions for 4 files"}
{"level":30,"time":"2023-06-07T11:05:06.629Z","msg":"Finish ensuring permissions in 2ms"}
{"level":30,"time":"2023-06-07T11:05:06.730Z","msg":"deleteAllBadges: deleted 0 files"}
{"level":30,"time":"2023-06-07T11:05:06.732Z","msg":"MainSQL: removeKnownStickers: About to iterate through 0 stickers"}
{"level":30,"time":"2023-06-07T11:05:06.732Z","msg":"MainSQL: removeKnownStickers: Done processing 0 stickers"}
{"level":30,"time":"2023-06-07T11:05:06.732Z","msg":"deleteAllStickers: deleted 0 files"}
{"level":30,"time":"2023-06-07T11:05:06.733Z","msg":"MainSQL: removeKnownDraftAttachments: About to iterate through 0 conversations"}
{"level":30,"time":"2023-06-07T11:05:06.733Z","msg":"MainSQL: removeKnownDraftAttachments: Done processing 0 conversations"}
{"level":30,"time":"2023-06-07T11:05:06.733Z","msg":"deleteAllDraftAttachments: deleted 0 files"}
{"level":30,"time":"2023-06-07T11:05:06.734Z","msg":"cleanupOrphanedAttachments: found 0 attachments on disk"}
{"level":30,"time":"2023-06-07T11:05:06.734Z","msg":"MainSQL: getKnownConversationAttachments: About to iterate through 0"}
{"level":30,"time":"2023-06-07T11:05:06.734Z","msg":"MainSQL: getKnownConversationAttachments: Done processing"}
{"level":30,"time":"2023-06-07T11:05:06.734Z","msg":"cleanupOrphanedAttachments: found 0 conversation attachments (0 missing), 0 remain"}
{"level":30,"time":"2023-06-07T11:05:06.734Z","msg":"cleanupOrphanedAttachments: took 9ms"}
{"level":30,"time":"2023-06-07T11:05:06.735Z","msg":"MainSQL: getKnownMessageAttachments(85b368a274ee0d3f): Starting iteration through 0 messages"}
{"level":30,"time":"2023-06-07T11:05:06.735Z","msg":"Begin ensuring permissions"}
{"level":30,"time":"2023-06-07T11:05:06.738Z","msg":"Ensuring file permissions for 66 files"}
{"level":50,"time":"2023-06-07T11:05:06.739Z","msg":"ensureFilePermissions: Error from chmod ENOENT: no such file or directory, chmod '[REDACTED]/SingletonCookie'"}
{"level":50,"time":"2023-06-07T11:05:06.739Z","msg":"ensureFilePermissions: Error from chmod ENOENT: no such file or directory, chmod '[REDACTED]/SingletonLock'"}
{"level":30,"time":"2023-06-07T11:05:06.741Z","msg":"Finish ensuring permissions in 6ms"}
{"level":30,"time":"2023-06-07T11:05:06.768Z","msg":"updater/start: Updates disabled - not starting new version checks"}
{"level":30,"time":"2023-06-07T11:05:06.770Z","msg":"Prevent display sleep service: allowing display sleep"}
{"level":30,"time":"2023-06-07T11:05:06.770Z","msg":"Background throttling enabled because no call is active"}
{"level":30,"time":"2023-06-07T11:05:06.786Z","msg":"MainSQL: finishGetKnownMessageAttachments(85b368a274ee0d3f): reached the end after processing 0 messages"}
{"level":30,"time":"2023-06-07T11:05:06.786Z","msg":"cleanupOrphanedAttachments: found 0 message attachments, (0 missing) 0 remain"}
{"level":30,"time":"2023-06-07T11:05:06.786Z","msg":"deleteAll: deleted 0 files"}
{"level":30,"time":"2023-06-07T11:05:06.786Z","msg":"deleteOrphanedAttachments: took 52ms"}

@wooque
Copy link

wooque commented Jun 7, 2023

@hacktivateit it starts minimized to tray, add --use-tray-icon to see it.

@hacktivateit
Copy link

hacktivateit commented Jun 7, 2023

it's working! thanks @wooque

Complete working command for wayland users
signal-desktop --enable-features=UseOzonePlatform,WaylandWindowDecorations --ozone-platform=wayland --use-tray-icon

EDIT: Signal should now follow the electron-flags.conf file here

@wooque
Copy link

wooque commented Jun 7, 2023

@hacktivateit UseOzonePlatform is not needed anymore, it's default now, so you can omit it. And if you use Sway you don't need WaylandWindowDecorations as well, it's only useful for GNOME

@hacktivateit
Copy link

thanks again! updated command
signal-desktop --ozone-platform=wayland --use-tray-icon

@PhoenixClank
Copy link

@hacktivateit it starts minimized to tray, add --use-tray-icon to see it.

I see no tray icon, and manually inspecting my DBus session bus it doesn't show up as registered to either of the two StatusNotifierWatchers that are running.

thanks again! updated command
signal-desktop --ozone-platform=wayland --use-tray-icon

I have another helpful argument for you: if you try sharing your screen in a video call, Signal will immediately crash, unless you use
--enable-features=WebRTCPipeWireCapturer

@norpol
Copy link

norpol commented Jun 7, 2023

@PhoenixClank Using --enable-features=WebRTCPipeWireCapturer on Signal v6.17.1 on Wayland and clicking the "Share screen" results in a crash for me with swaywm. Chromium/Firefox are able to share the screen though.

@wooque
Copy link

wooque commented Jun 29, 2023

It was fixed, but now in 6.23.0 startup crashes are back again

@trevor-signal
Copy link
Contributor

6.23.0 included an upgrade to Electron v25.2 -- you might try a fix suggested in electron/electron#37531 and linked issues.

@pm4rcin
Copy link

pm4rcin commented Jun 30, 2023

Until it's resolved on upstream electron follow this comment for workarounds element-hq/element-desktop#1026 (comment)

@dfgweb
Copy link

dfgweb commented Aug 21, 2023

Strangely, adding --use-tray-icon in desktop file resolve all my issues (this bug and #6368).

  • When launching, tray icon now appears in my waybar and is working
  • No need to launch a second instance to have Signal windows appearing. Just clic the tray icon display it.
  • No more crash when launching additional instance. Windows just display correctly.

@pm4rcin
Copy link

pm4rcin commented Sep 14, 2023

I have tried Element and Tutanota flatpaks which were crashing constantly for me too but they have updated to Electron 26 and they started working normally on wayland. Looks like Signal will have to update electron in order to stop crashing.

@fdutheil
Copy link

Strangely, adding --use-tray-icon in desktop file resolve all my issues (this bug and #6368).

* When launching, tray icon now appears in my waybar and is working

* No need to launch a second instance to have Signal windows appearing. Just clic the tray icon display it.

* No more crash when launching additional instance. Windows just display correctly.

Hi, this workaround is not working on my debian 12 on Sway, as I use this option already and Signal crashes when clicking on the tray icon ( happens ~ half the time).

@maximbaz
Copy link

maximbaz commented Oct 5, 2023

When no workaround helps, automation will always come to the rescue!

Run this very sophisticated script in the morning and go brew yourself some coffee, by the time you are back you'll have a working Signal instance 😁

Sometimes it takes over 10 attempts for me to launch Signal, so this is a huge time saver 😉

#!/bin/bash

while true; do
    # Launch the main instance - it will run in background if you don't use tray
    signal-desktop > /dev/null 2>&1 &
    pid=$!

    # Launch a second instance - it will exit, bringing the main instance to foreground
    sleep 1
    signal-desktop > /dev/null

    # Move mouse cursor over the Signal window to trigger an intermittent segfault
    sleep 1
    ydotool mousemove 3 0

    # Check if the main process has crashed
    sleep 1
    if kill -0 $pid 2> /dev/null; then
        echo "Signal has finally launched!"
        exit 0
    else
        echo "Signal has crashed, let's try again..."
    fi
done

@wooque
Copy link

wooque commented Oct 6, 2023

After recent update there is nothing intermittent anymore, it crashes every single time. Had to switch to running it under Xwayland.

@GregDMeyer
Copy link

GregDMeyer commented Oct 7, 2023

for anyone who didn't follow the link from @pm4rcin I wanted to write it explicitly here---for me at least, the issue seems to be with running signal in wayland with tiling (I run sway). Immediately pressing mod+shift+space to make the window float (or, ideally, modifying your config to default signal to a floating window) prevents the crash for me!

EDIT: ok, sometimes the window doesn't appear for some reason? but it seems running it under XWayland once and then launching it under wayland makes the window appear 👍

@wooque
Copy link

wooque commented Oct 7, 2023

for anyone who didn't follow the link from @pm4rcin I wanted to write it explicitly here---for me at least, the issue seems to be with running signal in wayland with tiling (I run sway). Immediately pressing mod+shift+space to make the window float (or, ideally, modifying your config to default signal to a floating window) prevents the crash for me!

EDIT: ok, sometimes the window doesn't appear for some reason? but it seems running it under XWayland once and then launching it under wayland makes the window appear 👍

I can confirm that Signal doesn't crash when it's floating by default (for_window [app_id="signal"] floating enable), but as soon as I make it non-floating it crashes.

@dfgweb
Copy link

dfgweb commented Oct 14, 2023

Strangely, adding --use-tray-icon in desktop file resolve all my issues (this bug and #6368).

* When launching, tray icon now appears in my waybar and is working

* No need to launch a second instance to have Signal windows appearing. Just clic the tray icon display it.

* No more crash when launching additional instance. Windows just display correctly.

Well, this work on non-HDPI display on my laptop, but my desktop PC still crash!

@fdutheil
Copy link

fdutheil commented Oct 16, 2023

Strangely, adding --use-tray-icon in desktop file resolve all my issues (this bug and #6368).

* When launching, tray icon now appears in my waybar and is working

* No need to launch a second instance to have Signal windows appearing. Just clic the tray icon display it.

* No more crash when launching additional instance. Windows just display correctly.

Well, this work on non-HDPI display on my laptop, but my desktop PC still crash!

Adding info about my setup (not sure if this relevant): integrated laptop screen is HiDPI (4K, scale factor: 2), external screen is not (1440p, scale factor: 1). Still 100% crash chance to crash Signal when output is external display.

@AndreasBackx
Copy link

AndreasBackx commented Nov 3, 2023

To confirm, 6.37.0 does not fix the issue for me.

@wooque
Copy link

wooque commented Nov 3, 2023

To confirm, 6.37.0 does not fix the issue for me.

I jumped to conclusion because 6.36.0 crashed 99% of time for me, now it's occasional, but startup crashes are still there.

@freeekanayaka
Copy link

for anyone who didn't follow the link from @pm4rcin I wanted to write it explicitly here---for me at least, the issue seems to be with running signal in wayland with tiling (I run sway). Immediately pressing mod+shift+space to make the window float (or, ideally, modifying your config to default signal to a floating window) prevents the crash for me!
EDIT: ok, sometimes the window doesn't appear for some reason? but it seems running it under XWayland once and then launching it under wayland makes the window appear 👍

I can confirm that Signal doesn't crash when it's floating by default (for_window [app_id="signal"] floating enable), but as soon as I make it non-floating it crashes.

Thanks, that's solved it!

@h-2
Copy link

h-2 commented Nov 22, 2023

I can confirm this problem on Ubuntu 23.10—which is officially supported, right?

I am also using sway. Previously it worked to start 2 or 3 times with --ozone-platform=wayland --enable-features=WaylandWindowDecorations. Recently this stopped working.

I can confirm that Signal doesn't crash when it's floating by default (for_window [app_id="signal"] floating enable), but as soon as I make it non-floating it crashes.

This works for me, but it is a ridiculous workaround. Why can't signal just publish a decent library that interfaces with its server and then let regular devs make a frontend in Qt or GTK that doesn't suck?

@pm4rcin
Copy link

pm4rcin commented Dec 15, 2023

It's finally fixed! :) Let's hope that electron won't introduce more regressions like that in the future.

@indutny-signal
Copy link
Contributor

Hooray!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests