aboutsummaryrefslogtreecommitdiffhomepage
path: root/home-manager/home.nix
diff options
context:
space:
mode:
Diffstat (limited to 'home-manager/home.nix')
-rw-r--r--home-manager/home.nix50
1 files changed, 50 insertions, 0 deletions
diff --git a/home-manager/home.nix b/home-manager/home.nix
index 3b69c97..fbd38c5 100644
--- a/home-manager/home.nix
+++ b/home-manager/home.nix
@@ -107,4 +107,54 @@ in
initExtra = builtins.readFile ../.zshrc;
};
+
+ programs.starship = {
+ enable = true;
+
+ settings = {
+ add_newline = true;
+ format = "[$directory$git_branch$git_commit$git_status$git_state](bold fg:75)$fill$cmd_duration$time$line_break$character";
+ continuation_prompt = "[❯](fg:63)[❯](fg:62)[❯](fg:61) ";
+ character = {
+ success_symbol = "[❯](fg:150)[❯](fg:153)[❯](fg:159)";
+ error_symbol = "[❯](fg:172)[❯](fg:173)[❯](fg:174)";
+ };
+ directory = {
+ format = "$path ";
+ use_os_path_sep = false;
+ truncate_to_repo = false;
+ truncation_length = 99;
+ };
+ git_branch = {
+ format = "\\($branch\\)";
+ };
+ git_commit = {
+ format = "($hash$tag)";
+ tag_disabled = false;
+ tag_symbol = " @";
+ };
+ git_status = {
+ format = "$conflicted$modified$untracked$staged$stashed";
+ conflicted = "!";
+ modified = "~";
+ untracked = "?";
+ staged = "*";
+ stashed = " \\[$count\\]";
+ };
+ git_state = {
+ format = " - $state ($progress_current/$progress_total) ";
+ };
+ cmd_duration = {
+ format = "~$duration ";
+ };
+ time = {
+ disabled = false;
+ format = "\\[$time\\] ";
+ time_format = "%T";
+ };
+ fill = {
+ symbol = " ";
+ };
+ };
+ };
}