ghostty: prevent service restarts

Stopping or restarting the service will destroy open Ghostty sessions,
potentially disrupting work. This change ensures that we leave the
existing service untouched.

Fixes #8485
This commit is contained in:
Robert Helgesson
2026-01-06 16:56:30 +01:00
parent 6e94d8157c
commit 4e8b7bef66
4 changed files with 44 additions and 1 deletions

View File

@@ -1,5 +1,10 @@
{ lib, pkgs, ... }:
{
ghostty-example-settings = ./example-settings.nix;
ghostty-empty-settings = ./empty-settings.nix;
ghostty-example-settings = ./example-settings.nix;
ghostty-example-theme = ./example-theme.nix;
}
// lib.optionalAttrs pkgs.stdenv.hostPlatform.isLinux {
ghostty-systemd-service = ./systemd-service.nix;
}

View File

@@ -11,6 +11,9 @@
};
nmt.script = ''
servicePath=home-files/.config/systemd/user/app-com.mitchellh.ghostty.service
assertPathNotExists $servicePath
assertFileContent \
home-files/.config/ghostty/config \
${./example-config-expected}

View File

@@ -0,0 +1,28 @@
{ config, ... }:
{
programs.ghostty = {
enable = true;
package = config.lib.test.mkStubPackage { outPath = null; };
systemd.enable = true;
settings = {
theme = "catppuccin-mocha";
font-size = 10;
};
};
nmt.script = ''
servicePath=home-files/.config/systemd/user/app-com.mitchellh.ghostty.service
serviceOverridesPath=$servicePath.d/overrides.conf
assertFileExists $serviceOverridesPath
assertFileContent $serviceOverridesPath \
${builtins.toFile "ghostty-service-overrides" ''
[Unit]
X-SwitchMethod=keep-old
''}
assertFileContent \
home-files/.config/ghostty/config \
${./example-config-expected}
'';
}