feat(desktop): use ghostty as terminal

This commit is contained in:
2026-08-29 23:24:48 -04:00
parent 7d5a0d4759
commit 4493790d72
4 changed files with 21 additions and 2 deletions

View File

@@ -0,0 +1,18 @@
{
config,
lib,
pkgs,
...
}:
# Ghostty as the desktop terminal.
let
cfg = config.modules.desktop.apps.ghostty;
user = config.user.name;
in
{
options.modules.desktop.apps.ghostty.enable = lib.mkEnableOption "Ghostty as the desktop terminal";
config = lib.mkIf cfg.enable {
home-manager.users.${user}.home.packages = [ pkgs.ghostty ];
};
}

View File

@@ -9,8 +9,8 @@ in
# Each piece is turned on at default priority, so a host can still override # Each piece is turned on at default priority, so a host can still override
# any one of them while the single flag above enables the whole desktop. # any one of them while the single flag above enables the whole desktop.
config = lib.mkIf cfg.enable { config = lib.mkIf cfg.enable {
modules.desktop.apps.alacritty.enable = lib.mkDefault true;
modules.desktop.apps.firefox.enable = lib.mkDefault true; modules.desktop.apps.firefox.enable = lib.mkDefault true;
modules.desktop.apps.ghostty.enable = lib.mkDefault true;
modules.desktop.session.hyprland.enable = lib.mkDefault true; modules.desktop.session.hyprland.enable = lib.mkDefault true;
modules.desktop.session.hyprland.hypridle.enable = lib.mkDefault true; modules.desktop.session.hyprland.hypridle.enable = lib.mkDefault true;
modules.desktop.session.hyprland.hyprlock.enable = lib.mkDefault true; modules.desktop.session.hyprland.hyprlock.enable = lib.mkDefault true;

View File

@@ -61,7 +61,7 @@ in
settings = { settings = {
"$mod" = "SUPER"; "$mod" = "SUPER";
"$terminal" = "alacritty"; "$terminal" = "ghostty";
# Session variables handed to the compositor directly. # Session variables handed to the compositor directly.
# UWSM launches the session without the shell profile that would carry # UWSM launches the session without the shell profile that would carry

View File

@@ -89,6 +89,7 @@ in
window-rewrite-default = g "f2d0"; window-rewrite-default = g "f2d0";
window-rewrite = { window-rewrite = {
"class<Alacritty>" = g "f120"; "class<Alacritty>" = g "f120";
"class<com.mitchellh.ghostty>" = g "f120";
"class<.*[Ff]irefox.*>" = g "f269"; "class<.*[Ff]irefox.*>" = g "f269";
"class<chromium.*>" = g "f268"; "class<chromium.*>" = g "f268";
"class<[Cc]ode>" = g "f121"; "class<[Cc]ode>" = g "f121";