helm/users/profiles/cli/default.nix
Anish L 285e319681 refactor core into cli so it can be used from hm as well
this gives me portable shellAliases and direnv
2022-05-22 21:10:29 +10:00

131 lines
2 KiB
Nix

{ pkgs, config, ... }:
{
home.packages = with pkgs; [
binutils
coreutils
dnsutils
dosfstools
#git
bottom
gptfdisk
starship
iputils
jq
manix
moreutils
nix-index
cached-nix-shell
nmap
ripgrep
skim
tealdeer
usbutils
utillinux
whois
iftop
wget
curl
exa
bat
fd
trash-cli
nix-index
ag
tcpdump
mtr
file
lsof
atool
inotify-tools
strace
zip
unzip
rsync
tmux
pwgen
glow
pinentry_gnome
pass
less
gdb
xxd
kitty
taskwarrior
gnupg
syncthing
dijo
#kdeconnect
#ssb-patchwork
libreoffice
fontconfig
pandoc
];
programs.starship = {
enable = true;
enableZshIntegration = true;
};
programs.zsh = {
enable = true;
# interactiveShellInit = ''
# flakify() {
# if [ ! -e flake.nix ]; then
# nix flake new -t github:nix-community/nix-direnv .
# elif [ ! -e .envrc ]; then
# echo "use flake" > .envrc
# direnv allow
# fi
# vim flake.nix
# }
# '';
sessionVariables = {
EDITOR = "nvim";
};
enableCompletion = true;
};
programs.direnv = {
enable = true;
enableZshIntegration = true;
};
home.shellAliases = {
# quick cd
".." = "cd ..";
"..." = "cd ../..";
"...." = "cd ../../..";
"....." = "cd ../../../..";
# modern cli tools
ls = "exa";
l = "ls";
tree = "ls --tree";
cat = "bat";
unzip = "aunpack";
copy = "xclip -selection clipboard";
paste = "xclip -selection clipboard -o";
# task warrior
t = "task";
ta = "task add";
tm = "task modify";
te = "task edit";
ts = "task sync";
scrot = "scrot ~/screenshots/%b%d::%H%M%S.png";
# git
g = "git";
# grep
grep = "rg";
gi = "grep -i";
# internet ip
myip = "dig +short myip.opendns.com @208.67.222.222 2>&1";
};
}