From dfac501d3d2e3c70052cf585ff269779a25dec0a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ji=C5=99=C3=AD=20Maxmili=C3=A1n=20St=C5=99=C3=ADbrn=C3=BD?= Date: Sun, 15 Mar 2026 20:18:46 +0100 Subject: [PATCH] non important commit --- home/modules/shell/shell.nix | 44 +++++++++++++++++++++++++++++++++++- 1 file changed, 43 insertions(+), 1 deletion(-) diff --git a/home/modules/shell/shell.nix b/home/modules/shell/shell.nix index c603bbe..c981061 100644 --- a/home/modules/shell/shell.nix +++ b/home/modules/shell/shell.nix @@ -48,8 +48,50 @@ programs.starship = { enable = true; enableNushellIntegration = true; - enableTransience = true; + settings = { + format = "\${custom.shell_nix}\${custom.shell_normal} $directory\n$character\n"; + + # Prompt character — nix-shell pink on error doubles as a hint, + # but full conditional colouring isn't possible in the character module. + character = { + success_symbol = "[~>](#92D4FE)"; + error_symbol = "[~>](#D81E5B)"; + }; + + # Transient prompt (static colour — Starship can't conditionally + # change it based on env vars without a full custom module) + transient_prompt = { + format = "[~> ](#92D4FE)"; + }; + + directory = { + # Leading icon + path + powerline closing arrow + format = "[ $path ](bg:#303C68 fg:white)[](fg:#303C68)"; + truncation_length = 1; + truncate_to_repo = false; + }; + + custom = { + # Shown only inside a nix-shell + shell_nix = { + description = "Nix shell indicator"; + command = "echo"; + when = ''test -n "$IN_NIX_SHELL"''; + format = "[ nix-shell ](bg:#D81E5B fg:white)[](fg:#D81E5B)"; + shell = ["bash" "--noprofile" "--norc"]; + }; + + # Shown when NOT in a nix-shell + shell_normal = { + description = "Current shell indicator"; + command = "echo"; + when = ''test -z "$IN_NIX_SHELL"''; + format = "[ nu ](bg:#92D4FE fg:black)[](fg:#92D4FE)"; + shell = ["bash" "--noprofile" "--norc"]; + }; + }; + }; }; gtk.enable = true;