refactor: install core cli tools at system-level

This commit is contained in:
Ryan Yin
2025-10-15 12:38:36 +08:00
parent d06fdb3076
commit 73642f6686
4 changed files with 46 additions and 44 deletions
+8 -31
View File
@@ -1,34 +1,6 @@
{ pkgs, ... }: { pkgs, ... }:
{ {
home.packages = with pkgs; [ home.packages = with pkgs; [
# Misc
cowsay
gnupg
gnumake
# Modern cli tools, replacement of grep/sed/...
# Interactively filter its input using fuzzy searching, not limit to filenames.
fzf
# search for files by name, faster than find
fd
# search for files by its content, replacement of grep
(ripgrep.override { withPCRE2 = true; })
# A fast and polyglot tool for code searching, linting, rewriting at large scale
# supported languages: only some mainstream languages currently(do not support nix/nginx/yaml/toml/...)
ast-grep
sad # CLI search and replace, just like sed, but with diff preview.
yq-go # yaml processor https://github.com/mikefarah/yq
just # a command runner like make, but simpler
hyperfine # command-line benchmarking tool
gping # ping, but with a graph(TUI)
doggo # DNS client for humans
duf # Disk Usage/Free Utility - a better 'df' alternative
du-dust # A more intuitive version of `du` in rust
gdu # disk usage analyzer(replacement of `du`)
# nix related # nix related
# #
# it provides the command `nom` works just like `nix # it provides the command `nom` works just like `nix
@@ -42,10 +14,15 @@
# https://github.com/utdemir/nix-tree # https://github.com/utdemir/nix-tree
nix-tree # A TUI to visualize the dependency graph of a nix derivation nix-tree # A TUI to visualize the dependency graph of a nix derivation
# productivity # misc
cowsay
gnupg
caddy # A webserver with automatic HTTPS via Let's Encrypt(replacement of nginx) caddy # A webserver with automatic HTTPS via Let's Encrypt(replacement of nginx)
croc # File transfer between computers securely and easily # A fast and polyglot tool for code searching, linting, rewriting at large scale
ncdu # analyzer your disk usage Interactively, via TUI(replacement of `du`) # supported languages: only some mainstream languages currently(do not support nix/nginx/yaml/toml/...)
ast-grep
# other core cli tools are installed at system-level
]; ];
# A modern replacement for ls # A modern replacement for ls
@@ -6,14 +6,17 @@
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
# core tools # core tools
tealdeer # a very fast version of tldr nushell # nushell
fastfetch fastfetch
neovim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default. neovim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
just # justfile gnumake # Makefile
nushell # nushell just # a command runner like gnumake, but simpler
git # used by nix flakes git # used by nix flakes
git-lfs # used by huggingface models git-lfs # used by huggingface models
procs
# system monitoring
procs # a moreden ps
btop
# archives # archives
zip zip
@@ -25,21 +28,48 @@
# Text Processing # Text Processing
# Docs: https://github.com/learnbyexample/Command-line-text-processing # Docs: https://github.com/learnbyexample/Command-line-text-processing
gnugrep # GNU grep, provides `grep`/`egrep`/`fgrep` gnugrep # GNU grep, provides `grep`/`egrep`/`fgrep`
gnused # GNU sed, very powerful(mainly for replacing text in files)
gawk # GNU awk, a pattern scanning and processing language gawk # GNU awk, a pattern scanning and processing language
gnutar
gnused # GNU sed, very powerful(mainly for replacing text in files)
sad # CLI search and replace, just like sed, but with diff preview.
jq # A lightweight and flexible command-line JSON processor jq # A lightweight and flexible command-line JSON processor
yq-go # yaml processor https://github.com/mikefarah/yq
# Interactively filter its input using fuzzy searching, not limit to filenames.
fzf
# search for files by name, faster than find
fd
findutils
# search for files by its content, replacement of grep
(ripgrep.override { withPCRE2 = true; })
duf # Disk Usage/Free Utility - a better 'df' alternative
du-dust # A more intuitive version of `du` in rust
gdu # disk usage analyzer(replacement of `du`)
ncdu # analyzer your disk usage Interactively, via TUI(replacement of `du`)
# networking tools # networking tools
mtr # A network diagnostic tool mtr # A network diagnostic tool(traceroute)
iperf3 gping # ping, but with a graph(TUI)
dnsutils # `dig` + `nslookup` dnsutils # `dig` + `nslookup`
ldns # replacement of `dig`, it provide the command `drill` ldns # replacement of `dig`, it provide the command `drill`
doggo # DNS client for humans
wget wget
curl curl
curlie # curl with httpie
httpie
aria2 # A lightweight multi-protocol & multi-source command-line download utility aria2 # A lightweight multi-protocol & multi-source command-line download utility
socat # replacement of openbsd-netcat socat # replacement of openbsd-netcat
nmap # A utility for network discovery and security auditing nmap # A utility for network discovery and security auditing
ipcalc # it is a calculator for the IPv4/v6 addresses ipcalc # it is a calculator for the IPv4/v6 addresses
iperf3 # network performance test
hyperfine # command-line benchmarking tool
tcpdump # network sniffer
# file transfer
rsync
croc # File transfer between computers securely and easily
# security # security
libargon2 libargon2
@@ -47,10 +77,8 @@
# misc # misc
file file
findutils
which which
tree tree
gnutar tealdeer # a very fast version of tldr
rsync
]; ];
} }
-1
View File
@@ -130,7 +130,6 @@ in
"wget" # download tool "wget" # download tool
"curl" # no not install curl via nixpkgs, it's not working well on macOS! "curl" # no not install curl via nixpkgs, it's not working well on macOS!
"aria2" # download tool "aria2" # download tool
"httpie" # http client
"wireguard-tools" # wireguard "wireguard-tools" # wireguard
# Usage: # Usage:
-2
View File
@@ -6,7 +6,6 @@
# system call monitoring # system call monitoring
strace # system call monitoring strace # system call monitoring
ltrace # library call monitoring ltrace # library call monitoring
tcpdump # network sniffer
lsof # list open files lsof # list open files
# ebpf related tools # ebpf related tools
@@ -19,7 +18,6 @@
sysstat sysstat
iotop-c iotop-c
iftop iftop
btop
nmon nmon
sysbench sysbench
systemctl-tui systemctl-tui