74 lines
1.5 KiB
Nix
74 lines
1.5 KiB
Nix
{ config, lib, pkgs, ... }:
|
|
let
|
|
nathan = config.nathan;
|
|
in
|
|
with lib;
|
|
{
|
|
config = mkMerge [
|
|
(mkIf nathan.programs.utils.core
|
|
{
|
|
environment.systemPackages = with pkgs; [
|
|
# Basic command line utilities
|
|
wget
|
|
tmux
|
|
nano
|
|
unzip
|
|
any-nix-shell
|
|
htop
|
|
# Rust rewrites of common shell utilities
|
|
starship
|
|
exa
|
|
bat
|
|
fd
|
|
sd
|
|
du-dust
|
|
ripgrep
|
|
ripgrep-all
|
|
hyperfine
|
|
bottom
|
|
dogdns
|
|
duf
|
|
# User friendly cut
|
|
choose
|
|
# Man but terse
|
|
tealdeer
|
|
# For nslookup
|
|
dnsutils
|
|
# Mosh for better high-latency ssh
|
|
mosh
|
|
# PV for viewing pipes
|
|
pv
|
|
];
|
|
})
|
|
(mkIf nathan.programs.utils.productivity {
|
|
environment.systemPackages = with pkgs; [
|
|
# Feh image viewer
|
|
feh
|
|
tokei
|
|
# Spell check
|
|
hunspell
|
|
hunspellDicts.en-us
|
|
# CLI Markdown renderer
|
|
glow
|
|
# Command line file manager
|
|
broot
|
|
# Much better curl
|
|
httpie
|
|
# CLI spreadsheets
|
|
visidata
|
|
# Cheatsheet manager
|
|
cheat
|
|
# Ping with a graph
|
|
gping
|
|
# Pandoc for documentation
|
|
pandoc
|
|
];
|
|
})
|
|
(mkIf nathan.programs.utils.binfmt {
|
|
boot.binfmt.emulatedSystems = [
|
|
"aarch64-linux"
|
|
];
|
|
})
|
|
];
|
|
}
|