From 91fbc2bf98bfc0c540c7d283fb9e672e24d6d3ce Mon Sep 17 00:00:00 2001 From: Paul-Henri Froidmont Date: Sun, 23 Jun 2024 20:15:59 +0200 Subject: [PATCH] Terminal: migrate to Kitty --- modules/apps/rofi/rofi.nix | 2 +- modules/desktop/alacritty.nix | 65 -------------------------------- modules/desktop/file-manager.nix | 14 +++++++ modules/desktop/hyprland.nix | 6 ++- modules/desktop/terminal.nix | 30 +++++++++++++++ modules/desktop/vscode.nix | 2 +- 6 files changed, 50 insertions(+), 69 deletions(-) delete mode 100644 modules/desktop/alacritty.nix create mode 100644 modules/desktop/terminal.nix diff --git a/modules/apps/rofi/rofi.nix b/modules/apps/rofi/rofi.nix index e68dc70..ca06c01 100644 --- a/modules/apps/rofi/rofi.nix +++ b/modules/apps/rofi/rofi.nix @@ -12,7 +12,7 @@ in { programs.rofi = { enable = true; package = pkgs.rofi-wayland.override { plugins = [ pkgs.rofi-calc ]; }; - terminal = "alacritty"; + terminal = "kitty"; extraConfig = { icon-theme = "Paper"; cycle = true; diff --git a/modules/desktop/alacritty.nix b/modules/desktop/alacritty.nix deleted file mode 100644 index 56380b6..0000000 --- a/modules/desktop/alacritty.nix +++ /dev/null @@ -1,65 +0,0 @@ -{ config, lib, pkgs, ... }: - -with lib; -with lib.my; -let cfg = config.modules.desktop.alacritty; -in { - options.modules.desktop.alacritty = { enable = mkBoolOpt false; }; - config = mkIf cfg.enable { - home-manager.users.${config.user.name} = { - programs.alacritty = { - enable = true; - settings = { - colors = { - # (Gruvbox dark) - primary = { - background = "0x1d2021"; - foreground = "0xebdbb2"; - }; - normal = { - black = "0x282828"; - red = "0xcc241d"; - green = "0x98971a"; - yellow = "0xd79921"; - blue = "0x458588"; - magenta = "0xb16286"; - cyan = "0x689d6a"; - white = "0xa89984"; - }; - bright = { - black = "0x928374"; - red = "0xfb4934"; - green = "0xb8bb26"; - yellow = "0xfabd2f"; - blue = "0x83a598"; - magenta = "0xd3869b"; - cyan = "0x8ec07c"; - white = "0xebdbb2"; - }; - }; - window = { - title = "Alacritty"; - padding = { - x = 5; - y = 5; - }; - }; - scrolling.history = 65535; - font.size = 8; - keyboard.bindings = [ - { - key = "Up"; - mods = "Control"; - action = "IncreaseFontSize"; - } - { - key = "Down"; - mods = "Control"; - action = "DecreaseFontSize"; - } - ]; - }; - }; - }; - }; -} diff --git a/modules/desktop/file-manager.nix b/modules/desktop/file-manager.nix index db3284b..cda6dbf 100644 --- a/modules/desktop/file-manager.nix +++ b/modules/desktop/file-manager.nix @@ -16,6 +16,20 @@ in { sort_by = "alphabetical"; linemode = "mtime"; }; + preview = { + max_width = 1200; + max_height = 1800; + }; + }; + theme = { + status = { + separator_open = ""; + separator_close = ""; + separator_style = { + fg = "black"; + bg = "black"; + }; + }; }; }; diff --git a/modules/desktop/hyprland.nix b/modules/desktop/hyprland.nix index aea101e..e08a053 100644 --- a/modules/desktop/hyprland.nix +++ b/modules/desktop/hyprland.nix @@ -5,7 +5,9 @@ with lib.my; let cfg = config.modules.desktop.hyprland; - term = "${pkgs.alacritty}/bin/alacritty"; + term = "${ + config.home-manager.users.${config.user.name}.programs.kitty.package + }/bin/kitty"; in { options.modules.desktop.hyprland = { enable = mkBoolOpt false; }; @@ -17,7 +19,7 @@ in { gtk.enable = true; qt.enable = true; }; - alacritty.enable = true; + terminal.enable = true; file-manager.enable = true; zsh.enable = true; vscode.enable = true; diff --git a/modules/desktop/terminal.nix b/modules/desktop/terminal.nix new file mode 100644 index 0000000..559aad6 --- /dev/null +++ b/modules/desktop/terminal.nix @@ -0,0 +1,30 @@ +{ config, lib, pkgs, ... }: + +with lib; +with lib.my; +let cfg = config.modules.desktop.terminal; +in { + options.modules.desktop.terminal = { enable = mkBoolOpt false; }; + config = mkIf cfg.enable { + home-manager.users.${config.user.name} = { + programs.kitty = { + enable = true; + shellIntegration.enableZshIntegration = true; + settings = { + scrollback_lines = 65535; + enable_audio_bell = false; + font_size = 10; + }; + keybindings = { + "ctrl+up" = "change_font_size all +2.0"; + "ctrl+down" = "change_font_size all -2.0"; + "shift+page_up" = "scroll_page_up"; + "shift+page_down" = "scroll_page_down"; + "ctrl+shift+comma" = "scroll_to_prompt -1"; + "ctrl+shift+semicolon" = "scroll_to_prompt 1"; + }; + theme = "Gruvbox Dark"; + }; + }; + }; +} diff --git a/modules/desktop/vscode.nix b/modules/desktop/vscode.nix index 770f2e2..f2c43ee 100644 --- a/modules/desktop/vscode.nix +++ b/modules/desktop/vscode.nix @@ -62,7 +62,7 @@ in { "explorer.confirmDelete" = false; "explorer.confirmDragAndDrop" = false; "terminal.integrated.shellIntegration.enabled" = false; - "terminal.external.linuxExec" = "alacritty"; + "terminal.external.linuxExec" = "kitty"; "terminal.integrated.scrollback" = 65535; }; };