{ inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; darwin = { url = "github:lnl7/nix-darwin"; inputs.nixpkgs.follows = "nixpkgs"; }; home-manager = { url = "github:nix-community/home-manager/"; inputs.nixpkgs.follows = "nixpkgs"; }; pi = { url = "github:lukasl-dev/pi.nix"; inputs.nixpkgs.follows = "nixpkgs"; }; sops-nix = { url = "github:Mic92/sops-nix"; inputs.nixpkgs.follows = "nixpkgs"; }; emacsConfig = { url = "path:./flakes/emacs"; inputs.nixpkgs.follows = "nixpkgs"; inputs.home-manager.follows = "home-manager"; }; }; outputs = inputs: let darwin-system = import ./system/darwin.nix { inherit inputs; }; in { darwinConfigurations = { TobBook = darwin-system { system = "aarch64-darwin"; username = "tobi"; email = "tobias.ostner@gmail.com"; hostname = "TobBook"; extraHomeManagerModules = [ inputs.emacsConfig.homeManagerModules.aarch64-darwin inputs.pi.homeManagerModules.default inputs.sops-nix.homeManagerModules.sops ({ lib, pkgs, ... }: { programs.pi.coding-agent.package = lib.lowPrio inputs.pi.packages.${pkgs.stdenv.hostPlatform.system}.coding-agent; }) ]; }; }; }; }