diff --git a/modules/desktop/apps/ghostty.nix b/modules/desktop/apps/ghostty.nix new file mode 100644 index 0000000..c39451e --- /dev/null +++ b/modules/desktop/apps/ghostty.nix @@ -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 ]; + }; +} diff --git a/modules/desktop/default.nix b/modules/desktop/default.nix index c997371..c9bf014 100644 --- a/modules/desktop/default.nix +++ b/modules/desktop/default.nix @@ -9,8 +9,8 @@ in # 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. config = lib.mkIf cfg.enable { - modules.desktop.apps.alacritty.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.hypridle.enable = lib.mkDefault true; modules.desktop.session.hyprland.hyprlock.enable = lib.mkDefault true; diff --git a/modules/desktop/session/hyprland/default.nix b/modules/desktop/session/hyprland/default.nix index a2ac9d6..0105939 100644 --- a/modules/desktop/session/hyprland/default.nix +++ b/modules/desktop/session/hyprland/default.nix @@ -61,7 +61,7 @@ in settings = { "$mod" = "SUPER"; - "$terminal" = "alacritty"; + "$terminal" = "ghostty"; # Session variables handed to the compositor directly. # UWSM launches the session without the shell profile that would carry diff --git a/modules/desktop/session/waybar.nix b/modules/desktop/session/waybar.nix index 85581d5..3b00b7b 100644 --- a/modules/desktop/session/waybar.nix +++ b/modules/desktop/session/waybar.nix @@ -89,6 +89,7 @@ in window-rewrite-default = g "f2d0"; window-rewrite = { "class" = g "f120"; + "class" = g "f120"; "class<.*[Ff]irefox.*>" = g "f269"; "class" = g "f268"; "class<[Cc]ode>" = g "f121";