Manage T450s, X1EG2 and Framework 13 from pinned NixOS inputs while retaining machine-specific storage and hardware configuration. Changes: Shared Configuration: - Extract common, KDE, desktop, development and Steam modules - Share Emacs, VS Code, htop, DevOps tools and Docker across hosts - Remove obsolete apps and global project language runtimes Framework: - Import the 11th-generation Intel hardware profile - Enable Steam and ZFS with tookland/home mounted at /home - Document manual ext4 root and ZFS installation steps - Require installer-generated hardware configuration before installation Validation: - Evaluate both ThinkPads and Framework with test hardware - Check Nix syntax, formatting and whitespace
49 lines
738 B
Nix
49 lines
738 B
Nix
{ pkgs, ... }:
|
|
{
|
|
# Workstation tools only; language runtimes and SDKs belong in projects.
|
|
environment.systemPackages = with pkgs; [
|
|
# Editors and shell utilities.
|
|
emacs
|
|
vscode
|
|
git
|
|
htop
|
|
tmux
|
|
ripgrep
|
|
fd
|
|
duf
|
|
dust
|
|
killall
|
|
lsof
|
|
rsync
|
|
unzip
|
|
zip
|
|
|
|
# Infrastructure, containers, and structured data.
|
|
ansible
|
|
awscli2
|
|
docker-compose
|
|
jq
|
|
yq-go
|
|
|
|
# Networking and security tools.
|
|
openssh
|
|
gnupg
|
|
openssl
|
|
curl
|
|
dig
|
|
mosh
|
|
tcpdump
|
|
wget
|
|
whois
|
|
wireguard-tools
|
|
];
|
|
|
|
virtualisation.docker.enable = true;
|
|
users.users.clw.extraGroups = [ "docker" ];
|
|
|
|
programs.direnv = {
|
|
enable = true;
|
|
nix-direnv.enable = true;
|
|
};
|
|
}
|