{ config, pkgs, lib, flakeRoot, ... }: { programs.zsh = { enable = true; enableCompletion = true; autocd = true; # Optional but recommended: keep zsh config in one dir (relative to $HOME) dotDir = ".config/zsh"; oh-my-zsh = { enable = true; theme = ""; plugins = [ "git" "sudo" "extract" "colored-man-pages" "command-not-found" "history" "docker" "kubectl" ]; }; autosuggestion.enable = true; syntaxHighlighting.enable = true; }; } { config, pkgs, lib, ... }: { # Ensure the script is executable and available environment.systemPackages = [ pkgs.bash ]; # Add the activation script system.activationScripts.recreateConfig = lib.mkAfter "setupNetworking" '' ${config.flakeRoot.outPath}/assets/scripts/recreate_config.sh ''; }