Install
nix-plist-manager comes as two modules with the same options:
- home-manager manages your settings: appearance, the Dock, the trackpad, keyboard shortcuts, Finder, anything System Settings keeps per user.
- nix-darwin manages the machine’s settings, as root: the firewall, sharing, power, date and time, software updates, the login window.
Each settings page marks every option with the module it belongs to. Most people want both.
Add the flake
Section titled “Add the flake”{ inputs.nix-plist-manager.url = "github:sushydev/nix-plist-manager";}Import the modules
Section titled “Import the modules”darwinConfigurations.my-mac = nix-darwin.lib.darwinSystem { modules = [ nix-plist-manager.darwinModules.default home-manager.darwinModules.home-manager { home-manager.sharedModules = [ nix-plist-manager.homeManagerModules.default ]; } ./configuration.nix ];};darwinConfigurations.my-mac = nix-darwin.lib.darwinSystem { modules = [ nix-plist-manager.darwinModules.default ./configuration.nix ];};homeConfigurations.me = home-manager.lib.homeManagerConfiguration { modules = [ nix-plist-manager.homeManagerModules.default ./home.nix ];};Set something
Section titled “Set something”In your home-manager configuration:
programs.nix-plist-manager = { enable = true; options.applications.systemSettings = { appearance.appearance = "Dark"; desktopAndDock.dock.size = 48; };};And system-wide, in nix-darwin:
programs.nix-plist-manager = { enable = true; options.applications.systemSettings = { network.firewall.firewall = true; general.softwareUpdate.automaticallyInstallMacOSUpdates = true; };};Then rebuild (darwin-rebuild switch, or home-manager switch).
Don’t want to write it all by hand? Start from your Mac.