Menno van Leeuwen 9c28dfe6ae
adds packages per hostname
adds unstable nixpkgs for vscode, docker, go and ollama
updates tilingshell layouts
2024-11-05 15:07:37 +01:00

109 lines
2.2 KiB
Nix

{
pkgs,
pkgs-unstable,
hostname,
...
}:
let
hostSpecificPackages =
if hostname == "mennos-gamingpc" then
with pkgs-unstable; [ ollama-rocm ]
else if hostname == "mennos-laptop" then
with pkgs-unstable; [ ollama-cuda ]
else if hostname == "mennos-server" then
with pkgs-unstable; [ ollama-cuda ]
else
with pkgs-unstable; [ ollama ];
in
{
home.packages =
with pkgs;
[
# General packages
git
gnupg
gh
nixfmt-rfc-style
wget
fastfetch
# Package management
pipx
devbox
# Development SDKs/Toolkits
gcc
pkg-config
gnumake
stdenv.cc
rustc
cargo
cargo-edit
cargo-watch
cargo-audit
cargo-expand
cargo-tarpaulin
pyenv
act # GitHub Actions CLI
# File and directory operations
eza # Modern ls
bat # Modern cat
zoxide # Smarter cd command
broot # Interactive directory navigator
du-dust # Modern du
duf # Modern df
zip
unzip
# Search and text processing
ripgrep # Modern grep
sd # Modern sed
choose # Modern cut
jq # JSON processor
yq # YAML processor
xsv # CSV processor
# System monitoring and process management
procs # Modern ps
bottom # Modern top/htop
hyperfine # Benchmarking tool
bandwhich # Network utilization tool
doggo # Modern dig
gping # Ping with graph
htop # Interactive process viewer
# Development utilities
delta # Better git diff
difftastic # Structural diff tool
fzf # Fuzzy finder
tokei # Code statistics
tealdeer # Modern tldr client
lazygit # Terminal UI for git
# Shell and terminal
starship # Cross-shell prompt
blesh # Bash ble.sh
zellij # Modern terminal multiplexer
screen # Terminal multiplexer
# File viewers and processors
hexyl # Modern hexdump
chafa # Terminal image viewer
glow # Markdown renderer
# Editors
neovim
nano
micro
# Lolz
fortune
cowsay
cmatrix
figlet
lolcat
]
++ hostSpecificPackages;
}