Closed sandersteenhoudt closed 2 years ago
confirmed
Sorry to hear this...unfortunately, we don't support the Arch Linux installation and haven't heard reports of this from supported packages, so I'm going to close this issue. I recommend bringing this up with the Arch package maintainer.
If someone can reproduce this on an official build, let me know and we'll reopen.
@EvanHahn-Signal The same issue occurs on Ubuntu 20.10, with the official installation instructions, with the aforementioned flags the application segfaults.
Furthermore, I have built 5.28-beta1 and unfortunately the same issue occurs.
@cherti Thanks for confirming. I'll reopen.
Can confirm. The issue can be reproduced on Artix Linux as well (installed from Arch [community]
repo). Downgrading does solve the issue.
Same error with the flatpak build:
flatpak run --socket=wayland org.signal.Signal --enable-features=UseOzonePlatform --ozone-platform=wayland
After the upgrade to 5.27.0 I got the same error:
[40:0107/010726.373549:ERROR:gpu_init.cc(457)] Passthrough is not supported, GL is egl, ANGLE is
[40:0107/010726.403065:ERROR:sandbox_linux.cc(376)] InitializeSandbox() called with multiple threads in process gpu-process.
With nvidia it's entirely non-functional, even on X11/XWayland.
Can the app be built with debug symbols? Would that help?
I am also on Arch and see the same issue. And just to confirm, it does work without the Ozone flags, when it uses Xwayland.
I think we shouldn't spam the issue with just confirmations of the problem, I think general overview is better served in form of thumbs-upping the opening post. :)
@Ammako have you tried adding --disable-gpu
? that was recommended to try in another issue, possibly it's a different problem if it totally doesn't work?
Upstream electron 16 issue?
I just built 5.27.1 with electron 15.3.0 and it runs just fine, under Wayland with both ozone flags.
May be related: https://github.com/electron/electron/issues/31885
On Arch Wayland, I noticed that when I start Signal from the dmenu
it crashes directly but starting it from the terminal it works.
@mordax7 can you give the full command you used to start it from the terminal? Are you sure it didn't start in XWayland?
I suspect that this is an Electron issue. With Electron 16.0.6 on Arch Linux (sway/Wayland) I get a very similar crash with a random .asar file (that works fine under Electron 15) when run with the params detailed in the above bug report.
@mordax7 can you give the full command you used to start it from the terminal? Are you sure it didn't start in XWayland?
@theanonymousexyz forgot to mention. When I start it in dmenu
I start it with signal-desktop --enable-features=UseOzonePlatform --ozone-platform=wayland
and from the terminal I use signal-desktop
.
This is the error if I try to start it with ozone:
{"level":30,"time":"2022-01-08T11:06:06.423Z","pid":12673,"hostname":"xps13-9300","msg":"Initializing BrowserWindow config: {\"show\":false,\"width\":1906,\"height\":555,\"minWidth\":712,\"minHeight\":550,\"autoHideMenuBar\":false,\"titleBarStyle\":\"default\",\"backgroundColor\":\"#3a76f0\",\"webPreferences\":{\"devTools\":false,\"nodeIntegration\":false,\"nodeIntegrationInWorker\":false,\"contextIsolation\":false,\"preload\":\"[REDACTED]/preload.bundle.js\",\"nativeWindowOpen\":true,\"spellcheck\":true,\"backgroundThrottling\":false,\"enablePreferredSizeMode\":true},\"icon\":\"[REDACTED]/images/signal-logo-desktop-linux.png\",\"x\":7,\"y\":638}"}
[12673:0108/120606.425538:ERROR:cursor_loader.cc(114)] Failed to load a platform cursor of type kNull
fish: Job 1, 'signal-desktop --enable-feature…' terminated by signal SIGTRAP (Trace or breakpoint trap)
and from the terminal I use
signal-desktop
.
Then it's because it starts with XWayland.
Confimed that I updated signal flatpack and also encountering this issue in Fedora 35
$> flatpak run org.signal.Signal --enable-features=UseOzonePlatform --ozone-platform=wayland
[2 preload-host-spawn-strategy] Running: /app/bin/zypak-helper child - /app/Signal/signal-desktop --type=zygote --enable-crashpad
Set Windows Application User Model ID (AUMID) { appUserModelId: 'org.whispersystems.signal-desktop' }
NODE_ENV production
NODE_CONFIG_DIR /app/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/james/.var/app/org.signal.Signal/config/Signal
config/get: Successfully read user config file
config/get: Successfully read ephemeral config file
LaunchProcess: failed to execvp:
xdg-settings
LaunchProcess: failed to execvp:
xdg-settings
[2:0108/104930.578044:ERROR:bus.cc(393)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory
[49:0108/104930.637145:ERROR:gpu_init.cc(457)] Passthrough is not supported, GL is egl, ANGLE is
[49:0108/104930.643825:ERROR:sandbox_linux.cc(376)] InitializeSandbox() called with multiple threads in process gpu-process.
[2:0108/104930.649912:ERROR:bus.cc(393)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory
[2:0108/104930.649943:ERROR:bus.cc(393)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory
[2:0108/104930.649967:ERROR:bus.cc(393)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory
[2:0108/104930.652208:ERROR:cursor_loader.cc(114)] Failed to load a platform cursor of type kNull
Confirmed on NixOS unstable as well:
[996825:0109/124750.241455:ERROR:cursor_loader.cc(114)] Failed to load a platform cursor of type kNull
[1] 996825 segmentation fault (core dumped) signal-desktop --use-tray-icon --enable-features=UseOzonePlatform
Could it be because the version of Electron used by Signal 5.27 is affected by https://github.com/swaywm/wlroots/issues/3168? Actual upstream / Chromium bug: https://bugs.chromium.org/p/chromium/issues/detail?id=1246834
Almost certainly an Electron issue, segfaulting on all attempts to launch Electron under wayland, including the default popup.
Just to add, I am running Arch without xwayland ie. passing --enable-features=UseOzonePlatform --ozone-platform=wayland
and I can confirm that adding the additional flag --disable-gpu
causes signal to start and run without any apparent issues.
Just to add, I am running Arch without xwayland ie. passing
--enable-features=UseOzonePlatform --ozone-platform=wayland
and I can confirm that adding the additional flag--disable-gpu
causes signal to start and run without any apparent issues.
This does not resolve the issue for me. Same issue occurs.
Just to add, I am running Arch without xwayland ie. passing
--enable-features=UseOzonePlatform --ozone-platform=wayland
and I can confirm that adding the additional flag--disable-gpu
causes signal to start and run without any apparent issues.
~If you don't even run wayland, it's unsurprising that you cannot reproduce a regression on wayland.~
Sorry, misread the original post.
Just to add, I am running Arch without xwayland ie. passing
--enable-features=UseOzonePlatform --ozone-platform=wayland
and I can confirm that adding the additional flag--disable-gpu
causes signal to start and run without any apparent issues.If you don't even run wayland, it's unsurprising that you cannot reproduce a regression on wayland. 🙃
tabell said they don't use XWayland, not that they don't use Wayland.
I've tested the --disable-gpu
flag again and observed both behaviors - segfaulting and starting normally - so it's actually intermittent for me. It appeared to start working after I changed my sway output position to be (0,0), but then after sleeping the laptop overnight it now fails again, so it may just be a coincidence. In any case it seems like this is an Electron issue, so I'll cease further comments here unless more details are needed.
I've tested the
--disable-gpu
flag again and observed both behaviors - segfaulting and starting normally - so it's actually intermittent for me. It appeared to start working after I changed my sway output position to be (0,0), but then after sleeping the laptop overnight it now fails again, so it may just be a coincidence. In any case it seems like this is an Electron issue, so I'll cease further comments here unless more details are needed.
I've tested --disable-gpu
on Sway as well, didn't work for me.
@EvanHahn-Signal, @scottnonnenberg-signal, is this still prioritized, or are we waiting for an upstream fix? Would it be possible to downgrade the Electron version bundled with Signal until it's resolved on their end?
On Fedora 35 under Wayland, running a singal-desktop 5.29.1 flatpak gives a black screen, app is non functional. Tried reverting to the previous versions is not working, application works on Xorg without an issue. Is there any fix or an update planned to make Signal on desktop again?
Sadly I can't get Signal on Wayland with Nvidia to work:
flatpak run org.signal.Signal --socket=wayland --enable-features=UseOzonePlatform --ozone-platform=wayland
[2 preload-host-spawn-strategy] Running: /app/bin/zypak-helper child - /app/Signal/signal-desktop --type=zygote --enable-crashpad
Set Windows Application User Model ID (AUMID) { appUserModelId: 'org.whispersystems.signal-desktop' }
NODE_ENV production
NODE_CONFIG_DIR /app/Signal/resources/app.asar/config
NODE_CONFIG {}
ALLOW_CONFIG_MUTATIONS undefined
HOSTNAME domekstacja
NODE_APP_INSTANCE undefined
SUPPRESS_NO_CONFIG_WARNING undefined
SIGNAL_ENABLE_HTTP undefined
userData: /home/przemek/.var/app/org.signal.Signal/config/Signal
config/get: Successfully read user config file
config/get: Successfully read ephemeral config file
LaunchProcess: failed to execvp:
xdg-settings
LaunchProcess: failed to execvp:
xdg-settings
[2:0205/173630.655274:ERROR:bus.cc(393)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: Nie ma takiego pliku ani katalogu
[2:0205/173630.700762:ERROR:bus.cc(393)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: Nie ma takiego pliku ani katalogu
[2:0205/173630.700781:ERROR:bus.cc(393)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: Nie ma takiego pliku ani katalogu
[2:0205/173630.700793:ERROR:bus.cc(393)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: Nie ma takiego pliku ani katalogu
[53:0100/000000.719782:ERROR:gpu_init.cc(457)] Passthrough is not supported, GL is egl, ANGLE is
and here are my machine specs:
Kernel: 5.16.4-1-default x86_64 bits: 64 Desktop: GNOME 41.3 Distro: openSUSE Tumbleweed 20220203
Machine: Type: Desktop Mobo: ASRock model: B550 Steel Legend serial: <superuser required> UEFI: American Megatrends LLC.
v: P2.00 date: 04/21/2021
CPU: Info: 12-Core AMD Ryzen 9 3900X [MT MCP] speed: 2195 MHz min/max: 2200/3800 MHz
Graphics: Device-1: NVIDIA GM204 [GeForce GTX 980] driver: nvidia v: 510.47.03
Device-2: Logitech Webcam C270 type: USB driver: snd-usb-audio,uvcvideo
Display: wayland server: X.org 1.21.1.3 driver: loaded: nvidia unloaded: fbdev,modesetting,nouveau,vesa
resolution: <missing: xdpyinfo>
OpenGL: renderer: NVIDIA GeForce GTX 980/PCIe/SSE2 v: 4.6.0 NVIDIA 510.47.03
Network: Device-1: Intel Wireless 7260 driver: iwlwifi
Device-2: Realtek RTL8125 2.5GbE driver: r8169
Confirmed that this is still broken in 5.30.0 on Archlinux.
Running gives the usual error:
interface 'wl_output' has no event 4
Looks like Brave Browser had this issue, and a recent update fixed it. I hope that Signal can update its dependencies soon (not sure if this is fixed in Electron yet) to obtain the fix.
Reference sway issue (which calls this out as upstream issue) : https://github.com/swaywm/sway/issues/6794
@adworacz I believe you're looking for https://github.com/electron/electron/issues/32487. The problem being described in this thread isn't dependent on the most recently released versions of wlroots or sway; it existed before those. The links in prior posts have more details, I just wanted to make the delineation clear. Both bugs, but not the same bug.
flatpak run org.signal.Signal --enable-features=UseOzonePlatform --ozone-platform=wayland --disable-gpu do not work on fedora even now. Ignoring the default server provider of many linux isn't a good move at all (but come from signal it's normal to ignore new thing it seem #AppleM1 long ignored, Scroll speed issue on wayland (when it worked), and many post closed to send us to a dead forum).
In short Signal good program, catastrophic community team behind....
flatpak run org.signal.Signal --enable-features=UseOzonePlatform --ozone-platform=wayland --disable-gpu do not work on fedora even now.
Likely because the fix in electron hasn't made it to electron yet (which the label "Upstream Change Needed" could hint at, but that's just a possibility), so there is little the Signal team can do about it for the moment.
Ignoring the default server provider of many linux
Fortunately, all distributions I am aware of ship with XWayland, so Signal can still be started. Hence, all supported platforms are actually still supported, even without the (still experimental, as far as I know) wayland support of Electron.
In short Signal good program, catastrophic community team behind....
I don't think that such a condescending tone contributes anything valuable to the discussion. If you are so dissatisfied with the situation that you decide to make this into a personal attack, I propose you simply move on and look for a solution that better suits your needs.
Looks like Brave Browser had this issue, and a recent update fixed it. I hope that Signal can update its dependencies soon (not sure if this is fixed in Electron yet) to obtain the fix.
@adworacz Do you know what Brave did to fix the issue?
https://github.com/electron/electron/issues/32436#issuecomment-1032338114 seems relevant as well
I installed Debian Testing Gnome with Wayland yesterday. I'm using an Nvidia 1650 with 510.47 binary. I used version 5.32.0 of the Flatpak of Signal all day with no issues. I booted my desktop today and Signal opens to a black screen. None of the command line options I have tried in the above comments do any good. The strange thing is, nothing changed on my computer. I didn't install any updates.
Here is the output from the standard flatpak run org.signal.Signal
[2 preload-host-spawn-strategy] Running: /app/bin/zypak-helper child - /app/Signal/signal-desktop --type=zygote --enable-crashpad
Set Windows Application User Model ID (AUMID) { appUserModelId: 'org.whispersystems.signal-desktop' }
NODE_ENV production
NODE_CONFIG_DIR /app/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/dale/.var/app/org.signal.Signal/config/Signal
config/get: Successfully read user config file
config/get: Successfully read ephemeral config file
LaunchProcess: failed to execvp:
xdg-settings
LaunchProcess: failed to execvp:
xdg-settings
Gtk-Message: 15:28:16.763: Failed to load module "canberra-gtk-module"
Gtk-Message: 15:28:16.763: Failed to load module "canberra-gtk-module"
[2:0219/152816.776755:ERROR:bus.cc(393)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory
[2:0219/152816.817392:ERROR:bus.cc(393)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory
[2:0219/152816.817418:ERROR:bus.cc(393)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory
[2:0219/152816.817432:ERROR:bus.cc(393)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory
libva error: vaGetDriverNameByIndex() failed with unknown libva error, driver_name = (null)
(node:77) [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)
When I run the command listed below, signal doesn't open.
flatpak run org.signal.Signal --enable-features=UseOzonePlatform --ozone-platform=wayland
[2 preload-host-spawn-strategy] Running: /app/bin/zypak-helper child - /app/Signal/signal-desktop --type=zygote --enable-crashpad
Set Windows Application User Model ID (AUMID) { appUserModelId: 'org.whispersystems.signal-desktop' }
NODE_ENV production
NODE_CONFIG_DIR /app/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/dale/.var/app/org.signal.Signal/config/Signal
config/get: Successfully read user config file
config/get: Successfully read ephemeral config file
LaunchProcess: failed to execvp:
xdg-settings
LaunchProcess: failed to execvp:
xdg-settings
[2:0219/153018.672447:ERROR:bus.cc(393)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory
[2:0219/153018.716419:ERROR:bus.cc(393)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory
[2:0219/153018.716461:ERROR:bus.cc(393)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory
[2:0219/153018.716486:ERROR:bus.cc(393)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory
dale@odin:~$ [53:0100/000000.749096:ERROR:gpu_init.cc(457)] Passthrough is not supported, GL is egl, ANGLE is
When I add --disable-gpu
to the about command this the output. The Singal app never opens either.
[2 preload-host-spawn-strategy] Running: /app/bin/zypak-helper child - /app/Signal/signal-desktop --type=zygote --enable-crashpad
Set Windows Application User Model ID (AUMID) { appUserModelId: 'org.whispersystems.signal-desktop' }
NODE_ENV production
NODE_CONFIG_DIR /app/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/dale/.var/app/org.signal.Signal/config/Signal
config/get: Successfully read user config file
config/get: Successfully read ephemeral config file
LaunchProcess: failed to execvp:
xdg-settings
LaunchProcess: failed to execvp:
xdg-settings
[2:0219/153243.137077:ERROR:bus.cc(393)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory
[2:0219/153243.179437:ERROR:bus.cc(393)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory
[2:0219/153243.179459:ERROR:bus.cc(393)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory
[2:0219/153243.179471:ERROR:bus.cc(393)] Failed to connect to the bus: Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory
dale@odin:~$ [53:0100/000000.207873:ERROR:sandbox_linux.cc(376)] InitializeSandbox() called with multiple threads in process gpu-process.
https://github.com/electron/electron/pull/33355 looks like a fix is on the way
electron/electron#33355 looks like a fix is on the way
Cool hope to see native wayland soon but secretly (openly) hope to see one day a community native app, instead of these app who use electron.
Alternative to Signal Desktop: https://github.com/isamert/scli
Alternative to Signal Desktop: https://github.com/isamert/scli
Thanks but would prefer a gui ^^
@BirdInFire isn't that Axolotl / https://github.com/nanu-c/axolotl/ ?
@BirdInFire isn't that Axolotl / https://github.com/nanu-c/axolotl/ ?
it's designed for mobile (as the screenshot see) but I hope this mode of using electron will end, because having 17 browsers on my computer becomes boring (because yes electron in the end is a browser), when i see a simple native software outclass by then times the speed of an electron app... if this is the "future" can we have a past tech for signal ?
Upstream fix has landed in https://github.com/electron/electron/releases/tag/v17.3.1
Looks like it should be pretty easy to update signal to use it too, I'd make a pull request if I had time to make sure it still works and everything https://github.com/signalapp/Signal-Desktop/commit/536dd0c7b02a2a8e3b32f6889a537ce90443c176
It works in 5.38.0-beta.1!
It works in 5.38.0-beta.1!
Hope to see it in flathub soon ;)
Can confirm, I can run the beta with --ozone-platform=wayland
without crashes and it's no longer pixelated on HighDPI! 🥳
Hooray!
Is there anyway to use wayland without passing the flag from a terminal everytime? I have my electron configs but signal ships with their own hence doesn't read it 🫠
@stickyburn Is there anyway to use wayland without passing the flag from a terminal everytime? I have my electron configs but signal ships with their own hence doesn't read it 🫠
Yes, create/edit a Signal desktop file for your user and put the flags in there.
Here's an example based on the filesystem layout on my system:
# if you don't already have a Signal desktop file in your user folder:
cp /usr/share/applications/signal-desktop.desktop ~/.local/share/applications/signal-desktop.desktop
# ... edit ~/.local/share/applications/signal-desktop.desktop and add the flags in the Exec line
Then when you start Signal from your launcher it should use that desktop file instead of the system one, and read the flags.
@stickyburn Is there anyway to use wayland without passing the flag from a terminal everytime? I have my electron configs but signal ships with their own hence doesn't read it 🫠
Yes, create/edit a Signal desktop file for your user and put the flags in there.
Here's an example based on the filesystem layout on my system:
# if you don't already have a Signal desktop file in your user folder: cp /usr/share/applications/signal-desktop.desktop ~/.local/share/applications/signal-desktop.desktop # ... edit ~/.local/share/applications/signal-desktop.desktop and add the flags in the Exec line
Then when you start Signal from your launcher it should use that desktop file instead of the system one, and read the flags.
Or ... you use flatpak version flatseal propose an environement variable to enable wayland (without touching at the desktop file) if more easy for the person who ask
Bug Description
After upgrading to
5.27.0-1
on Arch Linux, Signal Desktop no longer starts on Wayland (using ozone flags). Reverting back to5.26.1-1
fixes the issue.Steps to Reproduce
signal-desktop --enable-features=UseOzonePlatform --ozone-platform=wayland
Let me know if you need any additional information!
Actual Result: Signal doesn't start.
Expected Result: Signal starts on Wayland
Platform Info
Signal Version: 5.27.0
Operating System: Arch Linux