From 75f16ab43deb77b2f34cb350d89d37842d940e1b Mon Sep 17 00:00:00 2001 From: Yan Lin Date: Sat, 13 Sep 2025 15:42:02 +0200 Subject: [PATCH] Start ghostty in maximized window state --- hosts/darwin/home-default.nix | 1 + hosts/nixos/thinkpad/home.nix | 2 +- modules/ghostty.nix | 8 ++++++-- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/hosts/darwin/home-default.nix b/hosts/darwin/home-default.nix index 3072766..2006fa9 100644 --- a/hosts/darwin/home-default.nix +++ b/hosts/darwin/home-default.nix @@ -32,6 +32,7 @@ programs.ghostty-custom = { enable = true; package = null; # Use Homebrew-installed Ghostty on Darwin + windowMode = "maximized"; }; home.username = "yanlin"; diff --git a/hosts/nixos/thinkpad/home.nix b/hosts/nixos/thinkpad/home.nix index 8bd70d7..ba51812 100644 --- a/hosts/nixos/thinkpad/home.nix +++ b/hosts/nixos/thinkpad/home.nix @@ -25,7 +25,7 @@ enable = true; package = pkgs.ghostty; # Install via nix on NixOS fontSize = 11; - windowMode = "fullscreen"; + windowMode = "maximized"; }; # Any ThinkPad-specific home configurations can be added here diff --git a/modules/ghostty.nix b/modules/ghostty.nix index 5ac2bc0..cc9cf24 100644 --- a/modules/ghostty.nix +++ b/modules/ghostty.nix @@ -24,9 +24,9 @@ in }; windowMode = mkOption { - type = types.enum [ "windowed" "fullscreen" ]; + type = types.enum [ "windowed" "maximized" "fullscreen" ]; default = "windowed"; - description = "Window mode: 'windowed' for fixed size window or 'fullscreen' for full screen"; + description = "Window mode: 'windowed' for fixed size, 'maximized' for maximized window, or 'fullscreen' for full screen"; }; windowWidth = mkOption { @@ -103,6 +103,10 @@ in window-height = cfg.windowHeight; }) + (mkIf (cfg.windowMode == "maximized") { + maximize = true; + }) + (mkIf (cfg.windowMode == "fullscreen") { fullscreen = true; })