{ pkgs, ... }@args:

let
  version = "2023.4.0-lukegb";
  src = pkgs.fetchFromGitHub {
    owner = "lukegb";
    repo = "authentik";
    rev = "c8261d76066f37586d9adc428d60f9675ceed9fb";
    hash = "sha256:0c7a76vfmwd6flm4swpdas59d70kv166c8jly7zfjwgdf5vw1d0j";
  };
  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;
  });
}