Wayland AppImage Crash

Steps to reproduce

Running the latest Obsidian AppImage with wayland enabled:
./Obsidian-1.4.5.AppImage --ozone-platform=wayland --enable-features=UseOzonePlatform,WaylandWindowDecorations
Try to open a vault or click some UI elements and Obsidian crashes.

Did you follow the troubleshooting guide? [Y]

Expected result

No crashes

Actual result

Obsidian seems to crash intermittently after a few seconds.
On a clean install, with no files in ~/.config/obsidian, the “welcome window” opens as expected with no immediate crash.
After clicking “Open Vault” and selecting a folder, Obsidian segfaults:

ben@benlaptopf ~/Applications/ % ./Obsidian-1.4.5.AppImage --ozone-platform=wayland --enable-features=UseOzonePlatform,WaylandWindowDecorations
2023-09-09 21:12:16 Loading main app package /tmp/.mount_ObsidifGR2cd/resources/obsidian.asar
Error: ENOENT: no such file or directory, open '/var/home/ben/.config/obsidian/obsidian.json'
    at Object.openSync (node:fs:601:3)
    at Object.func [as openSync] (node:electron/js2c/asar_bundle:2:1822)
    at Object.readFileSync (node:fs:469:35)
    at t.readFileSync (node:electron/js2c/asar_bundle:2:9165)
    at /tmp/.mount_ObsidifGR2cd/resources/obsidian.asar/main.js:1:3390
    at L (/tmp/.mount_ObsidifGR2cd/resources/obsidian.asar/main.js:1:2117)
    at B (/tmp/.mount_ObsidifGR2cd/resources/obsidian.asar/main.js:1:3371)
    at module.exports (/tmp/.mount_ObsidifGR2cd/resources/obsidian.asar/main.js:6:3411)
    at loadApp (/tmp/.mount_ObsidifGR2cd/resources/app.asar/main.js:294:3)
    at Object.<anonymous> (/tmp/.mount_ObsidifGR2cd/resources/app.asar/main.js:446:12) {
  errno: -2,
  syscall: 'open',
  code: 'ENOENT',
  path: '/var/home/ben/.config/obsidian/obsidian.json'
}
2023-09-09 21:12:16 Checking for update using Github
2023-09-09 21:12:16 Success.
2023-09-09 21:12:16 Latest version is 1.4.5
2023-09-09 21:12:16 App is up to date.
Error: ENOENT: no such file or directory, open '/var/home/ben/.config/obsidian/997ef8bee388e233.json'
    at Object.openSync (node:fs:601:3)
    at Object.func [as openSync] (node:electron/js2c/asar_bundle:2:1822)
    at Object.readFileSync (node:fs:469:35)
    at t.readFileSync (node:electron/js2c/asar_bundle:2:9165)
    at /tmp/.mount_ObsidifGR2cd/resources/obsidian.asar/main.js:1:3390
    at L (/tmp/.mount_ObsidifGR2cd/resources/obsidian.asar/main.js:1:2117)
    at B (/tmp/.mount_ObsidifGR2cd/resources/obsidian.asar/main.js:1:3371)
    at H (/tmp/.mount_ObsidifGR2cd/resources/obsidian.asar/main.js:25:1074)
    at t (/tmp/.mount_ObsidifGR2cd/resources/obsidian.asar/main.js:25:10271)
    at IpcMainImpl.<anonymous> (/tmp/.mount_ObsidifGR2cd/resources/obsidian.asar/main.js:25:6511) {
  errno: -2,
  syscall: 'open',
  code: 'ENOENT',
  path: '/var/home/ben/.config/obsidian/997ef8bee388e233.json'
}
zsh: segmentation fault (core dumped)  ./Obsidian-1.4.5.AppImage --ozone-platform=wayland 

This also occurs when I try to click on the Help icon on the “welcome window” to open the sandbox vault.

Strangely, running obsidian again with the exact same arguments opens the vault which was just selected with no immediate crash but mousing over any UI elements causes the same crash.
Then running Obsidian any subsequent times causes an immediate crash / segfault. To get obsidian to launch again I need to rm -rf ~/.config/obsidian.

Environment

I can only access my own vault for a few seconds to get the below output as I can’t access the sandbox vault.
SYSTEM INFO:
Obsidian version: v1.4.5
Installer version: v1.4.5
Operating system: #1 SMP PREEMPT_DYNAMIC Sat Sep 2 16:36:06 UTC 2023 6.4.14-200.fc38.x86_64
Login status: not logged in
Insider build toggle: off
Live preview: on
Legacy editor: off
Base theme: dark
Community theme: Big Sur Aesthetic v0.0.0
Snippets enabled: 1
Restricted mode: off
Plugins installed: 30
Plugins enabled: 20
1: Advanced new file v1.5.1
2: Contextual Typography v2.2.5
3: Core Search Assistant v0.9.2
4: Editor Syntax Highlight v0.1.3
5: Excalidraw v1.9.9
6: Kanban v1.5.3
7: Linter v1.17.0
8: Note Refactor v1.7.1
9: Style Settings v1.0.6
10: Tag Wrangler v0.5.11
11: Quick Latex for Obsidian v2.6.2
12: Desmos v0.6.6
13: Paste image rename v1.6.1
14: Extended MathJax v0.4.1
15: Advanced Tables v0.19.0
16: Short links v1.1.3
17: Table Generator v1.3.1
18: Better Word Count v0.9.6
19: Wordy v1.0.0
20: Duplicate Line v1.4.1


I’m running Fedora Silverblue with the latest Obsian AppImage v1.4.5

Additional information

This issue also appears to materialise itself through the flatpak version but I know this is not officially maintained so is somewhat irrelevant. Github Issue

It looks to me like it’s an issue introduced by an electron update between Obsidian v1.3.7 and v1.4.5 as there are many bug reports across various projects relating to wayland and electron crashes with electron v25.x.
A possible solution would be downgrading to the last known working electron version?

1 Like

This is possible as the other day I was looking at VScode’s wayland bug reports and they were lamenting frequent crashes.

I suggest you run Obsidian using x11, or xwayland, until the pair electron/wayland is mature. They are not there yet, we other bug reports involving Obsidian not working well under wayland.

1 Like

Thanks, I have a high res laptop monitor so unfortunately I can’t use Xwayland due to the blurry scaling issue. Until this is fixed i think I’ll just need to stay on Obsidian v1.3.7

For anyone else coming across this, using the flatpak this command will take you back to the last working version which uses electron 24.3.1:

flatpak update --commit=df4ad574288b02356d5318f6d5c1edd1d7d88320a5c08d96472d695cd509bff4 md.obsidian.Obsidian

Or use the previous AppImage version downloadable from the official github.

3 Likes

Setting “Window frame style” to “Hidden” in Settings/Appearance (as opposed to “Native”) seems to prevent segfault on launch. The app does segfault for me when I quit it, but it seems functional otherwise.