flathub / com.slack.Slack

https://flathub.org/apps/details/com.slack.Slack
34 stars 36 forks source link

Slack not working on Wayland KDE #265

Open galloramiro opened 4 months ago

galloramiro commented 4 months ago

Information

Slack

Slack version: 4.37.77 Release date: 11/02/2024

System

Operating System: Fedora Linux 39 KDE Plasma Version: 5.27.10 KDE Frameworks Version: 5.113.0 Qt Version: 5.15.12 Kernel Version: 6.7.4-200.fc39.x86_64 (64-bit) Graphics Platform: Wayland Processors: 8 × 11th Gen Intel® Core™ i5-1135G7 @ 2.40GHz Memory: 23,2 GiB of RAM Graphics Processor: Mesa Intel® Xe Graphics Manufacturer: Dell Inc. Product Name: Inspiron 15 3511

Bug description

Slack some times it's freezing with a black screen, other times disconnect my accounts and I need to re connect them. If I left this black screem goes I get a pop up that ask me to reload the app or kill it, but nothing seems to work. Right now after restart it's keeping the black screen. Screenshot_20240221_102117

ZVNexus commented 4 months ago

other times disconnect my accounts and I need to re connect them

Likely related to the libsecret changes recently, shouldn't ask you again.

Also is this only happening on Wayland?

ZVNexus commented 4 months ago

Launch the app via CLI instead and let me know the output: flatpak run com.slack.Slack

Also grab logs from ~/.var/app/com.slack.Slack/config/Slack/logs/default/electron_debug.log

hellsworth commented 4 months ago

I also have this issue with wayland kde and the slack flatpak. When run from the CLI, here are the logs and then it crashes:

$ flatpak run com.slack.Slack
Initializing local storage instance
(electron) Sending uncompressed crash reports is deprecated and will be removed in a future version of Electron. Set { compress: true } to opt-in to the new behavior. Crash reports will be uploaded gzipped, which most crash reporting servers support.
LaunchProcess: failed to execvp:
xdg-settings

Here are the complete journalctl logs from slack launch to crash as well:

Feb 29 13:04:58 fenrir systemd[2540]: Started app-flatpak-com.slack.Slack-12397.scope.
Feb 29 13:04:58 fenrir systemd[2540]: Started app-flatpak-com.slack.Slack-12426.scope.
Feb 29 13:05:02 fenrir systemd[2540]: Started dbus-:1.2-org.freedesktop.portal.IBus@7.service.
Feb 29 13:05:02 fenrir ibus-portal[12558]: Not connected to the ibus bus
Feb 29 13:05:02 fenrir systemd[2540]: dbus-:1.2-org.freedesktop.portal.IBus@7.service: Main process exited, code=exited, status=1/FAILURE
Feb 29 13:05:02 fenrir systemd[2540]: dbus-:1.2-org.freedesktop.portal.IBus@7.service: Failed with result 'exit-code'.
Feb 29 13:05:04 fenrir plasmashell[7782]: [2024-02-29 13:05:04.228] [   ] [debug] autosave no need
Feb 29 13:05:06 fenrir systemd[2540]: app-flatpak-com.slack.Slack-12426.scope: Consumed 8.016s CPU time.
Feb 29 13:05:06 fenrir systemd[2540]: app-flatpak-com.slack.Slack-12397.scope: Consumed 5.178s CPU time.

When I watch ~/.var/app/com.slack.Slack/config/Slack/logs/default/electron_debug.log, this is the only thing added when slack is launched and crashes:

[4:0229/130243.422042:WARNING:bluez_dbus_manager.cc(248)] Floss manager not present, cannot set Floss enable/disable.

But bluez seems totally unrelated to slack so idk. This line is consistently added on launching slack though.

ZVNexus commented 4 months ago

@hellsworth What GPU are you using?

hellsworth commented 4 months ago

@ZVNexus I have just the standard graphics on my thinkpad:

$ sudo lshw -C display
  *-display                 
       description: VGA compatible controller
       product: WhiskeyLake-U GT2 [UHD Graphics 620]
       vendor: Intel Corporation
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 02
       width: 64 bits
       clock: 33MHz
       capabilities: pciexpress msi pm vga_controller bus_master cap_list rom
       configuration: driver=i915 latency=0
       resources: irq:142 memory:c7000000-c7ffffff memory:a0000000-afffffff ioport:3000(size=64) memory:c0000-dffff

