{ adminUser, pkgs, self, ... }: { imports = [ "${self}/nix/profiles/home-manager.nix" "${self}/nix/profiles/darwin.nix" ]; nix = { extraOptions = '' tarball-ttl = 900 ''; gc = { automatic = true; interval = { Weekday = 0; Hour = 0; Minute = 0; }; options = "--delete-older-than 30d"; }; package = pkgs.nixVersions.stable; settings = { substituters = [ "https://cache.nixos.org" "https://nix-community.cachix.org" ]; trusted-public-keys = [ "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" ]; trusted-users = [ "@admin" "fcuny" ]; experimental-features = [ "nix-command" "flakes" ]; }; }; system.primaryUser = adminUser.name; # https://github.com/nix-darwin/nix-darwin/issues/1339 ids.gids.nixbld = 30000; networking.hostName = "mba-m2"; fonts.packages = with pkgs; [ source-code-pro ]; # The user should already exist, but we need to set this up so Nix knows # what our home directory is (https://github.com/LnL7/nix-darwin/issues/423). users = { users.${adminUser.name} = { home = "/Users/${adminUser.name}"; shell = pkgs.fish; }; }; environment.shells = [ pkgs.fish ]; programs.fish.enable = true; programs.fish.shellInit = '' # Nix if test -e '/nix/var/nix/profiles/default/etc/profile.d/nix-daemon.fish' source '/nix/var/nix/profiles/default/etc/profile.d/nix-daemon.fish' end # End Nix ''; programs.ssh.knownHosts = { "github.com".publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOMqqnkVzrm0SdG6UOoqKLsabgH5C9okWi0dh2l9GKJl"; }; home-manager.users.${adminUser.name} = { home.stateVersion = "23.05"; home.username = "${adminUser.name}"; home.homeDirectory = "/Users/${adminUser.name}"; home.packages = with pkgs; [ grpcurl ]; imports = [ ../../../users/profiles/mac.nix ../../../users/profiles/work.nix ]; inherit (adminUser) userinfo; programs.git.userEmail = "fcuny@roblox.com"; }; }