164 lines
7.2 KiB
Nix
Executable File
164 lines
7.2 KiB
Nix
Executable File
{ pkgs, lib, user, rice, ... }:
|
|
lib.mkIf (user != "tv")
|
|
{
|
|
home.packages = [
|
|
pkgs.starship
|
|
];
|
|
|
|
programs.starship = {
|
|
enable = true;
|
|
# enableBashIntegration = true;
|
|
enableFishIntegration = true;
|
|
settings = with rice.color; {
|
|
add_newline = false;
|
|
format = lib.strings.concatMapStrings (x: "$" + x) [
|
|
"jobs"
|
|
"battery"
|
|
"username"
|
|
"hostname"
|
|
# "localip"
|
|
"shlvl"
|
|
# "singularity"
|
|
# "kubernetes"
|
|
"directory"
|
|
# "vcsh"
|
|
"git_branch"
|
|
"git_commit"
|
|
"git_state"
|
|
"git_metrics"
|
|
"git_status"
|
|
# "hg_branch"
|
|
"docker_context"
|
|
# "package"
|
|
"c"
|
|
"cmake"
|
|
# "cobol"
|
|
# "daml"
|
|
# "dart"
|
|
# "deno"
|
|
# "dotnet"
|
|
"elixir"
|
|
# "elm"
|
|
# "erlang"
|
|
"golang"
|
|
"haskell"
|
|
# "helm"
|
|
# "java"
|
|
# "julia"
|
|
# "kotlin"
|
|
"lua"
|
|
"nim"
|
|
"nodejs"
|
|
# "ocaml"
|
|
# "perl"
|
|
"php"
|
|
# "pulumi"
|
|
# "purescript"
|
|
"python"
|
|
# "raku"
|
|
# "rlang"
|
|
# "red"
|
|
# "ruby"
|
|
# "rust"
|
|
# "scala"
|
|
# "swift"
|
|
# "terraform"
|
|
# "vlang"
|
|
# "vagrant"
|
|
"zig"
|
|
# "buf"
|
|
"nix_shell"
|
|
"conda"
|
|
# "meson"
|
|
# "spack"
|
|
# "memory_usage"
|
|
# "aws"
|
|
# "gcloud"
|
|
# "openstack"
|
|
# "azure"
|
|
"env_var"
|
|
# "crystal"
|
|
"custom"
|
|
"sudo"
|
|
"cmd_duration"
|
|
# "time"
|
|
"status"
|
|
"container"
|
|
"shell"
|
|
"character"
|
|
];
|
|
aws.format = "[\\[$symbol($profile)(\\($region\\))(\\[$duration\\])\\]](fg:${foreground})";
|
|
battery.format = "[\\[$symbol$percentage\\]](fg:${foreground})";
|
|
bun.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
c.format = "[\\[$symbol($version(-$name))\\]](fg:${foreground})";
|
|
character = {
|
|
format = "$symbol ";
|
|
success_symbol = "[\\[\\]](${foreground})";
|
|
error_symbol = "[\\[\\]](${negative.base})";
|
|
vimcmd_replace_one_symbol = "[\\[1\\]](${special.base})";
|
|
vimcmd_replace_symbol = "[\\[R\\]](${special.base})";
|
|
vimcmd_symbol = "[\\[\\]](${special.base})";
|
|
vimcmd_visual_symbol = "[\\[V\\]](${special.base})";
|
|
};
|
|
cmake.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
cmd_duration.format = "[\\[$symbol$duration\\]](fg:${accent.bright})";
|
|
cobol.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
conda.format = "[\\[$symbol$environment\\]](fg:${foreground})";
|
|
crystal.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
daml.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
dart.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
deno.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
directory.format = "[\\[](fg:${accent.base})[$lock_symbol](${negative.base})[$path\\]](fg:${accent.base})";
|
|
docker_context.format = "[\\[$symbol($context)\\]](fg:${foreground})";
|
|
dotnet.format = "[\\[$symbol($version)(🎯 $tfm)\\]](fg:${foreground})";
|
|
elixir.format = "[\\[$symbol($version \\(OTP $otp_version\\))\\]](fg:${foreground})";
|
|
elm.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
erlang.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
gcloud.format = "[\\[$symbol$account(@$domain)(\\($region\\))\\]](fg:${foreground})";
|
|
git_branch.format = "[\\[$symbol$branch](fg:${secondary.base})";
|
|
git_status.format = "[:](fg:${secondary.base})[$all_status$ahead_behind](fg:${tertiary.base})[\\]](fg:${secondary.base})";
|
|
golang.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
haskell.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
helm.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
hg_branch.format = "[\\[$symbol$branch\\]](fg:${foreground})";
|
|
hostname.format = "[\\[ $hostname\\]](fg:${foreground})"; # ssh only by default
|
|
java.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
jobs.format = "[\\[$symbol $number\\]](fg:${foreground})";
|
|
julia.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
kotlin.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
kubernetes.format = "[\\[$symbol$context( \\($namespace\\))\\]](fg:${foreground})";
|
|
lua.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
memory_usage.format = "[\\[$symbol[$ram( | $swap)\\]](fg:${foreground})";
|
|
meson.format = "[\\[$symbol$project\\]](fg:${foreground})";
|
|
nim.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
nix_shell.format = "[\\[ $state\\($name\\)\\]](fg:${foreground})";
|
|
nodejs.format = "[\\[$symbol$version\\]](fg:${yellow.bright})";
|
|
ocaml.format = "[\\[$symbol($version)(\\($switch_indicator$switch_name\\))\\]](fg:${foreground})";
|
|
openstack.format = "[\\[$symbol$cloud(\\($project\\))\\]](fg:${foreground})";
|
|
package.format = "[\\[$symbol$version\\]](fg:${foreground})";
|
|
perl.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
php.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
pulumi.format = "[\\[$symbol$stack\\]](fg:${foreground})";
|
|
purescript.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
python.format = "[\\[ ](${blue.base})[$pyenv_prefix$version$virtualenv](${yellow.base})[\\]](fg:${blue.base})";
|
|
raku.format = "[\\[$symbol($version-$vm_version)\\]](fg:${foreground})";
|
|
red.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
ruby.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
rust.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
scala.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
shlvl.format = "[\\[$symbol$shlvl\\]](fg:${foreground})";
|
|
singularity.format = "[\\[$symbol\\[$env\\]\\]](fg:${foreground})";
|
|
spack.format = "[\\[$symbol$environment\\]](fg:${foreground})";
|
|
sudo.format = "[\\[$symbol]\\]";
|
|
swift.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
terraform.format = "[\\[$symbol$workspace\\]](fg:${foreground})";
|
|
time.format = "[\\[$time\\]](fg:${foreground})";
|
|
username.format = "[\\[$user\\]](fg:${foreground})";
|
|
vagrant.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
vcsh.format = "[\\[vcsh [$symbol$repo\\]](fg:${foreground})";
|
|
vlang.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
zig.format = "[\\[$symbol($version)\\]](fg:${foreground})";
|
|
};
|
|
};
|
|
}
|