From ce6113a7cdd0c1b781f9b2d5e109419b9bcd5abe Mon Sep 17 00:00:00 2001 From: pagedmov Date: Sun, 24 Nov 2024 15:13:17 -0500 Subject: [PATCH] More nix-shell kitty theme tweaks --- modules/home/environment/userpkgs.nix | 1 - modules/home/environment/zsh/extraconfig.nix | 6 +++++- modules/home/files.nix | 18 +++++++++--------- 3 files changed, 14 insertions(+), 11 deletions(-) diff --git a/modules/home/environment/userpkgs.nix b/modules/home/environment/userpkgs.nix index d82aa20..8a79613 100755 --- a/modules/home/environment/userpkgs.nix +++ b/modules/home/environment/userpkgs.nix @@ -11,7 +11,6 @@ let myScripts.vipkg myScripts.fetchfromgh myScripts.garbage-collect - myScripts.nsp myScripts.rebuild myScripts.chpaper myScripts.chscheme diff --git a/modules/home/environment/zsh/extraconfig.nix b/modules/home/environment/zsh/extraconfig.nix index dc9b87b..c3486a3 100644 --- a/modules/home/environment/zsh/extraconfig.nix +++ b/modules/home/environment/zsh/extraconfig.nix @@ -21,7 +21,11 @@ in echo "\$RESULT = $RESULT" } precmd() { # Reset kitty color scheme - trap 'NIX_SHELL=false kitty_theme' EXIT SIGINT SIGTERM SIGHUP + if [ "$NIX_SHELL" = "false" ]; then # don't run this in a nix-shell + trap 'NIX_SHELL=false kitty_theme' EXIT SIGINT SIGTERM SIGHUP + else # but still apply ssh theme logic in nix-shell + trap 'kitty_theme' EXIT SIGINT SIGTERM SIGHUP + fi } nix-shell() { NIX_SHELL=true command nix-shell "$@" --run zsh diff --git a/modules/home/files.nix b/modules/home/files.nix index 5affb30..74784b9 100755 --- a/modules/home/files.nix +++ b/modules/home/files.nix @@ -7,26 +7,26 @@ let extractSchemeFromYaml = base16_scheme: let scheme_path = "${pkgs.base16-schemes}/share/themes/${base16_scheme}.yaml"; scheme_string = builtins.readFile scheme_path; - scheme_list = lib.splitString "\n" scheme_string; + scheme_list = lib.splitString "\n" scheme_string; # Split into a list colors = - lib.filter (line: builtins.match "^ *base[0-9A-F]{2}: .*" line != null) + lib.filter (line: builtins.match "^ *base[0-9A-F]{2}: .*" line != null) # Get raw hex values from scheme list scheme_list; - parsed_scheme = lib.lists.foldl' (acc: line: + parsed_scheme = lib.lists.foldl' (acc: line: # Initialize attribute set and begin folding values into it let - splitLine = lib.splitString ": " line; + splitLine = lib.splitString ": " line; # Split into keys (base00, base01, etc.) and values key = builtins.elemAt splitLine 0; value = builtins.elemAt splitLine 1; - trimmedKey = lib.trim key; + trimmedKey = lib.trim key; # Start cleaning values cleanValue_step1 = lib.splitString " " value; - cleanValue_step2 = builtins.elemAt cleanValue_step1 0; + cleanValue_step2 = builtins.elemAt cleanValue_step1 0; # Get just the hex value, ignore comments etc. cleanValue_final = builtins.substring 1 (builtins.stringLength cleanValue_step2 - 2) cleanValue_step2; - in acc // { "${trimmedKey}" = cleanValue_final; }) { } colors; - in parsed_scheme; + in acc // { "${trimmedKey}" = cleanValue_final; }) { } colors; # Accumulate keys/values into attribute set + in parsed_scheme; # Return parsed color scheme ssh_scheme = extractSchemeFromYaml "atelier-cave" ; - nix-shell_scheme = extractSchemeFromYaml "apathy"; + nix-shell_scheme = extractSchemeFromYaml "blueish"; def_scheme = config.lib.stylix.colors;