diff options
| author | Kj Tsanaktsidis <kjtsanaktsidis@groq.com> | 2025-09-12 18:20:13 +1000 |
|---|---|---|
| committer | Kj Tsanaktsidis <kjtsanaktsidis@groq.com> | 2025-09-12 18:20:13 +1000 |
| commit | d318aec82f9c0eaa9fe744b4a17b0ebff7a5f5ab (patch) | |
| tree | 01dbab8679117dc7a9b9cbc3925f4eeb60341096 | |
| parent | fe73ac908fb09f3ddacbad5582e2dabac5f4ea25 (diff) | |
Something that looks like a zsh config
| -rw-r--r-- | kj-laptop01/home.nix | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/kj-laptop01/home.nix b/kj-laptop01/home.nix index e21b0ba..0ece086 100644 --- a/kj-laptop01/home.nix +++ b/kj-laptop01/home.nix @@ -25,4 +25,71 @@ home.file.".ssh/id_ed25519.pub" = { text = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMtGcEXu5S/0zsF6Suxc65DmGFGt1JWRnqadoVhErOed kjtsanaktsidis@KJMacbookGroq.local"; }; + + # Zsh configuration + programs.zsh = { + enable = true; + history = { + size = 1000000; + save = 1000000; + append = true; + extended = true; + ignoreSpace = false; + ignoreDups = false; + }; + + initContent = '' + # Initialize completion system + autoload -Uz compinit + compinit + + # Initialize prompt system + autoload -Uz promptinit + promptinit + + # Set options + setopt extendedglob nomatch notify + + # Define gentoo prompt theme + prompt_gentoo_help () { + cat <<'EOF' + This prompt is color-scheme-able. You can invoke it thus: + + prompt gentoo [<promptcolor> [<usercolor> [<rootcolor>]]] + + EOF + } + + prompt_gentoo_setup () { + local prompt_gentoo_prompt=''${1:-'blue'} + local prompt_gentoo_user=''${2:-'green'} + local prompt_gentoo_root=''${3:-'red'} + + if [ "$USER" = 'root' ] + then + local base_prompt="%B%F{$prompt_gentoo_root}%m%k " + else + local base_prompt="%B%F{$prompt_gentoo_user}%n@%m%k " + fi + local post_prompt="%b%f%k" + + local path_prompt="%B%F{$prompt_gentoo_prompt}%1~" + typeset -g PS1="$base_prompt$path_prompt %# $post_prompt" + typeset -g PS2="$base_prompt$path_prompt %_> $post_prompt" + typeset -g PS3="$base_prompt$path_prompt ?# $post_prompt" + } + + # Register the prompt with promptinit + prompt_themes+=( gentoo ) + + # Use the gentoo prompt + prompt gentoo + ''; + }; + + # FZF with standard keybindings + programs.fzf = { + enable = true; + enableZshIntegration = true; + }; } |
