155 lines
3.9 KiB
Nix
155 lines
3.9 KiB
Nix
{ ... }:
|
||
|
||
{
|
||
home.sessionPath = [
|
||
"$HOME/.npm-global/bin"
|
||
];
|
||
|
||
programs.starship = {
|
||
enable = true;
|
||
enableFishIntegration = true;
|
||
settings = {
|
||
add_newline = true;
|
||
command_timeout = 1000;
|
||
|
||
format = "$directory$git_branch$git_status$nix_shell$nodejs$python$cmd_duration$line_break$character";
|
||
|
||
palette = "luodh";
|
||
palettes.luodh = {
|
||
blue = "#7aa2f7";
|
||
cyan = "#7dcfff";
|
||
green = "#9ece6a";
|
||
orange = "#ff9e64";
|
||
purple = "#bb9af7";
|
||
red = "#f7768e";
|
||
yellow = "#e0af68";
|
||
};
|
||
|
||
character = {
|
||
success_symbol = "[❯](bold green)";
|
||
error_symbol = "[❯](bold red)";
|
||
vimcmd_symbol = "[❮](bold purple)";
|
||
};
|
||
|
||
directory = {
|
||
style = "bold blue";
|
||
truncation_length = 4;
|
||
truncate_to_repo = false;
|
||
read_only = " ro";
|
||
};
|
||
|
||
git_branch = {
|
||
symbol = "git ";
|
||
style = "bold purple";
|
||
format = "[$symbol$branch]($style) ";
|
||
};
|
||
|
||
git_status = {
|
||
style = "bold orange";
|
||
format = "([$all_status$ahead_behind]($style) )";
|
||
};
|
||
|
||
nix_shell = {
|
||
symbol = "nix ";
|
||
style = "bold cyan";
|
||
format = "[$symbol$state( \\($name\\))]($style) ";
|
||
};
|
||
|
||
nodejs = {
|
||
symbol = "node ";
|
||
style = "bold green";
|
||
format = "[$symbol$version]($style) ";
|
||
};
|
||
|
||
python = {
|
||
symbol = "py ";
|
||
style = "bold yellow";
|
||
format = "[\${symbol}\${pyenv_prefix}(\${version} )(\\($virtualenv\\) )]($style)";
|
||
};
|
||
|
||
cmd_duration = {
|
||
min_time = 500;
|
||
style = "bold yellow";
|
||
format = "took [$duration]($style) ";
|
||
};
|
||
};
|
||
};
|
||
|
||
programs.fish = {
|
||
enable = true;
|
||
|
||
shellAbbrs = {
|
||
c = "clear";
|
||
cat = "bat";
|
||
e = "$EDITOR";
|
||
g = "git";
|
||
ga = "git add";
|
||
gc = "git commit";
|
||
gd = "git diff";
|
||
gl = "git log --oneline --decorate --graph";
|
||
gp = "git push";
|
||
gs = "git status --short --branch";
|
||
l = "ls -lah";
|
||
ll = "ls -alF";
|
||
rebuild = "sudo nixos-rebuild switch --flake /etc/nixos#nixos";
|
||
update = "sudo nix flake update --flake /etc/nixos && sudo nixos-rebuild switch --flake /etc/nixos#nixos";
|
||
};
|
||
|
||
interactiveShellInit = ''
|
||
set fish_greeting
|
||
|
||
set -g fish_color_autosuggestion 6c7086
|
||
set -g fish_color_cancel f7768e
|
||
set -g fish_color_command 7aa2f7
|
||
set -g fish_color_comment 565f89
|
||
set -g fish_color_cwd 9ece6a
|
||
set -g fish_color_cwd_root f7768e
|
||
set -g fish_color_end ff9e64
|
||
set -g fish_color_error f7768e
|
||
set -g fish_color_escape bb9af7
|
||
set -g fish_color_history_current --bold
|
||
set -g fish_color_match --background=313244
|
||
set -g fish_color_normal c0caf5
|
||
set -g fish_color_operator 7dcfff
|
||
set -g fish_color_param e0af68
|
||
set -g fish_color_quote 9ece6a
|
||
set -g fish_color_redirection bb9af7
|
||
set -g fish_color_search_match --background=313244
|
||
set -g fish_color_selection --background=313244
|
||
set -g fish_color_status f7768e
|
||
set -g fish_color_valid_path --underline
|
||
set -g fish_pager_color_completion c0caf5
|
||
set -g fish_pager_color_description 6c7086
|
||
set -g fish_pager_color_prefix 7aa2f7 --bold --underline
|
||
set -g fish_pager_color_progress 6c7086
|
||
set -g fish_pager_color_selected_background --background=313244
|
||
|
||
fish_add_path "$HOME/.npm-global/bin"
|
||
'';
|
||
};
|
||
|
||
programs.bat.enable = true;
|
||
programs.fzf = {
|
||
enable = true;
|
||
enableFishIntegration = true;
|
||
colors = {
|
||
bg = "#1a1b26";
|
||
fg = "#c0caf5";
|
||
"bg+" = "#292e42";
|
||
"fg+" = "#c0caf5";
|
||
header = "#7dcfff";
|
||
hl = "#7aa2f7";
|
||
"hl+" = "#7aa2f7";
|
||
info = "#bb9af7";
|
||
marker = "#9ece6a";
|
||
pointer = "#f7768e";
|
||
prompt = "#7dcfff";
|
||
spinner = "#e0af68";
|
||
};
|
||
};
|
||
programs.zoxide = {
|
||
enable = true;
|
||
enableFishIntegration = true;
|
||
};
|
||
}
|