{ lib, pkgs, flakeRoot, ... }: let # Path to generated zsh config (optional) generatedZsh = "${flakeRoot}/generated/.config/zsh/.zshrc"; in { ################################# # Install Zsh and Oh My Zsh system-wide ################################# environment.systemPackages = with pkgs; [ zsh oh-my-zsh ]; ################################# # Optional: Deploy a custom .zshrc for all users ################################# # This will create /etc/zsh/.zshrc for all users environment.etc."zshrc".source = generatedZsh; ################################# # Optional: Set default shell for all users ################################# # You can enable this if you want # users.extraUsers..shell = pkgs.zsh; }