From bd6fabad67ef5f4afb67fb18634604850a9f706a Mon Sep 17 00:00:00 2001 From: Donovan Glover Date: Sat, 6 Apr 2024 18:44:07 -0400 Subject: [PATCH] feat: Move starship/htop back to home It's actually easier to maintain when programs with non-trivial configs have their own module. --- home/htop.nix | 22 ++++++++++ home/starship.nix | 89 ++++++++++++++++++++++++++++++++++++++ modules/shell.nix | 106 +--------------------------------------------- 3 files changed, 112 insertions(+), 105 deletions(-) create mode 100644 home/htop.nix create mode 100644 home/starship.nix diff --git a/home/htop.nix b/home/htop.nix new file mode 100644 index 00000000..a334455a --- /dev/null +++ b/home/htop.nix @@ -0,0 +1,22 @@ +{ pkgs, ... }: + +let + inherit (pkgs) htop-vim; +in +{ + programs.htop = { + enable = true; + package = htop-vim; + + settings = { + tree_view = true; + hide_userland_threads = true; + highlight_changes = true; + show_cpu_frequency = true; + show_cpu_temperature = true; + highlight_base_name = true; + + show_program_path = false; + }; + }; +} diff --git a/home/starship.nix b/home/starship.nix new file mode 100644 index 00000000..d04e92ea --- /dev/null +++ b/home/starship.nix @@ -0,0 +1,89 @@ +{ + programs.starship = { + enable = true; + + settings = { + add_newline = false; + + directory = { + style = "purple"; + read_only = " ro"; + }; + + git_branch = { + style = "yellow"; + symbol = ""; + }; + + character = { + success_symbol = "[>](red)[>](green)[>](blue)"; + error_symbol = "[>](cyan)[>](purple)[>](yellow)"; + vicmd_symbol = "[<](bold green)"; + }; + + line_break.disabled = true; + + nodejs = { + format = "with [$symbol($version )]($style)"; + symbol = "node "; + version_format = "\${major}"; + disabled = true; + }; + + git_commit.tag_symbol = " tag "; + + git_status = { + ahead = ">"; + behind = "<"; + diverged = "<>"; + renamed = "r"; + deleted = "x"; + }; + + aws.symbol = "aws "; + cobol.symbol = "cobol "; + conda.symbol = "conda "; + crystal.symbol = "cr "; + cmake.symbol = "cmake "; + dart.symbol = "dart "; + deno.symbol = "deno "; + dotnet.symbol = ".NET "; + docker_context.symbol = "docker "; + elixir.symbol = "exs "; + elm.symbol = "elm "; + golang.symbol = "go "; + hg_branch.symbol = "hg "; + java.symbol = "java "; + julia.symbol = "jl "; + kotlin.symbol = "kt "; + memory_usage.symbol = "memory "; + nim.symbol = "nim "; + + nix_shell = { + format = "❄️ "; + symbol = "nix "; + }; + + ocaml.symbol = "ml "; + package.symbol = "pkg "; + perl.symbol = "pl "; + php.symbol = "php "; + purescript.symbol = "purs "; + python.symbol = "python "; + ruby.symbol = "ruby "; + + rust = { + symbol = "rust "; + disabled = true; + }; + + bun = { + symbol = "bun "; + disabled = true; + }; + + scala.symbol = "scala "; + swift.symbol = "swift "; + }; + }; +} diff --git a/modules/shell.nix b/modules/shell.nix index 7ddceefe..3893b102 100644 --- a/modules/shell.nix +++ b/modules/shell.nix @@ -1,7 +1,7 @@ { pkgs, config, lib, ... }: let - inherit (pkgs) fish htop-vim; + inherit (pkgs) fish; inherit (lib) mkEnableOption mkIf mkMerge singleton; inherit (builtins) attrValues; inherit (cfg) postgres; @@ -270,110 +270,6 @@ in neovim.enable = true; direnv.enable = true; - - starship = { - enable = true; - - settings = { - add_newline = false; - - directory = { - style = "purple"; - read_only = " ro"; - }; - - git_branch = { - style = "yellow"; - symbol = ""; - }; - - character = { - success_symbol = "[>](red)[>](green)[>](blue)"; - error_symbol = "[>](cyan)[>](purple)[>](yellow)"; - vicmd_symbol = "[<](bold green)"; - }; - - line_break.disabled = true; - - nodejs = { - format = "with [$symbol($version )]($style)"; - symbol = "node "; - version_format = "\${major}"; - disabled = true; - }; - - git_commit.tag_symbol = " tag "; - - git_status = { - ahead = ">"; - behind = "<"; - diverged = "<>"; - renamed = "r"; - deleted = "x"; - }; - - aws.symbol = "aws "; - cobol.symbol = "cobol "; - conda.symbol = "conda "; - crystal.symbol = "cr "; - cmake.symbol = "cmake "; - dart.symbol = "dart "; - deno.symbol = "deno "; - dotnet.symbol = ".NET "; - docker_context.symbol = "docker "; - elixir.symbol = "exs "; - elm.symbol = "elm "; - golang.symbol = "go "; - hg_branch.symbol = "hg "; - java.symbol = "java "; - julia.symbol = "jl "; - kotlin.symbol = "kt "; - memory_usage.symbol = "memory "; - nim.symbol = "nim "; - - nix_shell = { - format = "❄️ "; - symbol = "nix "; - }; - - ocaml.symbol = "ml "; - package.symbol = "pkg "; - perl.symbol = "pl "; - php.symbol = "php "; - purescript.symbol = "purs "; - python.symbol = "python "; - ruby.symbol = "ruby "; - - rust = { - symbol = "rust "; - disabled = true; - }; - - bun = { - symbol = "bun "; - disabled = true; - }; - - scala.symbol = "scala "; - swift.symbol = "swift "; - }; - }; - - htop = { - enable = true; - package = htop-vim; - - settings = { - tree_view = true; - hide_userland_threads = true; - highlight_changes = true; - show_cpu_frequency = true; - show_cpu_temperature = true; - highlight_base_name = true; - - show_program_path = false; - }; - }; }; }; }