{ pkgs, ... }@args:

let
  version = "2022.11.3-lukegb";
  src = pkgs.fetchFromGitHub {
    owner = "lukegb";
    repo = "authentik";
    rev = "a329164ec0f917d39a6d448c8c462d99dfe2c21a";
    hash = "sha256:17911l1v37iwyxf0y038as4plkn2w57axf0n5fiyr8pspfj6w6w2";
  };
  subargs = args // { inherit src version; };
in rec {
  inherit src;
  docs = import ./docs subargs;
  webui = import ./webui subargs;
  pythonapp = import ./pythonapp subargs;
  goserver = import ./goserver subargs;
  server = import ./server (subargs // {
    inherit docs webui pythonapp goserver;
  });
}