nix/common/dotfiles/bash.nix

65 lines
No EOL
1.5 KiB
Nix

{ config, pkgs, ... }: {
# Configure BASH exports
# https://nix-community.github.io/home-manager/options.html
# https://github.com/justjanne/powerline-go
programs.powerline-go.enable = true;
programs = {
bash = {
enable = true;
enableCompletion = true;
bashrcExtra = ''
sops-edit() {
nix-shell -p sops --run "sops $1"
}
nix-clean-all() {
nix-channel --update
nix-env -u --always
nix-collect-garbage -d
nix-collect-garbage -d
}
'';
shellAliases = {
# Disable askpass for cli auth:
SSH_ASKPASS = "";
# docker
d = "docker";
dc = "docker-compose";
de = "docker exec -it";
# bash / system
cp = "rsync -avr";
ll = "ls -lah";
rm = "rm -i";
# git
g = "git";
ga = "git add -A";
gb = "git branch";
gc = "git commit";
gca = "git commit -a";
gco = "git checkout";
gd = "git diff";
gp = "git pull --prune";
gpu = "git push origin HEAD";
gs = "git status -sb";
# time / date
tdate = "date +%Y.%m.%d..%H.%M";
ttime = "date +%H.%M";
ddate = "date +%Y.%m.%d";
dday = "date +%A";
# nixos-rebuild
nr = "nixos-rebuild";
nrs = "nixos-rebuild switch";
nrt = "nixos-rebuild test";
nrb = "nixos-rebuild build";
};
};
};
}