{ description = "Lyns flake"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.05"; sops-nix.url = "github:Mic92/sops-nix"; nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable"; }; outputs = {self, nixpkgs, nixpkgs-unstable, sops-nix }@inputs: let passInputs = ({lib,config,...}:{ options.inputs = lib.mkOption{type = lib.types.attrs;}; config.inputs = inputs; options.pkgsInstances = lib.mkOption{type = lib.types.attrs;}; config.pkgsInstances = { unstable = import inputs.nixpkgs-unstable{system = config.nixpkgs.system;}; }; }); in { nixosConfigurations = { "forgejo" = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; modules = [ ./hosts/forgenite sops-nix.nixosModules.sops passInputs ]; }; "forgejo-ci" = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; modules = [ ./hosts/forgejo-ci sops-nix.nixosModules.sops passInputs ]; }; }; }; }