{ description = "Home Manager configuration of acicchetti"; inputs = { # Specify the source of Home Manager and Nixpkgs. nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; devenv = { url = "github:cachix/devenv/latest"; }; nix-index-database = { url = "github:Mic92/nix-index-database"; inputs.nixpkgs.follows = "nixpkgs"; }; nixneovim = { url = "github:nixneovim/nixneovim"; }; }; outputs = { self, nixpkgs, home-manager, devenv, nix-index-database, nixneovim, ... }: let inherit (nixpkgs.lib) optionalAttrs singleton optionals; supportedSystems = ["aarch64-darwin" "x86_64-linux"]; forAllSystems = nixpkgs.lib.genAttrs supportedSystems; pkgs = forAllSystems ( system: import nixpkgs { inherit system; # overlays = overlays; config = {allowUnfree = true;}; overlays = [nixneovim.overlays.default]; } ); homeManagerConfigs = forAllSystems ( system: { pkgs = pkgs."${system}"; modules = [ { imports = [nixneovim.nixosModules.default]; home.packages = [devenv.packages."${system}".devenv]; } nix-index-database.hmModules.nix-index ./home.nix ]; extraSpecialArgs = { system = system; }; } ); in { # formatter."${system}" = pkgs.alejandra; homeConfigurations.aarch64-darwin-acicchetti = home-manager.lib.homeManagerConfiguration homeManagerConfigs."aarch64-darwin"; homeConfigurations.x86_64-linux-acicchetti = home-manager.lib.homeManagerConfiguration homeManagerConfigs."x86_64-linux"; defaultPackage.aarch64-darwin = self.homeConfigurations.aarch64-darwin-acicchetti.activationPackage; defaultPackage.x86_64-linux = self.homeConfigurations.x86_64-linux-acicchetti.activationPackage; }; }