nixos-config/modules/cli-tools.nix

105 lines
2.6 KiB
Nix

{ pkgs, ... }:
{
environment.systemPackages = with pkgs; [
# top like tools
bmon # network monitor
gotop # fancy top
iotop # top for io
mtr # interactive traceroute
# batch processing/automation
jq # sed for json
parallel # parallel batch processing
yq # sed for yaml
# unix tools on steroids
curlie # better httpie (easier curl)
exa # better ls
fd # better find
ripgrep # better grep
# file tools
dos2unix # convert CRLF (dos) or CR (classic mac) line endings to LF (unix)
fdupes # find duplicate files
file # file type
hexyl # user friendly hex file viewer
hyperfine # cli benchmarking
megatools # cli for mega.nz
minio-client # client for s3 compatible storage systems
mktorrent # bittorrent seed file generator
rclone # rsync for cloud storage
rename # sed for filenames
restic # backup tool
rsync # incremental file transfer
tokei # fast cloc
xdelta # binary diff
# file format tools
p7zip # 7z cli
pdftk # pdf multitool
sqlite # cli for sqlite databses
upx # executable packer
# network tools
dnsutils # dig
gatling # high performance web serve
iperf
iperf2 # bandwidth measurement tool
sshfs # mount remote host
vnstat # client for vnstatd
whois # whois client
# system tools
libva-utils # vainfo
ncdu # interactive du
reptyr # move process to current terminal
smartmontools # hard drive monitoring
# clients
drone-cli # client for drone ci
hcloud # cli for Hetzner Cloud
libnotify # notify-send
# function eye candy
fzf # fuzzy finder
pv # monitor progress in pipe
starship # zsh prompt
# end user programs
apacheHttpd # for htpasswd
libqalculate # flexible calculator for humans
scrcpy # stream/control android phones over adb
taskwarrior # todo list manager
# passwords
pass-wayland #passExtensions.pass-otp # password manager (FIXME: otp collides with main)
pwgen
pwgen-secure # password generator
unstable.xkcdpass # memorable password generator
# misc
toilet # free figlet
python38Packages.ipython # better python repl (useful for one-liners)
# vim
neovim-remote # controlling another neovim process
universal-ctags # ctags
# direnv
direnv # per-directory environment
nix-direnv # per-directory environment for nix
# git
gitAndTools.git-annex
gitAndTools.git-annex-remote-rclone # git for non source files
gitAndTools.pre-commit # pre-commit hook for git
];
programs.adb.enable = true;
environment.pathsToLink = [
"/share/nix-direnv"
];
}