{ inputs, lib, self, ... }: let rootPath = ./..; inherit (self) outputs; inherit (inputs) nixpkgs; defaultNixosModule = import (rootPath + "/nixos/modules"); in { flake = { nixosModules.default = defaultNixosModule; nixosConfigurations = let makeNixosConfiguration = hostName: nixpkgs.lib.nixosSystem { modules = [defaultNixosModule] ++ [ (rootPath + "/nixos/configurations/${hostName}") ]; specialArgs = { inherit inputs outputs rootPath; }; }; in [ "Tytonidae" "Cape" "Akun" ] |> ( with lib; flip genAttrs makeNixosConfiguration ); }; }