What I’m trying to do
I’m brand new to Obsidian, and am using version 1.12.4 on Linux Mint. I want the program to open maximized every time on my computer, which it does not do.
Things I have tried
Of course I manually maximize the application every time I open it. But when I close it and open it next time, it only opens in a smaller window again. Is there a solution to this?
I’m running the flatpak version on Debian (KDE Plasma). I tried changing Obsidian .desktop file by adding --start-maximized without success:
Exec=... md.obsidian.Obsidian @@u %U @@ --start-maximized
Here’s what worked for me
- Right-click on Obsidian’s window title bar
- Open Special Window Settings
- Add 2 properties: Maximized horizontally and Maximized vertically
Note: if you’re using Gnome or another Desktop Environment, you might find a similar solution.
That’s an interesting option in KDE Plasma. No such option exists in Cinnamon in Linux Mint when right-clicking on the window title bar. As a matter of fact I believe I have discovered a bug in Obsidian (.deb file) as a result of trying this. When I right-click on the window title bar the little box that has minimize, maximize, move, resize etc gets stuck on screen and cannot be interacted with unless one closes Obsidian.
Assuming this is the Flatpak version you are talking about, set the width and height property in (what I assume to be) a randomly numbered json file located at ~.var/app/md.obsidian.Obsidian/config/obsidian. Then set the file to read-only. Obsidian should always open with those settings from then on.
There is also a method utilising devilspie that maximises Obsidian after it opens.
Auto-Maximize for Obsidian (via CustomJS)
Fixes the issue where Linux window managers (like Cinnamon/Mint) forget the maximized state of the AppImage.
- The Script: Create a file named
setMaximized.js with this code:
JavaScript
class classSetMaximized {
async invoke() {
setTimeout(() => {
try {
const electron = require('electron');
const remote = require('@electron/remote') || electron.remote;
if (remote) remote.getCurrentWindow().maximize();
} catch (e) {
console.error("Maximize failed", e);
}
}, 500);
}
}
- CustomJS Setup:
-
Project Root: Set this to your script folder (e.g., Resources/Scripts). Important: Use the path starting from your Vault root; do not include the Vault name itself.
-
Click Reload Scripts.
-
Add startup script: Select classSetMaximized.
-
Restart Obsidian.
Note: You can use any custom folder for your scripts, just make sure the path in CustomJS settings matches your folder structure exactly.
On XFCE (Manjaro) and using a Launcher shortcut for Obsidian I replaced the default
/usr/bin/obsidian %U
with
sh -c '/usr/bin/obsidian & xdotool search --sync --onlyvisible --class obsidian key --delay 200 alt+F10'
This triggers the keyboard shortcut to maximize the window (default in XFCE is Alt+F10) shortly after starting the application. Seems to be working for me so far, YMMV!