diff --git a/config/hyprland/hyprland.conf b/config/hyprland/hyprland.conf
index 5b40d4a9..14e0d526 100644
--- a/config/hyprland/hyprland.conf
+++ b/config/hyprland/hyprland.conf
@@ -10,6 +10,9 @@ source = ~/.config/hypr/translucentrules.conf
source = ~/.config/hypr/workspaces.conf
source = ~/.config/hypr/workspacerules.conf
+layerrule = blur,rofi
+layerrule = blur,waybar
+
general {
gaps_in = 5
gaps_out = 20
diff --git a/config/rofi/colors/Foggy-Lake.rasi b/config/rofi/colors/Foggy-Lake.rasi
new file mode 100644
index 00000000..e69edb54
--- /dev/null
+++ b/config/rofi/colors/Foggy-Lake.rasi
@@ -0,0 +1,7 @@
+* {
+ bg-col-op: rgba(239, 241, 245, 100%);
+ bg-col: rgba(239, 241, 245, 60%);
+ fg-col: #4c4f69;
+ pink: #d20f39;
+ trans: rgba(255, 255, 255, 0);
+}
\ No newline at end of file
diff --git a/config/rofi/rofi.rasi b/config/rofi/rofi.rasi
index 1bd5444d..0ac060b7 100644
--- a/config/rofi/rofi.rasi
+++ b/config/rofi/rofi.rasi
@@ -5,6 +5,7 @@ configuration{
font: "JetBrainsMono Nerd Font Mono 14";
show-icons: true;
icon-theme: "Papirus";
+ /*terminal: "alacritty -o font.size=12";*/
terminal: "kitty";
drun-display-format: "{icon} {name}";
disable-history: false;
@@ -29,24 +30,24 @@ window {
height: 500px;
width: 700px;
border-radius: 0px;
- background-color: @accent-dark;
+ background-color: @bg-col;
}
mainbox {
- background-color: @accent-dark;
+ background-color: @trans;
}
message {
- background-color: @accent-dark;
+ background-color: @trans;
}
error-message {
- background-color: @accent-dark;
+ background-color: @trans;
margin: 0px 0px 20px 0px;
}
textbox {
- background-color: @pastel-g;
+ background-color: @trans;
padding: 6px;
margin: 20px 20px 0px 20px;
border-radius: 3;
@@ -54,13 +55,13 @@ textbox {
inputbar {
children: [prompt,entry];
- background-color: @accent-dark;
+ background-color: @trans;
}
prompt {
- background-color: @pastel-g;
+ background-color: @pink;
padding: 6px;
- text-color: @dark;
+ text-color: @bg-col-op;
border-radius: 3px;
margin: 20px 0px 0px 20px;
}
@@ -68,8 +69,8 @@ prompt {
entry {
padding: 6px;
margin: 20px 20px 0px 10px;
- text-color: @dark;
- background-color: @pastel-d;
+ text-color: @fg-col;
+ background-color: @trans;
border-radius: 3px;
}
@@ -78,14 +79,14 @@ listview {
padding: 6px 0px 0px;
margin: 10px 0px 0px 20px;
columns: 1;
- background-color: @accent-dark;
+ background-color: @trans;
}
element {
padding: 5px;
margin: 0px 20px 0px 0px;
- background-color: @accent-dark;
- text-color: @light;
+ background-color: @trans;
+ text-color: @pink;
border-radius: 3px;
}
@@ -94,6 +95,6 @@ element-icon {
}
element selected {
- background-color: @light;
- text-color: @dark;
+ background-color: @pink;
+ text-color: @bg-col-op;
}
diff --git a/config/waybar/colors/foggy-lake.css b/config/waybar/colors/foggy-lake.css
new file mode 100644
index 00000000..8ad16619
--- /dev/null
+++ b/config/waybar/colors/foggy-lake.css
@@ -0,0 +1,37 @@
+/*
+*
+* Catppuccin Latte palette
+* Maintainer: rubyowo
+*
+*/
+
+@define-color base #eff1f5;
+@define-color mantle #e6e9ef;
+@define-color crust #dce0e8;
+
+@define-color text #4c4f69;
+@define-color subtext0 #6c6f85;
+@define-color subtext1 #5c5f77;
+
+@define-color surface0 #ccd0da;
+@define-color surface1 #bcc0cc;
+@define-color surface2 #acb0be;
+
+@define-color overlay0 #9ca0b0;
+@define-color overlay1 #8c8fa1;
+@define-color overlay2 #7c7f93;
+
+@define-color blue #1e66f5;
+@define-color lavender #7287fd;
+@define-color sapphire #209fb5;
+@define-color sky #04a5e5;
+@define-color teal #179299;
+@define-color green #40a02b;
+@define-color yellow #df8e1d;
+@define-color peach #fe640b;
+@define-color maroon #e64553;
+@define-color red #d20f39;
+@define-color mauve #8839ef;
+@define-color pink #ea76cb;
+@define-color flamingo #dd7878;
+@define-color rosewater #dc8a78;
\ No newline at end of file
diff --git a/config/waybar/config.json b/config/waybar/config.json
index f453cd34..85660e3f 100644
--- a/config/waybar/config.json
+++ b/config/waybar/config.json
@@ -47,6 +47,7 @@
"pulseaudio": {
"format": " {volume}%",
"format-muted": " ",
+ // "on-click": "alacritty -o font.size=12 -e ncpamixer"
"on-click": "kitty ncpamixer"
},
diff --git a/config/waybar/style.css b/config/waybar/style.css
index 70c218b1..e3e192ca 100644
--- a/config/waybar/style.css
+++ b/config/waybar/style.css
@@ -1,12 +1,14 @@
-@import url("colors/three-bears.css");
+/*@import url("colors/three-bears.css");*/
+@import url("colors/foggy-lake.css");
/*Order is Top-Right-Bottom-Left for combined properties*/
window#waybar {
font-family: JetBrainsMono Nerd Font Mono;
font-weight: bold;
- color: @dark;
- background-color: @accent-dark;
+ color: @base;
+ background-color: @base;
+ opacity: 0.6;
}
/*Square Widgets*/
@@ -39,14 +41,14 @@ window#waybar {
}
/*Colors*/
-#custom-launcher { background-color: @pastel-g; }
-#user { background-color: @pastel-f; }
-#window { background-color: @pastel-e; }
-#workspaces button { background-color: @pastel-d; }
-#pulseaudio { background-color: @pastel-e; }
-#network { background-color: @pastel-f; }
-#cpu { background-color: @pastel-g; }
-#memory { background-color: @pastel-h; }
-#temperature { background-color: @pastel-i; }
-#clock { background-color: @pastel-a; }
-#tray { background-color: @pastel-b; }
+#custom-launcher { background-color: @flamingo; }
+#user { background-color: @pink; }
+#window { background-color: @mauve; }
+#workspaces button { background-color: @red; }
+#pulseaudio { background-color: @maroon; }
+#network { background-color: @peach; }
+#cpu { background-color: @yellow; }
+#memory { background-color: @green; }
+#temperature { background-color: @teal; }
+#clock { background-color: @sky; }
+#tray { background-color: @sapphire; }
diff --git a/home/christoph/default.nix b/home/christoph/default.nix
index 7080eba9..0a67b4fa 100644
--- a/home/christoph/default.nix
+++ b/home/christoph/default.nix
@@ -87,13 +87,18 @@ rec {
hyprland = {
enable = true;
- theme = "Three-Bears";
+ # theme = "Three-Bears";
+ theme = "Foggy-Lake";
keybindings = {
main-mod = "SUPER";
bindings = {
- "$mainMod, E" = ["exec, kitty fish -c \"nnncd -a -P p\""];
+ "$mainMod, T" = ["exec, kitty"];
+ "$mainMod, E" = ["exec, kitty"];
+ # "$mainMod, T" = ["exec, alacritty -o font.size=12 -e tmux"];
+ # "$mainMod, E" = ["exec, alacritty -o font.size=12 -e tmux"];
+
"$mainMod, P" = ["exec, hyprpicker -a"];
"$mainMod, S" = ["exec, grim -g \"$(slurp)\""];
"$mainMod CTRL, S" = ["exec, grim -g \"$(slurp)\" - | wl-copy"];
@@ -104,6 +109,7 @@ rec {
"kdeconnect-indicator"
"nextcloud --background"
"keepassxc"
+ # "alacritty -o font.size=12 -e tmux"
"kitty"
# "md.obsidian.Obsidian"
# "firefox"
@@ -138,6 +144,7 @@ rec {
transparent = [
"kitty"
+ "Alacritty"
"discord"
"Spotify"
"obsidian"
@@ -181,7 +188,8 @@ rec {
rofi = {
enable = true;
- theme = "Three-Bears";
+ # theme = "Three-Bears";
+ theme = "Foggy-Lake";
};
vscode.enable = true;
@@ -251,6 +259,7 @@ rec {
EDITOR = "hx";
VISUAL = "hx";
+ # TERMINAL = "alacritty -o font.size=12";
TERMINAL = "kitty";
BROWSER = "firefox";
@@ -262,9 +271,6 @@ rec {
NIXOS_OZONE_WL = "1";
SDL_VIDEODRIVER = "wayland";
- # TODO: NNN Module
- # NNN_FIFO = "/tmp/nnn.fifo"; # For nnn preview
-
# Don't use system wine, use bottles
# WINEESYNC = 1;
# WINEFSYNC = 1;
@@ -290,13 +296,11 @@ rec {
# delta # diffier diff differ (enabled as program)
# fzf # fuzzy find (enabled as program in fish module)
tokei # Text file statistics in a project
- rsync # cp on steroids
- rclone # Rsync for cloud
poppler_utils # pdfunite
# ffmpeg # Convert video (magic), v4
ffmpeg_5-full # v5, including ffplay
imagemagick # Convert image (magic)
- httpie # Cool http client
+ ueberzugpp # Display images in terminal (alacritty)
(ripgrep.override {withPCRE2 = true;}) # fast as fuck
nvd # nix rebuild diff
# du-dust # Disk usage analyzer (for directories)
@@ -305,14 +309,9 @@ rec {
fd # find alternative
sd # sed alternative
tealdeer # very fast tldr (so readable man)
- gping # ping with graph
# gtop # graphic top # We have btop already...
- curlie # curl a'la httpie
- wget # download that shit
- dogdns # dns client
fclones # duplicate file finder
gum # nice shell scripts
- lazygit # can always use another git client
geteltorito # extreact boot image from iso
gitbatch # overview over multiple repos
# TODO: Maybe general document/typesetting module?
@@ -340,6 +339,21 @@ rec {
unrar
p7zip
+ # Networking
+ dig
+ tcpdump
+ traceroute
+ wireshark
+ gping # ping with graph
+ curlie # curl a'la httpie
+ wget # download that shit
+ dogdns # dns client
+ rsync # cp on steroids
+ rclone # Rsync for cloud
+ httpie # Cool http client
+
+ cool-retro-term
+
# Xooooorg/Desktop environment stuff
# xclip
xorg.xwininfo # See what apps run in XWayland
@@ -442,11 +456,146 @@ rec {
programs = {
home-manager.enable = true;
- # Potential future enables
- # mangohud.enable = true;
- # matplotlib.enable = true;
+ alacritty = {
+ enable = true;
- bat.enable = true;
+ settings = {
+ window = {
+ padding = {
+ x = 10;
+ y = 10;
+ };
+
+ font = {
+ normal = "JetBrainsMono Nerd Font Mono";
+ size = 12;
+ };
+ };
+
+ env = {
+ TERM = "xterm-256color";
+ };
+
+ colors = {
+ # Default colors
+ primary = {
+ background = "#EFF1F5"; # base
+ foreground = "#4C4F69"; # text
+ # Bright and dim foreground colors
+ dim_foreground = "#4C4F69"; # text
+ bright_foreground = "#4C4F69"; # text
+ };
+
+ # Cursor colors
+ cursor = {
+ text = "#EFF1F5"; # base
+ cursor = "#DC8A78"; # rosewater
+ };
+ vi_mode_cursor = {
+ text = "#EFF1F5"; # base
+ cursor = "#7287FD"; # lavender
+ };
+
+ # Search colors
+ search = {
+ matches = {
+ foreground = "#EFF1F5"; # base
+ background = "#6C6F85"; # subtext0
+ };
+ focused_match = {
+ foreground = "#EFF1F5"; # base
+ background = "#40A02B"; # green
+ };
+ footer_bar = {
+ foreground = "#EFF1F5"; # base
+ background = "#6C6F85"; # subtext0
+ };
+ };
+
+ # Keyboard regex hints
+ hints = {
+ start = {
+ foreground = "#EFF1F5"; # base
+ background = "#DF8E1D"; # yellow
+ };
+ end = {
+ foreground = "#EFF1F5"; # base
+ background = "#6C6F85"; # subtext0
+ };
+ };
+
+ # Selection colors
+ selection = {
+ text = "#EFF1F5"; # base
+ background = "#DC8A78"; # rosewater
+ };
+
+ # Normal colors
+ normal = {
+ black = "#5C5F77"; # subtext1
+ red = "#D20F39"; # red
+ green = "#40A02B"; # green
+ yellow = "#DF8E1D"; # yellow
+ blue = "#1E66F5"; # blue
+ magenta = "#EA76CB"; # pink
+ cyan = "#179299"; # teal
+ white = "#ACB0BE"; # surface2
+ };
+
+ # Bright colors
+ bright = {
+ black = "#6C6F85"; # subtext0
+ red = "#D20F39"; # red
+ green = "#40A02B"; # green
+ yellow = "#DF8E1D"; # yellow
+ blue = "#1E66F5"; # blue
+ magenta = "#EA76CB"; # pink
+ cyan = "#179299"; # teal
+ white = "#BCC0CC"; # surface1
+ };
+
+ # Dim colors
+ dim = {
+ black = "#5C5F77"; # subtext1
+ red = "#D20F39"; # red
+ green = "#40A02B"; # green
+ yellow = "#DF8E1D"; # yellow
+ blue = "#1E66F5"; # blue
+ magenta = "#EA76CB"; # pink
+ cyan = "#179299"; # teal
+ white = "#ACB0BE"; # surface2
+ };
+
+ indexed_colors = [
+ {
+ index = 16;
+ color = "#FE640B";
+ }
+ {
+ index = 17;
+ color = "#DC8A78";
+ }
+ ];
+ };
+ };
+ };
+
+ bat = {
+ enable = true;
+
+ themes = {
+ catppuccin-latte = builtins.readFile (pkgs.fetchFromGitHub {
+ owner = "catppuccin";
+ repo = "bat";
+ rev = "ba4d16880d63e656acced2b7d4e034e4a93f74b1";
+ sha256 = "sha256-6WVKQErGdaqb++oaXnY3i6/GuH2FhTgK0v4TN4Y0Wbw=";
+ } + "/Catppuccin-latte.tmTheme");
+ };
+
+ config = {
+ theme = "catppuccin-latte";
+ };
+ };
broot = {
enable = true;
@@ -515,6 +664,7 @@ rec {
};
};
}; # NOTE: If error occurs after system update on fish init run "ssh-add"
+
keychain = {
enable = true;
enableFishIntegration = config.modules.fish.enable;
@@ -524,6 +674,23 @@ rec {
keys = ["id_ed25519"];
};
+ lazygit = {
+ enable = true;
+ settings = {
+ gui.theme = {
+ lightTheme = false;
+ activeBorderColor = ["#40a02b" "bold"];
+ inactiveBorderColor = ["#4c4f69"];
+ optionsTextColor = ["#1e66f5"];
+ selectedLineBgColor = ["#ccd0da"];
+ selectedRangeBgColor = ["#ccd0da"];
+ cherryPickedCommitBgColor = ["#179299"];
+ cherryPickedCommitFgColor = ["#1e66f5"];
+ unstagedChangeColor = ["red"];
+ };
+ };
+ };
+
# Realtime Motion Interpolation: https://gist.github.com/phiresky/4bfcfbbd05b3c2ed8645
mpv = {
enable = true;
@@ -571,17 +738,98 @@ rec {
ssh.enable = true;
- starship = {
+ starship = let
+ flavour = "latte"; # One of `latte`, `frappe`, `macchiato`, or `mocha`
+ in {
enable = true;
enableFishIntegration = config.modules.fish.enable;
+ settings =
+ {
+ # Other config here
+ format = "$all"; # Remove this line to disable the default prompt format
+ palette = "catppuccin_${flavour}";
+ }
+ // builtins.fromTOML (builtins.readFile
+ (pkgs.fetchFromGitHub
+ {
+ owner = "catppuccin";
+ repo = "starship";
+ rev = "3e3e54410c3189053f4da7a7043261361a1ed1bc";
+ sha256 = "sha256-soEBVlq3ULeiZFAdQYMRFuswIIhI9bclIU8WXjxd7oY=";
+ }
+ + /palettes/${flavour}.toml));
+ };
+
+ tmux = {
+ enable = true;
+
+ clock24 = true;
+ escapeTime = 0; # Delay after pressing escape
+ # keyMode = "vi";
+ terminal = "xterm-256color";
+
+ plugins = with pkgs; [
+ {
+ plugin = tmuxPlugins.catppuccin;
+ extraConfig = ''
+ set -g @plugin 'catppuccin/tmux'
+ set -g @catppuccin_flavour 'latte' # or frappe, macchiato, mocha
+ '';
+ }
+ ];
+
+ extraConfig = ''
+ set -g default-terminal "xterm-256color"
+ set-option -ga terminal-overrides ",xterm-256color:Tc"
+ '';
};
# TODO: Check HM module options
yt-dlp.enable = true;
- # TODO
zathura = {
enable = true;
+
+ options = {
+ # Catppuccin Latte
+ default-fg = "#4C4F69";
+ default-bg = "#EFF1F5";
+
+ completion-bg = "#CCD0DA";
+ completion-fg = "#4C4F69";
+ completion-highlight-bg = "#575268";
+ completion-highlight-fg = "#4C4F69";
+ completion-group-bg = "#CCD0DA";
+ completion-group-fg = "#1E66F5";
+
+ statusbar-fg = "#4C4F69";
+ statusbar-bg = "#CCD0DA";
+
+ notification-bg = "#CCD0DA";
+ notification-fg = "#4C4F69";
+ notification-error-bg = "#CCD0DA";
+ notification-error-fg = "#D20F39";
+ notification-warning-bg = "#CCD0DA";
+ notification-warning-fg = "#FAE3B0";
+
+ inputbar-fg = "#4C4F69";
+ inputbar-bg = "#CCD0DA";
+
+ recolor-lightcolor = "#EFF1F5";
+ recolor-darkcolor = "#4C4F69";
+
+ index-fg = "#4C4F69";
+ index-bg = "#EFF1F5";
+ index-active-fg = "#4C4F69";
+ index-active-bg = "#CCD0DA";
+
+ render-loading-bg = "#EFF1F5";
+ render-loading-fg = "#4C4F69";
+
+ highlight-color = "#575268";
+ highlight-fg = "#EA76CB";
+ highlight-active-color = "#EA76CB";
+ };
};
zoxide = {
diff --git a/home/modules/fish/default.nix b/home/modules/fish/default.nix
index 7580e683..a1c04bc2 100644
--- a/home/modules/fish/default.nix
+++ b/home/modules/fish/default.nix
@@ -13,10 +13,42 @@ in {
options.modules.fish = import ./options.nix {inherit lib mylib;};
config = mkIf cfg.enable {
+ home.file.".config/fish/themes/catppuccin-latte.theme".text = ''
+ # name: 'Catppuccin Latte'
+ # url: 'https://github.com/catppuccin/fish'
+ # preferred_background: eff1f5
+
+ fish_color_normal 4c4f69
+ fish_color_command 1e66f5
+ fish_color_param dd7878
+ fish_color_keyword d20f39
+ fish_color_quote 40a02b
+ fish_color_redirection ea76cb
+ fish_color_end fe640b
+ fish_color_comment 8c8fa1
+ fish_color_error d20f39
+ fish_color_gray 9ca0b0
+ fish_color_selection --background=ccd0da
+ fish_color_search_match --background=ccd0da
+ fish_color_option 40a02b
+ fish_color_operator ea76cb
+ fish_color_escape e64553
+ fish_color_autosuggestion 9ca0b0
+ fish_color_cancel d20f39
+ fish_color_cwd df8e1d
+ fish_color_user 179299
+ fish_color_host_remote 40a02b
+ fish_color_host 1e66f5
+ fish_color_status d20f39
+ fish_pager_color_progress 9ca0b0
+ fish_pager_color_prefix ea76cb
+ fish_pager_color_completion 4c4f69
+ fish_pager_color_description 9ca0b0
+ '';
+
programs.fish = {
enable = true;
- # TODO:
functions = {
nnncd = {
wraps = "nnn";
@@ -56,8 +88,25 @@ in {
};
};
- # TODO:
- # plugins = [];
+ plugins = [
+ # oh-my-fish plugins are stored in their own repositories, which
+ # makes them simple to import into home-manager.
+ # NOTE: Currently, HM ignores theme plugins
+ # {
+ # name = "Catppuccin Latte";
+ # src = pkgs.fetchFromGitHub {
+ # owner = "catppuccin";
+ # repo = "fish";
+ # rev = "91e6d6721362be05a5c62e235ed8517d90c567c9";
+ # sha256 = "sha256-l9V7YMfJWhKDL65dNbxaddhaM6GJ0CFZ6z+4R6MJwBA=";
+ # };
+ # }
+ ];
+
+ shellInit = ''
+ set -e fish_greeting
+ yes | fish_config theme save "catppuccin-latte"
+ '';
shellAbbrs = let
# Only add " | bat" if bat is installed
@@ -88,7 +137,8 @@ in {
blk = batify "lsblk -o NAME,LABEL,UUID,FSTYPE,SIZE,FSUSE%,MOUNTPOINT,MODEL";
grep = "grep --color=auto -E"; # grep with extended regex
watch = "watch -d -c -n 0.5";
- n = "nnncd -a -P p -e"; # Doesn't work with abbrify because I have nnn.override?
+ n = "nnncd -a -e"; # Doesn't work with abbrify because I have nnn.override?
+ np = "nnncd -a -P p -e";
# systemd
failed = "systemctl --failed";
@@ -157,10 +207,6 @@ in {
mp3 = "yt-dlp -f 'ba' --extract-audio --audio-format mp3";
})
];
-
- shellInit = ''
- set -e fish_greeting
- '';
};
};
}
diff --git a/home/modules/helix/default.nix b/home/modules/helix/default.nix
index 2e248038..d0205d80 100644
--- a/home/modules/helix/default.nix
+++ b/home/modules/helix/default.nix
@@ -35,13 +35,14 @@ in {
# https://docs.helix-editor.com/configuration.html
settings = {
- # theme = "base16_terminal";
+ theme = "catppuccin_latte";
editor = {
scrolloff = 10;
mouse = false; # Default true
middle-click-paste = false; # Default true
line-number = "relative";
cursorline = true;
+ color-modes = true;
auto-completion = true; # Default
bufferline = "multiple";
cursor-shape = {
diff --git a/home/modules/hyprland/default.nix b/home/modules/hyprland/default.nix
index 4c090e8b..d5c08e44 100644
--- a/home/modules/hyprland/default.nix
+++ b/home/modules/hyprland/default.nix
@@ -26,11 +26,14 @@ in {
iconTheme.name = "Papirus";
};
+ # TODO: catppuccin-cursors
home.pointerCursor = {
gtk.enable = true;
x11.enable = true;
package = pkgs.bibata-cursors;
name = "Bibata-Modern-Classic";
+ # package = pkgs.catppuccin-cursors.latteMauve;
+ # name = "Catppuccin-Latte-Mauve-Cursors";
size = 16;
};
@@ -56,6 +59,37 @@ in {
# Notification service
dunst = {
enable = true;
+
+ iconTheme.package = pkgs.papirus-icon-theme;
+ iconTheme.name = "Papirus";
+
+ settings = {
+ global = {
+ monitor = 1;
+ font = "JetBrains Nerd Font Mono 11";
+ offset = "20x20";
+ frame_color = "#1E66F5";
+ frame_width = 2;
+ corner_radius = 5;
+ separator_color = "frame";
+ };
+
+ urgency_low = {
+ background = "#EFF1F5";
+ foreground = "#4C4F69";
+ };
+
+ urgency_normal = {
+ background = "#EFF1F5";
+ foreground = "#4C4F69";
+ };
+
+ urgency_critical = {
+ background = "#EFF1F5";
+ foreground = "#4C4F69";
+ frame_color = "#FE640B";
+ };
+ };
};
};
@@ -102,7 +136,6 @@ in {
"$mainMod, F" = ["fullscreen"];
"$mainMod, C" = ["exec, clipman pick --tool=rofi"];
"$mainMod, G" = ["togglegroup"];
- "$mainMod, T" = ["exec, kitty"];
"ALT, tab" = ["changegroupactive"];
};
diff --git a/home/modules/kitty/default.nix b/home/modules/kitty/default.nix
index f98678af..ae810970 100644
--- a/home/modules/kitty/default.nix
+++ b/home/modules/kitty/default.nix
@@ -17,6 +17,7 @@ in {
config = mkIf cfg.enable {
programs.kitty = {
enable = true;
+ shellIntegration.enableFishIntegration = true;
font = {
# package = pkgs.victor-mono;
@@ -24,45 +25,102 @@ in {
size = 12;
};
- # TODO: Configure
- settings = {
- editor = "hx";
- scrollback_lines = 10000;
- window_padding_width = 0;
- # hide_window_decorations = "yes";
-
- allow_remote_control = "yes"; # For nnn file preview
- listen_on = "unix:@mykitty";
-
- # Light Theme
- # background = "#f7f7f7";
- # foreground = "#39FF14"; # Matrix green because I'm a master hacker
- # selection_background = "#a4a1a1";
- # selection_foreground = "#f7f7f7";
- # cursor = "#494542";
- # color0 = "#090200";
- # color1 = "#da2c20";
- # color2 = "#00a152";
- # color3 = "#ffcc00";
- # color4 = "#00a0e4";
- # color5 = "#a06994";
- # color6 = "#0077d9";
- # color7 = "#a4a1a1";
- # color8 = "#5b5754";
- # color9 = "#e8bacf";
- # color10 = "#3a3332";
- # color11 = "#494542";
- # color12 = "#7f7c7b";
- # color13 = "#d6d4d3";
- # color14 = "#ccab53";
- # color15 = "#d2b3ff";
- };
-
keybindings = {
"kitty_mod+j" = "next_window";
"kitty_mod+k" = "previous_window";
"kitty_mod+l" = "next_layout";
};
+
+ settings = {
+ editor = "hx";
+ scrollback_lines = 10000;
+ window_padding_width = 10; # Looks stupid with helix if bg doesn't match
+ # hide_window_decorations = "yes";
+ enabled_layouts = "grid,vertical,horizontal";
+
+ allow_remote_control = "yes"; # For nnn file preview
+ listen_on = "unix:@mykitty";
+
+ tab_bar_min_tabs = 1;
+ tab_bar_edge = "bottom";
+ tab_bar_style = "powerline";
+ tab_powerline_style = "slanted";
+ tab_title_template = "{title}{' :{}:'.format(num_windows) if num_windows > 1 else ''}";
+
+ #
+ # Catppuccin Light Theme
+ #
+
+ # The basic colors
+ foreground = "#4C4F69";
+ background = "#EFF1F5";
+ selection_foreground = "#EFF1F5";
+ selection_background = "#DC8A78";
+
+ # Cursor colors
+ cursor = "#DC8A78";
+ cursor_text_color = "#EFF1F5";
+
+ # URL underline color when hovering with mouse
+ url_color = "#DC8A78";
+
+ # Kitty window border colors
+ active_border_color = "#7287FD";
+ inactive_border_color = "#9CA0B0";
+ bell_border_color = "#DF8E1D";
+
+ # OS Window titlebar colors
+ wayland_titlebar_color = "system";
+ macos_titlebar_color = "system";
+
+ # Tab bar colors
+ active_tab_foreground = "#EFF1F5";
+ active_tab_background = "#8839EF";
+ inactive_tab_foreground = "#4C4F69";
+ inactive_tab_background = "#9CA0B0";
+ tab_bar_background = "#BCC0CC";
+
+ # Colors for marks (marked text in the terminal)
+ mark1_foreground = "#EFF1F5";
+ mark1_background = "#7287fD";
+ mark2_foreground = "#EFF1F5";
+ mark2_background = "#8839EF";
+ mark3_foreground = "#EFF1F5";
+ mark3_background = "#209FB5";
+
+ # The 16 terminal colors
+ # black
+ color0 = "#5C5F77";
+ color8 = "#6C6F85";
+
+ # red
+ color1 = "#D20F39";
+ color9 = "#D20F39";
+
+ # green
+ color2 = "#40A02B";
+ color10 = "#40A02B";
+
+ # yellow
+ color3 = "#DF8E1D";
+ color11 = "#DF8E1D";
+
+ # blue
+ color4 = "#1E66F5";
+ color12 = "#1E66F5";
+
+ # magenta
+ color5 = "#EA76CB";
+ color13 = "#EA76CB";
+
+ # cyan
+ color6 = "#179299";
+ color14 = "#179299";
+
+ # white
+ color7 = "#ACB0BE";
+ color15 = "#BCC0CC";
+ };
};
};
}
diff --git a/home/modules/nnn/default.nix b/home/modules/nnn/default.nix
index 26883107..c729e1d8 100644
--- a/home/modules/nnn/default.nix
+++ b/home/modules/nnn/default.nix
@@ -14,6 +14,12 @@ in {
options.modules.nnn = import ./options.nix {inherit lib mylib;};
config = mkIf cfg.enable {
+ home.sessionVariables = {
+ # NNN_TERMINAL = "alacritty";
+ NNN_PAGER = "bat";
+ # NNN_FIFO = "/tmp/nnn.fifo"; # For nnn preview
+ };
+
programs.nnn = {
package = pkgs.nnn.override {
# These two are mutually exclusive
diff --git a/home/modules/vscode/default.nix b/home/modules/vscode/default.nix
index 66eb19bb..78612640 100644
--- a/home/modules/vscode/default.nix
+++ b/home/modules/vscode/default.nix
@@ -22,6 +22,8 @@ in {
alefragnani.bookmarks
# alefragnani.project-manager # Not much sense with flake dev environments
# bradlc.vscode-tailwindcss
+ catppuccin.catppuccin-vsc
+ catppuccin.catppuccin-vsc-icons
christian-kohler.path-intellisense
codezombiech.gitignore
coolbear.systemd-unit-file
@@ -46,6 +48,7 @@ in {
ms-vscode.cpptools
ms-vscode.hexeditor
ms-vscode.makefile-tools
+ ms-vscode-remote.remote-ssh
# naumovs.color-highlight
njpwerner.autodocstring
james-yu.latex-workshop
@@ -91,10 +94,16 @@ in {
"files.trimFinalNewlines" = true;
"files.trimTrailingWhitespace" = true; # NOTE: If this is enabled with frequent autosave, the current lines whitespace will always be removed, which is obnoxious
+ "window.restoreWindows" = "none";
+
"workbench.enableExperiments" = false;
"workbench.list.smoothScrolling" = true;
- "workbench.colorTheme" = "Default Light Modern";
- "workbench.iconTheme" = "vscode-icons";
+ # "workbench.colorTheme" = "Default Light Modern";
+ # "workbench.iconTheme" = "vscode-icons";
+ "workbench.colorTheme" = "Catppuccin Latte";
+ "workbench.iconTheme" = "catppuccin-latte";
+
+ "remote.SSH.configFile" = "~/.ssh/custom-config";
"security.workspace.trust.enabled" = false;