{
  inputs = {
    gguf = {
      url = "github:city96/ComfyUI-GGUF";
      flake = false;
    };

    tensorrt = {
      url = "github:comfyanonymous/ComfyUI_TensorRT";
      flake = false;
    };

    # needs some deps packaged
    # essentials = {
    #   url = "github:cubiq/ComfyUI_essentials";
    #   flake = false;
    # };

    openpose = {
      url = "github:space-nuko/ComfyUI-OpenPose-Editor";
      flake = false;
    };
  };

  outputs = {
    self,
    nixpkgs,
    ...
  }: let
    pkgs = import nixpkgs {
      system = "x86_64-linux";
    };
    inherit (pkgs) lib callPackage;
    inherit (builtins) mapAttrs;
    filteredInputs = lib.filterAttrs (n: v: n != "nixpkgs") self.inputs;
  in {
    overlays.comfyui-plugins = final: prev: {
      comfyui-plugins =
        mapAttrs
        (name: value: final.callPackage ./${name}/default.nix {src = value;})
        filteredInputs;
    };
    packages.x86_64-linux =
      mapAttrs
      (name: value: callPackage ./${name}/default.nix {src = value;})
      filteredInputs;
  };
}
