100 lines
2.6 KiB
Nix
100 lines
2.6 KiB
Nix
{ config, lib, ... }:
|
|
let
|
|
usernameColor = "#${config.lib.stylix.colors.base07}";
|
|
directoryColor = "#${config.lib.stylix.colors.base06}";
|
|
statusolor = "#${config.lib.stylix.colors.base05}";
|
|
errorColor = "#${config.lib.stylix.colors.base04}";
|
|
fgColor = "#${config.lib.stylix.colors.base02}";
|
|
blackColor = "#${config.lib.stylix.colors.base00}";
|
|
whiteColor = "#${config.lib.stylix.colors.base07}";
|
|
in
|
|
{
|
|
programs.starship = {
|
|
enable = true;
|
|
enableBashIntegration = true;
|
|
settings = {
|
|
format = lib.concatStrings [
|
|
"[](${usernameColor})"
|
|
"$username"
|
|
"$hostname"
|
|
"[](bg:${directoryColor} fg:${usernameColor})"
|
|
"$directory"
|
|
"[](fg:${directoryColor} bg:${statusolor})"
|
|
"$git_branch"
|
|
"$git_status"
|
|
"$rust"
|
|
"$docker_context"
|
|
"$nix_shell"
|
|
"[](fg:${statusolor} bg:${errorColor})"
|
|
"$status"
|
|
"[ ](fg:${errorColor})"
|
|
];
|
|
|
|
username = {
|
|
show_always = true;
|
|
style_user = "fg:${whiteColor} bg:${usernameColor}";
|
|
style_root = "fg:${whiteColor} bg:${usernameColor}";
|
|
format = "[$user]($style)";
|
|
disabled = false;
|
|
};
|
|
|
|
hostname = {
|
|
ssh_only = true;
|
|
style = "fg:${fgColor} bg:${usernameColor}";
|
|
format = "[@$hostname]($style)";
|
|
disabled = false;
|
|
};
|
|
|
|
os = {
|
|
style = "bg:${usernameColor}";
|
|
disabled = true;
|
|
};
|
|
|
|
nix_shell = {
|
|
disabled = false;
|
|
heuristic = true;
|
|
symbol = " ";
|
|
format = "[$symbol]($style)";
|
|
style = "fg:${fgColor} bg:${statusolor}";
|
|
};
|
|
|
|
directory = {
|
|
style = "fg:${fgColor} bg:${directoryColor}";
|
|
format = "[ $path ]($style)";
|
|
truncation_length = 3;
|
|
truncation_symbol = "…/";
|
|
substitutions = {
|
|
Documents = " ";
|
|
Downloads = " ";
|
|
Music = " ";
|
|
Pictures = " ";
|
|
};
|
|
};
|
|
|
|
git_branch = {
|
|
symbol = "";
|
|
style = "fg:${fgColor} bg:${statusolor}";
|
|
format = "[ $symbol $branch ]($style)";
|
|
};
|
|
|
|
git_status = {
|
|
style = "fg:${fgColor} bg:${statusolor}";
|
|
format = "[$all_status$ahead_behind ]($style)";
|
|
};
|
|
|
|
status = {
|
|
style = "fg:${fgColor} bg:${errorColor}";
|
|
format = "[$status ]($style)";
|
|
disabled = false;
|
|
};
|
|
|
|
time = {
|
|
disabled = false;
|
|
time_format = "%R"; # Hour:Minute Format
|
|
style = "fg:${fgColor} bg:${blackColor}";
|
|
format = "[ $time]($style)";
|
|
};
|
|
};
|
|
};
|
|
}
|
|
|