{ config, pkgs, ... }: { environment.systemPackages = with pkgs; [ git vim file htop ripgrep tree # TODO: use a tree alternative that understands .gitignore wget ]; users.defaultUserShell = pkgs.zsh; programs.zsh = { enable = true; # Disabling compinit in /etc/zshrc so that we can call # compinit with a custom zcompdump location in .zshrc. enableGlobalCompInit = false; }; environment.sessionVariables = let config = "$HOME/config/user"; in { # Set environment variables for software that doesn't # follow the XDG Base Directory specification. ZDOTDIR = "${config}/zsh"; }; }