And the cpu is an Intel i7 4 cores / 8 threads:

model name      : Intel(R) Core(TM) i7-8565U CPU @ 1.80GHz
ZVNexus commented 4 months ago

@hellsworth Mind testing this PR? https://github.com/flathub/com.slack.Slack/pull/275

Some GPUs don't play well with the sandbox so want to test this first.

hellsworth commented 4 months ago

yes i will happily test the pr. what's the command to build it?

hellsworth commented 4 months ago

nvm i see the build now in the pr.. I'll test it here in a bit

hellsworth commented 3 months ago

@ZVNexus I installed the test branch of slack from #275 and ran it from the terminal. It still crashed and here's the stdout:

$ flatpak run com.slack.Slack
Initializing local storage instance
(electron) Sending uncompressed crash reports is deprecated and will be removed in a future version of Electron. Set { compress: true } to opt-in to the new behavior. Crash reports will be uploaded gzipped, which most crash reporting servers support.
LaunchProcess: failed to execvp:
xdg-settings
Error occurred in handler for 'GET_MEDIA_ACCESS_STATUS': TypeError: ae.systemPreferences.getMediaAccessStatus is not a function
    at /app/extra/resources/app.asar/dist/main.bundle.js:94:41813
    at yu (/app/extra/resources/app.asar/dist/main.bundle.js:5:5872)
    at /app/extra/resources/app.asar/dist/main.bundle.js:5:6606
    at WebContents.<anonymous> (node:electron/js2c/browser_init:2:78183)
    at WebContents.emit (node:events:514:28)
    at WebContents.emit (node:domain:488:12)
    at T.emit (/app/extra/resources/app.asar/dist/main.bundle.js:174:10674)
Error occurred in handler for 'GET_MEDIA_ACCESS_STATUS': TypeError: ae.systemPreferences.getMediaAccessStatus is not a function
    at /app/extra/resources/app.asar/dist/main.bundle.js:94:41813
    at yu (/app/extra/resources/app.asar/dist/main.bundle.js:5:5872)
    at /app/extra/resources/app.asar/dist/main.bundle.js:5:6606
    at WebContents.<anonymous> (node:electron/js2c/browser_init:2:78183)
    at WebContents.emit (node:events:514:28)
    at WebContents.emit (node:domain:488:12)
    at T.emit (/app/extra/resources/app.asar/dist/main.bundle.js:174:10674)
Error occurred in handler for 'GET_MEDIA_ACCESS_STATUS': TypeError: ae.systemPreferences.getMediaAccessStatus is not a function
    at /app/extra/resources/app.asar/dist/main.bundle.js:94:41813
    at yu (/app/extra/resources/app.asar/dist/main.bundle.js:5:5872)
    at /app/extra/resources/app.asar/dist/main.bundle.js:5:6606
    at WebContents.<anonymous> (node:electron/js2c/browser_init:2:78183)
    at WebContents.emit (node:events:514:28)
    at WebContents.emit (node:domain:488:12)
    at T.emit (/app/extra/resources/app.asar/dist/main.bundle.js:174:10674)
nerumo commented 1 month ago

For me, there was another issue. I had to add the permission for the wayland socket to make the start work. After that, it went well

image

ZVNexus commented 1 month ago

For me, there was another issue. I had to add the permission for the wayland socket to make the start work. After that, it went well

If you do this, it will run the app as a native Wayland app (vs just running under XWayland). Keep in mind the list of regressions in https://github.com/flathub/com.slack.Slack/issues/183#issuecomment-1902686110

There were some KDE specific Wayland bugs when I was doing some testing a bit ago, one of them had to do with the app not being linked to the desktop file which led to it's icon not showing up in taskbar or overview, just having a blank Wayland icon.

nerumo commented 1 month ago

For me, there was another issue. I had to add the permission for the wayland socket to make the start work. After that, it went well

If you do this, it will run the app as a native Wayland app (vs just running under XWayland). Keep in mind the list of regressions in #183 (comment)

There were some KDE specific Wayland bugs when I was doing some testing a bit ago, one of them had to do with the app not being linked to the desktop file which led to it's icon not showing up in taskbar or overview, just having a blank Wayland icon.

ah, thanks for the info. I'm used to those missing icons, there's KDE working around this with window rules. image

I'll keep it in mind, so far it works for me

hellsworth commented 1 month ago

I can also say that enabling these socket permissions (in flatseal) work for me image