From 26721c2962c2874a1761d95b8add49f0389392a1 Mon Sep 17 00:00:00 2001 From: djairoh Date: Fri, 2 Oct 2026 04:07:52 +0200 Subject: [PATCH] add: tealdeer + starship home mgmr --- modules/apps/default.nix | 5 +- modules/apps/starship.nix | 246 ++++++++++++++++++++++++++++++++++++++ modules/apps/tealdeer.nix | 8 ++ 3 files changed, 258 insertions(+), 1 deletion(-) create mode 100644 modules/apps/starship.nix create mode 100644 modules/apps/tealdeer.nix diff --git a/modules/apps/default.nix b/modules/apps/default.nix index 35a3b35..97350ff 100644 --- a/modules/apps/default.nix +++ b/modules/apps/default.nix @@ -5,6 +5,8 @@ ./feh.nix ./freetube.nix ./mpv.nix + ./starship.nix + ./tealdeer.nix ]; services.flatpak = { enable = true; @@ -24,6 +26,7 @@ # productivity libreoffice + zathura # media feishin @@ -35,6 +38,7 @@ bat fastfetch fzf + starship ]; home-manager.users.djai.xdg.desktopEntries = { @@ -76,7 +80,6 @@ # productivity w3m - zathura # media exiftool diff --git a/modules/apps/starship.nix b/modules/apps/starship.nix new file mode 100644 index 0000000..fec81a5 --- /dev/null +++ b/modules/apps/starship.nix @@ -0,0 +1,246 @@ +{ lib, ... }: + +{ +# + home-manager.users.djai.programs.starship = { + enable = true; + settings = { + add_newline = false; + command_timeout = 10; + format = lib.concatStrings [ + "$username" + "$hostname" + "$localip" + "$shlvl" + "$singularity" + "$kubernetes" + "$sudo" + "$directory" + "$vcsh" + "$fossil_branch" + "$git_branch" + "$git_commit" + "$git_state" + "$git_metrics" + "$git_status" + "$hg_branch" + "$pijul_channel" + "$docker_context" + "$package" + "$c" + "$cmake" + "$cobol" + "$daml" + "$dart" + "$deno" + "$dotnet" + "$elixir" + "$elm" + "$erlang" + "$fennel" + "$golang" + "$guix_shell" + "$haskell" + "$haxe" + "$helm" + "$java" + "$julia" + "$kotlin" + "$gradle" + "$lua" + "$nim" + "$nodejs" + "$ocaml" + "$opa" + "$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" + "$cmd_duration" + "$line_break" + "$jobs" + "$battery" + "$time" + "$status" + "$os" + "$container" + "$shell" + "$character" + ]; + + battery = { + full_symbol = "󰁹 "; + charging_symbol = "󰂄 "; + discharging_symbol = "󰚌 "; + format = "[$symbol$percentage]($style) "; + disabled = false; + display = [ + { threshold = 10; style = "red bold";} + { threshold = 30; style = "yellow";} + { threshold = 50; style = "green";} + ]; + }; + + c = { + format = "via [$symbol]($style)"; + symbol = " "; + }; + + character = { + success_symbol = " [❯](bold green)"; + error_symbol = " [❯](bold #ff0000)"; + vimcmd_symbol = " [❮](bold green)"; + vimcmd_replace_one_symbol = " [❮](bold purple)"; + vimcmd_replace_symbol = " [❮](bold purple)"; + vimcmd_visual_symbol = " [❮](bold yellow)"; + }; + + cmd_duration = { + min_time = 500; + show_milliseconds = true; + format = "took [$duration]($style)"; + }; + + directory = { + truncation_length = 5; + truncate_to_repo = false; + read_only = "() "; + read_only_style = "#ff0000 bold"; + style = "bold cyan"; + format = "in [$path]($style) [$read_only]($read_only_style)"; + truncation_symbol = "../"; + home_symbol = "~"; + substitutions = { + "/Music" = "/"; + "Documents" = ""; + "Downloads" = "󰉍"; + "Pictures" = ""; + "Videos" = ""; + }; + }; + + git_status = { + format = "[($all_status$ahead_behind)]($style) "; + }; + + haskell = { + format = "via [$symbol]($style)"; + }; + + hostname = { + format = "[$ssh_symbol$hostname]($style) "; + }; + + java = { + symbol = " "; + format = "via [$symbol]($style)"; + style = "#ff4646"; + }; + + jobs = { + symbol = " "; + }; + + line_break = { + disabled = false; + }; + + memory_usage = { + threshold = 50; + disabled = false; + format = "using $symbol [$ram \\($ram_pct\\)]($style) "; + symbol = "󰍛"; + }; + + nodejs = { + symbol ="󰎙 "; + style = "bold green"; + format = "via [$symbol]($style)"; + }; + + os = { + disabled = false; + style = "bold red"; + format = "on [$symbol](blue bold) [$name]($style)"; + symbols = { + Arch = ""; + Debian = ""; + EndeavourOS = ""; + Linux = ""; + Manjaro = ""; + NixOS = ""; + Pop = ""; + Raspbian = ""; + Ubuntu = ""; + Unknown = ""; + Windows = "󰇷"; + }; + }; + + package = { + disabled = true ; + }; + + python = { + symbol = " "; + style = "bold green"; + format = "via [$symbol( )(\\($virtualenv\\) )]($style)"; + }; + + rlang = { + symbol = "ﳒ "; + style = "blue bold"; + format = "via [$symbol]($style)"; + }; + + rust = { + symbol = " "; + style = "bold red"; + format = "via [$symbol]($style)"; + }; + + shell = { + disabled = true; + bash_indicator = ""; + fish_indicator = "󰈺"; + }; + + sudo = { + symbol = ""; + disabled = false; + format = "\\([root]($style)\\) "; + style = "#ff0000"; + }; + + username = { + show_always = true; + format = "[$user]($style) "; + }; + }; + }; +} diff --git a/modules/apps/tealdeer.nix b/modules/apps/tealdeer.nix new file mode 100644 index 0000000..547cd2f --- /dev/null +++ b/modules/apps/tealdeer.nix @@ -0,0 +1,8 @@ +{ ... }: + +{ + home-manager.users.djai.programs.tealdeer = { + enable = true; + settings.updates.auto_update = true; + }; +}