{ description = "A very basic flake"; inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-25.05"; authentik = { url = "github:MarcelCoding/authentik-nix"; }; mailserver = { url = "git+https://gitlab.com/simple-nixos-mailserver/nixos-mailserver?ref=nixos-25.05"; inputs = { nixpkgs.follows = "nixpkgs"; nixpkgs-25_05.follows = "nixpkgs"; }; }; sops = { url = "github:Mic92/sops-nix"; inputs.nixpkgs.follows = "nixpkgs"; }; disko = { url = "github:nix-community/disko"; inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = { self, nixpkgs, authentik, mailserver, disko, sops, }: { formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.nixfmt-rfc-style; devShells.x86_64-linux = { default = nixpkgs.legacyPackages.x86_64-linux.mkShell { packages = with nixpkgs.legacyPackages.x86_64-linux; [ ssh-to-age sops ]; }; }; nixosConfigurations = { authentik = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; modules = [ ./configuration.nix ./hetzner-disk.nix disko.nixosModules.disko authentik.nixosModules.default mailserver.nixosModules.mailserver sops.nixosModules.sops ]; }; }; }; }