Compare commits

..

4 Commits

Author SHA1 Message Date
tux
dedda22aea chore: add serpantinum to persist dir 2026-09-12 18:12:11 +05:30
tux
ef09a8a5d4 style(desktop): update kitty foreground color 2026-09-12 17:42:48 +05:30
tux
51c6925364 feat(shell): add hm-override script 2026-09-12 17:29:59 +05:30
tux
dbd2353273 feat(desktop): add kitty module 2026-09-12 17:18:06 +05:30
4 changed files with 159 additions and 1 deletions

View File

@@ -0,0 +1,84 @@
{
flake.modules.homeManager.desktop = {pkgs, ...}: {
programs.kitty = {
enable = true;
package = pkgs.kitty;
font = {
name = "JetBrainsMono Nerd Font";
size = 12.0;
};
shellIntegration.enableZshIntegration = true;
settings = {
background_opacity = "1.0";
enable_audio_bell = false;
confirm_os_window_close = 0;
# Window
window_padding_width = 10;
foreground = "#f1f1f1";
background = "#0f0f0f";
# Borders
active_border_color = "#3d59a1";
inactive_border_color = "#101014";
bell_border_color = "#fffac2";
# Colors
color0 = "#0f0f0f";
color8 = "#a6accd";
color1 = "#d0679d";
color9 = "#d0679d";
color2 = "#5de4c7";
color10 = "#5de4c7";
color3 = "#fffac2";
color11 = "#fffac2";
color4 = "#89ddff";
color12 = "#add7ff";
color5 = "#fcc5e9";
color13 = "#fae4fc";
color6 = "#add7ff";
color14 = "#89ddff";
color7 = "#ffffff";
color15 = "#ffffff";
# Cursor
cursor = "#ffffff";
cursor_text_color = "#0f0f0f";
# Selection
selection_foreground = "none";
selection_background = "#28344a";
# URLs
url_color = "#5de4c7";
# Tab bar
tab_bar_edge = "bottom";
tab_bar_style = "fade";
tab_fade = "1";
active_tab_foreground = "#3d59a1";
active_tab_background = "#16161e";
active_tab_font_style = "bold";
inactive_tab_foreground = "#787c99";
inactive_tab_background = "#16161e";
inactive_tab_font_style = "bold";
tab_bar_background = "#101014";
};
};
};
}

View File

@@ -10,6 +10,77 @@
dig dig
lsof lsof
trok trok
(writeShellScriptBin "hm-override" ''
#!/usr/bin/env bash
set -euo pipefail
usage() {
echo "Usage:"
echo " $0 <filename> Override symlink"
echo " $0 <filename> --restore Restore symlink"
echo " $0 <filename> -r Restore symlink"
exit 1
}
if [[ $# -lt 1 || $# -gt 2 ]]; then
usage
fi
FILE="$1"
LINK_BACKUP="''${FILE}.backup-link"
# Restore
if [[ "''${2:-}" == "--restore" || "''${2:-}" == "-r" ]]; then
if [[ ! -f "$LINK_BACKUP" ]]; then
echo "Error: no backup symlink found: $LINK_BACKUP"
exit 1
fi
TARGET="$(cat "$LINK_BACKUP")"
# Remove the temporary override.
rm -f "$FILE"
# Restore the original symlink.
ln -s "$TARGET" "$FILE"
# Remove the temporary symlink target backup.
rm "$LINK_BACKUP"
echo "Restored: $FILE -> $TARGET"
exit 0
fi
# Override mode
if [[ ! -L "$FILE" ]]; then
echo "Error: $FILE is not a symlink"
exit 1
fi
if [[ -e "$LINK_BACKUP" ]]; then
echo "Error: backup already exists: $LINK_BACKUP"
echo "Restore the existing override before running again."
exit 1
fi
# Remember the original symlink target.
TARGET="$(readlink "$FILE")"
printf '%s\n' "$TARGET" > "$LINK_BACKUP"
# Copy the contents before removing the symlink.
cp "$FILE" "$FILE.tmp"
# Replace the symlink with a regular writable file.
rm "$FILE"
mv "$FILE.tmp" "$FILE"
chmod u+w "$FILE"
echo "Overridden: $FILE"
echo "Original: $FILE -> $TARGET"
'')
]; ];
}; };
} }

View File

@@ -27,6 +27,7 @@
".bun" ".bun"
".rustup" ".rustup"
".cache/awww" ".cache/awww"
".cache/serpantinum"
".config/BraveSoftware" ".config/BraveSoftware"
".config/zed" ".config/zed"
".config/Vencord" ".config/Vencord"

View File

@@ -23,10 +23,11 @@
home = { home = {
directories = [ directories = [
"Distrobox" "Distrobox"
".steam"
".bun" ".bun"
".rustup" ".rustup"
".steam"
".cache/awww" ".cache/awww"
".cache/serpantinum"
".config/BraveSoftware" ".config/BraveSoftware"
".config/zed" ".config/zed"
".config/Vencord" ".config/Vencord"
@@ -46,6 +47,7 @@
".local/state/lazygit" ".local/state/lazygit"
".local/share/vicinae" ".local/share/vicinae"
".local/share/TelegramDesktop" ".local/share/TelegramDesktop"
".local/share/GalaxyBudsClient"
".local/state/serpantinum" ".local/state/serpantinum"
".local/share/zed" ".local/share/zed"
]; ];