nix-config/modules/basic-tools/default.nix

103 lines
1.8 KiB
Nix

{ pkgs, config, ... }:
{
imports = [
./fzf.nix
./multiplexers.nix
./nix.nix
];
environment.systemPackages = with pkgs; [
bat
fd
file
git
gnupg
glow
htop
irssi
killall
neovim
ripgrep
tealdeer
traceroute
tcpdump
tree
(aspellWithDicts (ps: with ps; [ en en-science en-computers ru nl ]))
exfatprogs
nmap
bind
nnn
lf
man-pages
unzip
usbutils
pciutils
ouch
cryptsetup
sshfs
whois
];
environment.variables =
let
editorconf =
if config.services.emacs.defaultEditor then
{ }
else
{
EDITOR = "nvim";
};
in
{
PAGER = "less";
LESS = "-X -R -F";
} // editorconf;
environment.shellAliases = {
ls = "ls --color=auto";
l = "ls -l";
la = "ls -la";
ll = "ls -lah";
lt = "ls --tree";
vim = "nvim";
grep = "grep --color=auto";
e = "$EDITOR";
v = "$EDITOR";
};
users.defaultUserShell = pkgs.zsh;
programs.zsh = {
enable = true;
enableCompletion = true;
syntaxHighlighting.enable = true;
interactiveShellInit = ''
bindkey -e
export HISTFILE="$HOME/.zsh_history"
export HISTSIZE=10000000
export SAVEHIST=10000000
setopt HIST_IGNORE_ALL_DUPS
# allow comments
setopt interactivecomments
'';
promptInit = ''
source ${pkgs.liquidprompt}/share/zsh/plugins/liquidprompt/liquidprompt
'';
};
environment.etc.liquidpromptrc = {
text = ''
LP_ENABLE_SSH_COLORS=1
LP_ENABLE_TITLE=1
LP_ENABLE_SCREEN_TITLE=1
LP_ENABLE_TEMP=0
LP_ENABLE_SVN=0
LP_BATTERY_THRESHOLD=15
LP_SSH_COLORS=1
'';
};
programs.iftop.enable = true;
programs.mosh.enable = true;
}