dotfiles/home/bash/default.nix

78 lines
2.7 KiB
Nix

{ config, inputs, pkgs, ... }:
{
programs.starship = {
enable = true;
enableBashIntegration = true;
enableZshIntegration = false;
settings = {
add_newline = false;
format = "$nix_shell$username$hostname[](bg:#0F7FCF fg:prev_bg)$directory$git_branch$git_status[](fg:prev_bg) ";
right_format = "";
username = {
show_always = true;
style_user = "bg:#121213";
style_root = "bg:#EA2C38";
format = "[ $user]($style)";
disabled = false;
};
hostname = {
disabled = false;
ssh_only = false;
format = "[@$hostname ]($style)";
style = "bg:#121213";
};
directory = {
style = "bg:#0F7FCF fg:#080808";
format = "[ $path ]($style)";
truncation_length = 3;
truncation_symbol = ".../";
};
git_branch = {
symbol = "";
style = "bg:#DFD460 fg:#080808";
format = "[](fg:prev_bg bg:#DFD460)[ $symbol $branch ]($style)";
};
git_status = {
style = "bg:#DFD460 fg:#080808";
format = "[$all_status$ahead_behind ]($style)";
};
nix_shell = {
symbol = "";
style = "bg:#0F7FCF fg:#080808";
format = "[ $symbol ]($style)[](fg:#0F7FCF bg:#121213)";
disabled = false;
};
};
};
programs.bash = {
enable = true;
enableCompletion = true;
historySize = 10000000;
historyFile = "${config.xdg.dataHome}/bash/history";
initExtra = ''
bind 'set show-all-if-ambiguous on'
bind 'set completion-ignore-case on'
bind 'TAB:menu-complete'
bind '"\e[A": history-search-backward'
bind '"\e[B": history-search-forward'
'';
shellAliases = {
ll = "ls -lhat";
ls = "ls --color=auto";
lf = ''cd "$(${pkgs.lf}/bin/lf -print-last-dir)"'';
wget = ''wget --hsts-file = "$XDG_DATA_HOME/wget-hsts"'';
python = "python3";
vim = "nvim";
v = ''nvim -c ':lua require("oil").open()' && cd "$(cat /tmp/oil_dir 2> /dev/null || pwd)"'';
rg = "rg -i --colors 'match:bg:yellow' --colors 'match:fg:black' --colors 'match:style:nobold' --colors 'path:fg:green' --colors 'path:style:bold' --colors 'line:fg:yellow' --colors 'line:style:bold'";
reset = "tput reset";
};
};
}