Steps to reproduce
- On a Linux Wayland session, start Obsidian and open a vault.
- Move to another workspace, or otherwise put another window in front.
- Run
obsidianagain (from a terminal, the app launcher or a keybinding).
Did you read and follow the Troubleshooting Guide ? [Yes/No]
Yes. Reproduced in restricted mode, and in a fresh profile with a new empty vault.
Expected result
The running Obsidian window is raised and focused, as happens with other single-instance apps (and as Obsidian itself does for obsidian:// links).
Actual result
Nothing happens. The second process hands over to the running instance and exits, but the existing window is never raised or focused, so clicking Obsidian in an app launcher while it is already running appears to do nothing.
The no-argument path is the only one affected. With a URI, focus works:
obsidian→ no focus. The window sends no activation request at all to the compositor (no xdg-activation request, not even an “urgent” hint), even when a validXDG_ACTIVATION_TOKEN(orDESKTOP_STARTUP_ID) is passed in the environment.obsidian "obsidian://open"→ the running window comes forward, across workspaces too. With two vaults open it raises the last-used one, which is exactly the behaviour I’d expect from a plain launch.
Environment
SYSTEM INFO:
Obsidian version: 1.13.7
Installer version: 1.13.7
Operating system: #1 SMP PREEMPT_DYNAMIC Mon, 14 Sep 2026 19:55:01 +0000 7.2.5-3-omarchy
Login status: not logged in
Language: en
Insider build toggle: off
Live preview: on
Base theme: adapt to system
Community theme: none
Snippets enabled: 0
Restricted mode: on
RECOMMENDATIONS:
none
Distro Name: Omarchy 4.0.4 (Arch Linux based)
Distro Version: rolling (Arch), kernel 7.2.5-3-omarchy
Desktop Environment: none, Hyprland 0.56.2 (Wayland compositor, misc:focus_on_activate enabled)
Installation method used: Arch official repository package (extra/obsidian 1.13.7-2, runs on the system electron43 43.6.0)
Additional information
Workaround: point the desktop entry at a wrapper that passes obsidian://open when no arguments are given:
Exec=sh -c '[ $# -eq 0 ] && set -- obsidian://open; exec /usr/bin/obsidian "$@"' obsidian %U
It would be nice if a plain second launch took the same focus path the obsidian:// handler already takes.
Tested on Hyprland only; other compositors that enforce focus-stealing prevention are likely affected the same way.
Two small wording changes are in there as well:
- “most single-instance apps” is now “other single-instance apps”. We tested a handful (Nautilus, LibreOffice and LocalSend come forward; Telegram asks for focus), not most.
- The token variable names are in backticks so they render as code.