Files
nixos-config/modules/home/zsh.nix

92 lines
2.3 KiB
Nix
Raw Normal View History

2025-09-13 02:38:36 -04:00
{
2025-10-16 15:20:59 -04:00
pkgs,
2025-09-13 02:38:36 -04:00
...
}:
{
programs = {
direnv = {
enable = true;
enableZshIntegration = true;
};
2025-11-16 01:17:54 -05:00
fastfetch = {
enable = true;
};
2025-10-16 15:20:59 -04:00
starship = {
enable = true;
enableZshIntegration = true;
settings = {
add_newline = true;
format = pkgs.lib.concatStrings [
2025-10-28 23:56:03 -04:00
"[](#f38ba8)"
"[ 󱄅 ](fg:#1e1e2e bg:#f38ba8)"
"[](fg:#f38ba8 bg:#fab387)"
2025-10-16 15:20:59 -04:00
"$directory"
2025-10-28 23:56:03 -04:00
"[](fg:#fab387 bg:#f9e2af)"
2025-10-16 15:20:59 -04:00
"$git_branch"
"$git_status"
2025-10-28 23:56:03 -04:00
"[](fg:#f9e2af bg:#a6e3a1)"
2025-10-16 15:20:59 -04:00
"$nodejs"
"$rust"
"$golang"
"$php"
2025-10-28 23:56:03 -04:00
"[](fg:#a6e3a1)"
2025-10-16 15:20:59 -04:00
"$line_break"
"$character"
];
directory = {
2025-10-28 23:56:03 -04:00
style = "fg:#1e1e2e bg:#fab387";
2025-10-16 15:20:59 -04:00
format = "[ $path ]($style)";
truncation_length = 3;
truncation_symbol = "/";
substitutions = {
"Documents" = "󰈙 ";
"Downloads" = " ";
"Music" = " ";
"Pictures" = " ";
};
};
git_branch = {
symbol = "";
2025-10-28 23:56:03 -04:00
style = "bg:#f9e2af";
format = "[[ $symbol $branch ](fg:#1e1e2e bg:#f9e2af)]($style)";
2025-10-16 15:20:59 -04:00
};
git_status = {
2025-10-28 23:56:03 -04:00
style = "bg:#f9e2af";
format = "[[($all_status$ahead_behind )](fg:#1e1e2e bg:#f9e2af)]($style)";
2025-10-16 15:20:59 -04:00
};
nodejs = {
symbol = "";
2025-10-28 23:56:03 -04:00
style = "bg:#a6e3a1";
format = "[[ $symbol ($version) ](fg:#1e1e2e bg:#a6e3a1)]($style)";
2025-10-16 15:20:59 -04:00
};
rust = {
symbol = "";
2025-10-28 23:56:03 -04:00
style = "bg:#a6e3a1";
format = ''[[ $symbol ($version) ](fg:#1e1e2e bg:#a6e3a1)]($style)'';
2025-10-16 15:20:59 -04:00
};
golang = {
symbol = "";
2025-10-28 23:56:03 -04:00
style = "bg:#a6e3a1";
format = "[[ $symbol ($version) ](fg:#1e1e2e bg#a6e3a1)]($style)";
2025-10-16 15:20:59 -04:00
};
php = {
symbol = "";
2025-10-28 23:56:03 -04:00
style = "bg:#a6e3a1";
format = "[[ $symbol ($version) ](fg:#1e1e2e bg:#a6e3a1)]($style)";
2025-10-16 15:20:59 -04:00
};
scan_timeout = 100;
};
};
2025-09-13 02:38:36 -04:00
zsh = {
enable = true;
enableCompletion = true;
autosuggestion.enable = true;
syntaxHighlighting.enable = true;
2025-10-23 23:52:24 -04:00
shellAliases = {
2025-10-28 23:56:03 -04:00
stu = "ssh stu";
2025-11-16 01:17:54 -05:00
ff = "fastfetch";
};
2025-09-13 02:38:36 -04:00
};
};
}