{ lib, pkgs, ... }: let inherit (builtins) readFile; in { _class = "clan.service"; manifest = { name = "amarth-services/zitadel"; description = "Zitadel service module"; categories = [ "System" "Identity" "IAM" ]; readme = readFile ./README.md; }; #============================================================================================================== # Controller configuration #============================================================================================================== roles.controller = { interface = { options = {}; }; perInstance = instanceArgs: { nixosModule = lib.modules.importApply ./roles/controller.nix (instanceArgs // { inherit pkgs; }); }; }; #============================================================================================================== # Peer configuration #============================================================================================================== roles.peer = { interface = { options = {}; }; perInstance = instanceArgs: { nixosModule = lib.modules.importApply ./roles/peer.nix (instanceArgs // { inherit pkgs; }); }; }; }