124 lines
3.4 KiB
Nix
124 lines
3.4 KiB
Nix
|
{ config, lib, pkgs, ... }:
|
||
|
|
||
|
{
|
||
|
environment.systemPackages = with pkgs; lib.mkMerge [
|
||
|
[
|
||
|
# top like tools
|
||
|
bmon # network monitor
|
||
|
gotop # fancy top
|
||
|
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
|
||
|
aria # multithreaded http/ftp/bittorrent download manager
|
||
|
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
|
||
|
ntfs3g # ntfs filesystem driver
|
||
|
rclone # rsync for cloud storage
|
||
|
rename # sed for filenames
|
||
|
rsync # incremental file transfer
|
||
|
tokei # fast cloc
|
||
|
wget # download tool
|
||
|
xdelta # binary diff
|
||
|
|
||
|
# file format tools
|
||
|
imagemagick # image conversion
|
||
|
p7zip # 7z cli
|
||
|
pdftk # pdf multitool
|
||
|
sqlite-interactive # cli for sqlite databses
|
||
|
upx # executable packer
|
||
|
|
||
|
# network tools
|
||
|
dnsutils # dig
|
||
|
gatling # high performance web serve
|
||
|
iperf
|
||
|
iperf2 # bandwidth measurement tool
|
||
|
nmap # port scanner
|
||
|
sshfs # mount remote host
|
||
|
vnstat # client for vnstatd
|
||
|
whois # whois client
|
||
|
zmap # scanner for large address spaces
|
||
|
|
||
|
# system tools
|
||
|
libva-utils # vainfo
|
||
|
lm_sensors # temperature sensors
|
||
|
ncdu # interactive du
|
||
|
pciutils # lspci
|
||
|
reptyr # move process to current terminal
|
||
|
smartmontools # hard drive monitoring
|
||
|
usbutils # lsusb
|
||
|
|
||
|
# 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.withExtensions (es: with es; [ pass-otp ])) # password manager
|
||
|
pwgen
|
||
|
pwgen-secure # password generator
|
||
|
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
|
||
|
|
||
|
# git
|
||
|
gitAndTools.delta # nicer diff
|
||
|
gitAndTools.git-annex
|
||
|
gitAndTools.git-annex-remote-rclone # git for non source files
|
||
|
gitAndTools.pre-commit # pre-commit hook for git
|
||
|
|
||
|
# nix tools
|
||
|
niv # depdendency manager
|
||
|
]
|
||
|
(lib.mkIf config.sbruder.gui [
|
||
|
anki # flashcard SRS
|
||
|
filezilla # ftp client
|
||
|
gparted # gui for parted
|
||
|
qalculate-gtk # flexible calculator
|
||
|
antimicroX # gamepad to keyboard/mouse mapping
|
||
|
wl-clipboard # not really gui, but cli tool to manage wayland clipboard
|
||
|
wxhexeditor # hex editor
|
||
|
xfce.thunar # graphical file manager
|
||
|
])
|
||
|
];
|
||
|
|
||
|
programs = {
|
||
|
adb.enable = true;
|
||
|
bandwhich.enable = true;
|
||
|
iotop.enable = true;
|
||
|
};
|
||
|
}
|