{ pkgs, config, self, ... }: { system.configurationRevision = self.rev or self.dirtyRev or null; environment.systemPackages = with pkgs; [ home-manager mkalias ]; homebrew = { enable = true; casks = [ "ghostty" ]; brews = [ "mas" ]; masApps = { }; onActivation.cleanup = "zap"; onActivation.autoUpdate = true; onActivation.upgrade = true; }; system.defaults = { dock.autohide = true; finder.FXPreferredViewStyle = "clmv"; loginwindow.GuestEnabled = false; NSGlobalDomain.AppleICUForce24HourTime = true; NSGlobalDomain.AppleInterfaceStyle = "Dark"; NSGlobalDomain.KeyRepeat = 2; }; system.activationScripts.applications.text = let env = pkgs.buildEnv { name = "system-applications"; paths = config.environment.systemPackages; pathsToLink = "/Applications"; }; in pkgs.lib.mkForce '' # Set up applications echo "setting up /Applications..." >&2 rm -rf /Applications/Nix\ Apps mkdir -p /Applications/Nix\ Apps find ${env}/Applications -maxdepth 1 -type l -exec readlink '{}' + | while read -r src; do app_name=$(basename "$src") echo "copying $src" >&2 ${pkgs.mkalias}/bin/mkalias "$src" "/Applications/Nix Apps/$app_name" done ''; }