{ pkgs, lib, beamPackages, overrides ? (x: y: { }) }:

let
  buildMix = lib.makeOverridable beamPackages.buildMix;
  buildRebar3 = lib.makeOverridable beamPackages.buildRebar3;

  defaultOverrides = (final: prev:

    let
      apps = {
        explorer = [
          {
            name = "rustlerPrecompiled";
            toolchain = {
              name = "nightly-2024-07-26";
              sha256 = "sha256-5icy5hSaQy6/fUim9L2vz2GeZNC3fX1N5T2MjnkTplc=";
            };
          }
        ];
        tokenizers = [
          {
            name = "rustlerPrecompiled";
          }
        ];
      };

      elixirConfig = pkgs.writeTextDir
        "config/config.exs"
        ''
          import Config

          config :explorer, Explorer.PolarsBackend.Native,
            skip_compilation?: true

          config :tokenizers, Tokenizers.Native,
            skip_compilation?: true
        '';

      buildNativeDir = src: "${src}/native/${with builtins; head (attrNames (readDir "${src}/native"))}";

      workarounds = {
        rustlerPrecompiled = { toolchain ? null, ... }: old:
          let
            extendedPkgs = pkgs.extend fenixOverlay;
            fenixOverlay = import
              "${fetchTarball {
                url = "https://github.com/nix-community/fenix/archive/43efa7a3a97f290441bd75b18defcd4f7b8df220.tar.gz";
                sha256 = "sha256:1b9v45cafixpbj6iqjw3wr0yfpcrh3p11am7v0cjpjq5n8bhs8v3";
              }}/overlay.nix";
            nativeDir = buildNativeDir old.src;
            fenix =
              if toolchain == null
              then extendedPkgs.fenix.stable
              else extendedPkgs.fenix.fromToolchainName toolchain;
            native = (extendedPkgs.makeRustPlatform {
              inherit (fenix) cargo rustc;
            }).buildRustPackage {
              pname = "${old.packageName}-native";
              version = old.version;
              src = nativeDir;
              cargoLock = {
                lockFile = "${nativeDir}/Cargo.lock";
              };
              nativeBuildInputs = [ extendedPkgs.cmake ] ++ extendedPkgs.lib.lists.optional extendedPkgs.stdenv.isDarwin extendedPkgs.darwin.IOKit;
              doCheck = false;
            };
          in
          {
            nativeBuildInputs = [ extendedPkgs.cargo ];

            appConfigPath = "${elixirConfig}/config";

            env.RUSTLER_PRECOMPILED_FORCE_BUILD_ALL = "true";
            env.RUSTLER_PRECOMPILED_GLOBAL_CACHE_PATH = "unused-but-required";

            preConfigure = ''
              mkdir -p priv/native
              for lib in ${native}/lib/*
              do
                ln -s "$lib" "priv/native/$(basename "$lib")"
              done
            '';
          };
      };

      applyOverrides = appName: drv:
        let
          allOverridesForApp = builtins.foldl'
            (acc: workaround: acc // (workarounds.${workaround.name} workaround) drv)
            { }
            apps.${appName};

        in
        if builtins.hasAttr appName apps
        then
          drv.override allOverridesForApp
        else
          drv;

    in
    builtins.mapAttrs
      applyOverrides
      prev);

  self = packages // (defaultOverrides self packages) // (overrides self packages);

  packages = with beamPackages; with self; {
    bandit =
      let
        version = "1.5.7";
      in
      buildMix {
        inherit version;
        name = "bandit";

        src = fetchHex {
          inherit version;
          pkg = "bandit";
          sha256 = "f2dd92ae87d2cbea2fa9aa1652db157b6cba6c405cb44d4f6dd87abba41371cd";
        };

        beamDeps = [ hpax plug telemetry thousand_island websock ];
      };

    bcrypt_elixir =
      let
        version = "3.2.0";
      in
      buildMix {
        inherit version;
        name = "bcrypt_elixir";

        src = fetchHex {
          inherit version;
          pkg = "bcrypt_elixir";
          sha256 = "563e92a6c77d667b19c5f4ba17ab6d440a085696bdf4c68b9b0f5b30bc5422b8";
        };

        beamDeps = [ comeonin elixir_make ];
      };

    castore =
      let
        version = "1.0.9";
      in
      buildMix {
        inherit version;
        name = "castore";

        src = fetchHex {
          inherit version;
          pkg = "castore";
          sha256 = "5ea956504f1ba6f2b4eb707061d8e17870de2bee95fb59d512872c2ef06925e7";
        };
      };

    certifi =
      let
        version = "2.12.0";
      in
      buildRebar3 {
        inherit version;
        name = "certifi";

        src = fetchHex {
          inherit version;
          pkg = "certifi";
          sha256 = "ee68d85df22e554040cdb4be100f33873ac6051387baf6a8f6ce82272340ff1c";
        };
      };

    comeonin =
      let
        version = "5.5.0";
      in
      buildMix {
        inherit version;
        name = "comeonin";

        src = fetchHex {
          inherit version;
          pkg = "comeonin";
          sha256 = "6287fc3ba0aad34883cbe3f7949fc1d1e738e5ccdce77165bc99490aa69f47fb";
        };
      };

    db_connection =
      let
        version = "2.7.0";
      in
      buildMix {
        inherit version;
        name = "db_connection";

        src = fetchHex {
          inherit version;
          pkg = "db_connection";
          sha256 = "dcf08f31b2701f857dfc787fbad78223d61a32204f217f15e881dd93e4bdd3ff";
        };

        beamDeps = [ telemetry ];
      };

    decimal =
      let
        version = "2.1.1";
      in
      buildMix {
        inherit version;
        name = "decimal";

        src = fetchHex {
          inherit version;
          pkg = "decimal";
          sha256 = "53cfe5f497ed0e7771ae1a475575603d77425099ba5faef9394932b35020ffcc";
        };
      };

    dns_cluster =
      let
        version = "0.1.3";
      in
      buildMix {
        inherit version;
        name = "dns_cluster";

        src = fetchHex {
          inherit version;
          pkg = "dns_cluster";
          sha256 = "46cb7c4a1b3e52c7ad4cbe33ca5079fbde4840dedeafca2baf77996c2da1bc33";
        };
      };

    ecto =
      let
        version = "3.12.4";
      in
      buildMix {
        inherit version;
        name = "ecto";

        src = fetchHex {
          inherit version;
          pkg = "ecto";
          sha256 = "ef04e4101688a67d061e1b10d7bc1fbf00d1d13c17eef08b71d070ff9188f747";
        };

        beamDeps = [ decimal jason telemetry ];
      };

    ecto_psql_extras =
      let
        version = "0.8.2";
      in
      buildMix {
        inherit version;
        name = "ecto_psql_extras";

        src = fetchHex {
          inherit version;
          pkg = "ecto_psql_extras";
          sha256 = "6149c1c4a5ba6602a76cb09ee7a269eb60dab9694a1dbbb797f032555212de75";
        };

        beamDeps = [ ecto_sql postgrex table_rex ];
      };

    ecto_sql =
      let
        version = "3.12.1";
      in
      buildMix {
        inherit version;
        name = "ecto_sql";

        src = fetchHex {
          inherit version;
          pkg = "ecto_sql";
          sha256 = "aff5b958a899762c5f09028c847569f7dfb9cc9d63bdb8133bff8a5546de6bf5";
        };

        beamDeps = [ db_connection ecto postgrex telemetry ];
      };

    elixir_make =
      let
        version = "0.8.4";
      in
      buildMix {
        inherit version;
        name = "elixir_make";

        src = fetchHex {
          inherit version;
          pkg = "elixir_make";
          sha256 = "6e7f1d619b5f61dfabd0a20aa268e575572b542ac31723293a4c1a567d5ef040";
        };

        beamDeps = [ castore certifi ];
      };

    esbuild =
      let
        version = "0.8.2";
      in
      buildMix {
        inherit version;
        name = "esbuild";

        src = fetchHex {
          inherit version;
          pkg = "esbuild";
          sha256 = "558a8a08ed78eb820efbfda1de196569d8bfa9b51e8371a1934fbb31345feda7";
        };

        beamDeps = [ castore jason ];
      };

    ex_aws =
      let
        version = "2.5.6";
      in
      buildMix {
        inherit version;
        name = "ex_aws";

        src = fetchHex {
          inherit version;
          pkg = "ex_aws";
          sha256 = "c69eec59e31fdd89d0beeb1d97e16518dd1b23ad95b3d5c9f1dcfec23d97f960";
        };

        beamDeps = [ hackney jason mime sweet_xml telemetry ];
      };

    ex_aws_s3 =
      let
        version = "2.5.4";
      in
      buildMix {
        inherit version;
        name = "ex_aws_s3";

        src = fetchHex {
          inherit version;
          pkg = "ex_aws_s3";
          sha256 = "c06e7f68b33f7c0acba1361dbd951c79661a28f85aa2e0582990fccca4425355";
        };

        beamDeps = [ ex_aws sweet_xml ];
      };

    expo =
      let
        version = "1.1.0";
      in
      buildMix {
        inherit version;
        name = "expo";

        src = fetchHex {
          inherit version;
          pkg = "expo";
          sha256 = "fbadf93f4700fb44c331362177bdca9eeb8097e8b0ef525c9cc501cb9917c960";
        };
      };

    finch =
      let
        version = "0.19.0";
      in
      buildMix {
        inherit version;
        name = "finch";

        src = fetchHex {
          inherit version;
          pkg = "finch";
          sha256 = "fc5324ce209125d1e2fa0fcd2634601c52a787aff1cd33ee833664a5af4ea2b6";
        };

        beamDeps = [ mime mint nimble_options nimble_pool telemetry ];
      };

    gettext =
      let
        version = "0.26.1";
      in
      buildMix {
        inherit version;
        name = "gettext";

        src = fetchHex {
          inherit version;
          pkg = "gettext";
          sha256 = "01ce56f188b9dc28780a52783d6529ad2bc7124f9744e571e1ee4ea88bf08734";
        };

        beamDeps = [ expo ];
      };

    hackney =
      let
        version = "1.20.1";
      in
      buildRebar3 {
        inherit version;
        name = "hackney";

        src = fetchHex {
          inherit version;
          pkg = "hackney";
          sha256 = "fe9094e5f1a2a2c0a7d10918fee36bfec0ec2a979994cff8cfe8058cd9af38e3";
        };

        beamDeps = [ certifi idna metrics mimerl parse_trans ssl_verify_fun unicode_util_compat ];
      };

    hpax =
      let
        version = "1.0.0";
      in
      buildMix {
        inherit version;
        name = "hpax";

        src = fetchHex {
          inherit version;
          pkg = "hpax";
          sha256 = "7f1314731d711e2ca5fdc7fd361296593fc2542570b3105595bb0bc6d0fad601";
        };
      };

    idna =
      let
        version = "6.1.1";
      in
      buildRebar3 {
        inherit version;
        name = "idna";

        src = fetchHex {
          inherit version;
          pkg = "idna";
          sha256 = "92376eb7894412ed19ac475e4a86f7b413c1b9fbb5bd16dccd57934157944cea";
        };

        beamDeps = [ unicode_util_compat ];
      };

    jason =
      let
        version = "1.4.4";
      in
      buildMix {
        inherit version;
        name = "jason";

        src = fetchHex {
          inherit version;
          pkg = "jason";
          sha256 = "c5eb0cab91f094599f94d55bc63409236a8ec69a21a67814529e8d5f6cc90b3b";
        };

        beamDeps = [ decimal ];
      };

    makeup =
      let
        version = "1.1.2";
      in
      buildMix {
        inherit version;
        name = "makeup";

        src = fetchHex {
          inherit version;
          pkg = "makeup";
          sha256 = "cce1566b81fbcbd21eca8ffe808f33b221f9eee2cbc7a1706fc3da9ff18e6cac";
        };

        beamDeps = [ nimble_parsec ];
      };

    makeup_elixir =
      let
        version = "0.16.2";
      in
      buildMix {
        inherit version;
        name = "makeup_elixir";

        src = fetchHex {
          inherit version;
          pkg = "makeup_elixir";
          sha256 = "41193978704763f6bbe6cc2758b84909e62984c7752b3784bd3c218bb341706b";
        };

        beamDeps = [ makeup nimble_parsec ];
      };

    makeup_erlang =
      let
        version = "0.1.5";
      in
      buildMix {
        inherit version;
        name = "makeup_erlang";

        src = fetchHex {
          inherit version;
          pkg = "makeup_erlang";
          sha256 = "94d2e986428585a21516d7d7149781480013c56e30c6a233534bedf38867a59a";
        };

        beamDeps = [ makeup ];
      };

    makeup_html =
      let
        version = "0.1.1";
      in
      buildMix {
        inherit version;
        name = "makeup_html";

        src = fetchHex {
          inherit version;
          pkg = "makeup_html";
          sha256 = "44f2a61bc5243645dd7fafeaa6cc28793cd22f3c76b861e066168f9a5b2c26a4";
        };

        beamDeps = [ makeup ];
      };

    makeup_js =
      let
        version = "0.1.0";
      in
      buildMix {
        inherit version;
        name = "makeup_js";

        src = fetchHex {
          inherit version;
          pkg = "makeup_js";
          sha256 = "3f0c1a5eb52c9737b1679c926574e83bb260ccdedf08b58ee96cca7c685dea75";
        };

        beamDeps = [ makeup ];
      };

    makeup_rust =
      let
        version = "0.3.0";
      in
      buildMix {
        inherit version;
        name = "makeup_rust";

        src = fetchHex {
          inherit version;
          pkg = "makeup_rust";
          sha256 = "1e79ee1995a3b9df9b7d90af7dc02525989efc41390a52065c23782c94ea94e1";
        };

        beamDeps = [ makeup nimble_parsec ];
      };

    metrics =
      let
        version = "1.0.1";
      in
      buildRebar3 {
        inherit version;
        name = "metrics";

        src = fetchHex {
          inherit version;
          pkg = "metrics";
          sha256 = "69b09adddc4f74a40716ae54d140f93beb0fb8978d8636eaded0c31b6f099f16";
        };
      };

    mime =
      let
        version = "2.0.6";
      in
      buildMix {
        inherit version;
        name = "mime";

        src = fetchHex {
          inherit version;
          pkg = "mime";
          sha256 = "c9945363a6b26d747389aac3643f8e0e09d30499a138ad64fe8fd1d13d9b153e";
        };
      };

    mimerl =
      let
        version = "1.3.0";
      in
      buildRebar3 {
        inherit version;
        name = "mimerl";

        src = fetchHex {
          inherit version;
          pkg = "mimerl";
          sha256 = "a1e15a50d1887217de95f0b9b0793e32853f7c258a5cd227650889b38839fe9d";
        };
      };

    mint =
      let
        version = "1.6.2";
      in
      buildMix {
        inherit version;
        name = "mint";

        src = fetchHex {
          inherit version;
          pkg = "mint";
          sha256 = "5ee441dffc1892f1ae59127f74afe8fd82fda6587794278d924e4d90ea3d63f9";
        };

        beamDeps = [ castore hpax ];
      };

    mogrify =
      let
        version = "0.9.3";
      in
      buildMix {
        inherit version;
        name = "mogrify";

        src = fetchHex {
          inherit version;
          pkg = "mogrify";
          sha256 = "0189b1e1de27455f2b9ae8cf88239cefd23d38de9276eb5add7159aea51731e6";
        };
      };

    nimble_options =
      let
        version = "1.1.1";
      in
      buildMix {
        inherit version;
        name = "nimble_options";

        src = fetchHex {
          inherit version;
          pkg = "nimble_options";
          sha256 = "821b2470ca9442c4b6984882fe9bb0389371b8ddec4d45a9504f00a66f650b44";
        };
      };

    nimble_parsec =
      let
        version = "1.4.0";
      in
      buildMix {
        inherit version;
        name = "nimble_parsec";

        src = fetchHex {
          inherit version;
          pkg = "nimble_parsec";
          sha256 = "9c565862810fb383e9838c1dd2d7d2c437b3d13b267414ba6af33e50d2d1cf28";
        };
      };

    nimble_pool =
      let
        version = "1.1.0";
      in
      buildMix {
        inherit version;
        name = "nimble_pool";

        src = fetchHex {
          inherit version;
          pkg = "nimble_pool";
          sha256 = "af2e4e6b34197db81f7aad230c1118eac993acc0dae6bc83bac0126d4ae0813a";
        };
      };

    parse_trans =
      let
        version = "3.4.1";
      in
      buildRebar3 {
        inherit version;
        name = "parse_trans";

        src = fetchHex {
          inherit version;
          pkg = "parse_trans";
          sha256 = "620a406ce75dada827b82e453c19cf06776be266f5a67cff34e1ef2cbb60e49a";
        };
      };

    phoenix =
      let
        version = "1.7.14";
      in
      buildMix {
        inherit version;
        name = "phoenix";

        src = fetchHex {
          inherit version;
          pkg = "phoenix";
          sha256 = "c7859bc56cc5dfef19ecfc240775dae358cbaa530231118a9e014df392ace61a";
        };

        beamDeps = [ castore jason phoenix_pubsub phoenix_template plug plug_crypto telemetry websock_adapter ];
      };

    phoenix_ecto =
      let
        version = "4.6.2";
      in
      buildMix {
        inherit version;
        name = "phoenix_ecto";

        src = fetchHex {
          inherit version;
          pkg = "phoenix_ecto";
          sha256 = "3f94d025f59de86be00f5f8c5dd7b5965a3298458d21ab1c328488be3b5fcd59";
        };

        beamDeps = [ ecto phoenix_html plug postgrex ];
      };

    phoenix_html =
      let
        version = "4.1.1";
      in
      buildMix {
        inherit version;
        name = "phoenix_html";

        src = fetchHex {
          inherit version;
          pkg = "phoenix_html";
          sha256 = "f2f2df5a72bc9a2f510b21497fd7d2b86d932ec0598f0210fed4114adc546c6f";
        };
      };

    phoenix_html_helpers =
      let
        version = "1.0.1";
      in
      buildMix {
        inherit version;
        name = "phoenix_html_helpers";

        src = fetchHex {
          inherit version;
          pkg = "phoenix_html_helpers";
          sha256 = "cffd2385d1fa4f78b04432df69ab8da63dc5cf63e07b713a4dcf36a3740e3090";
        };

        beamDeps = [ phoenix_html plug ];
      };

    phoenix_live_dashboard =
      let
        version = "0.8.4";
      in
      buildMix {
        inherit version;
        name = "phoenix_live_dashboard";

        src = fetchHex {
          inherit version;
          pkg = "phoenix_live_dashboard";
          sha256 = "2984aae96994fbc5c61795a73b8fb58153b41ff934019cfb522343d2d3817d59";
        };

        beamDeps = [ ecto ecto_psql_extras mime phoenix_live_view telemetry_metrics ];
      };

    phoenix_live_view =
      let
        version = "1.0.0-rc.7";
      in
      buildMix {
        inherit version;
        name = "phoenix_live_view";

        src = fetchHex {
          inherit version;
          pkg = "phoenix_live_view";
          sha256 = "b82a4575f6f3eb5b97922ec6874b0c52b3ca0cc5dcb4b14ddc478cbfa135dd01";
        };

        beamDeps = [ jason phoenix phoenix_html phoenix_template plug telemetry ];
      };

    phoenix_pubsub =
      let
        version = "2.1.3";
      in
      buildMix {
        inherit version;
        name = "phoenix_pubsub";

        src = fetchHex {
          inherit version;
          pkg = "phoenix_pubsub";
          sha256 = "bba06bc1dcfd8cb086759f0edc94a8ba2bc8896d5331a1e2c2902bf8e36ee502";
        };
      };

    phoenix_template =
      let
        version = "1.0.4";
      in
      buildMix {
        inherit version;
        name = "phoenix_template";

        src = fetchHex {
          inherit version;
          pkg = "phoenix_template";
          sha256 = "2c0c81f0e5c6753faf5cca2f229c9709919aba34fab866d3bc05060c9c444206";
        };

        beamDeps = [ phoenix_html ];
      };

    plug =
      let
        version = "1.16.1";
      in
      buildMix {
        inherit version;
        name = "plug";

        src = fetchHex {
          inherit version;
          pkg = "plug";
          sha256 = "a13ff6b9006b03d7e33874945b2755253841b238c34071ed85b0e86057f8cddc";
        };

        beamDeps = [ mime plug_crypto telemetry ];
      };

    plug_crypto =
      let
        version = "2.1.0";
      in
      buildMix {
        inherit version;
        name = "plug_crypto";

        src = fetchHex {
          inherit version;
          pkg = "plug_crypto";
          sha256 = "131216a4b030b8f8ce0f26038bc4421ae60e4bb95c5cf5395e1421437824c4fa";
        };
      };

    postgrex =
      let
        version = "0.19.1";
      in
      buildMix {
        inherit version;
        name = "postgrex";

        src = fetchHex {
          inherit version;
          pkg = "postgrex";
          sha256 = "8bac7885a18f381e091ec6caf41bda7bb8c77912bb0e9285212829afe5d8a8f8";
        };

        beamDeps = [ db_connection decimal jason ];
      };

    ssl_verify_fun =
      let
        version = "1.1.7";
      in
      buildMix {
        inherit version;
        name = "ssl_verify_fun";

        src = fetchHex {
          inherit version;
          pkg = "ssl_verify_fun";
          sha256 = "fe4c190e8f37401d30167c8c405eda19469f34577987c76dde613e838bbc67f8";
        };
      };

    sweet_xml =
      let
        version = "0.7.4";
      in
      buildMix {
        inherit version;
        name = "sweet_xml";

        src = fetchHex {
          inherit version;
          pkg = "sweet_xml";
          sha256 = "e7c4b0bdbf460c928234951def54fe87edf1a170f6896675443279e2dbeba167";
        };
      };

    swoosh =
      let
        version = "1.17.2";
      in
      buildMix {
        inherit version;
        name = "swoosh";

        src = fetchHex {
          inherit version;
          pkg = "swoosh";
          sha256 = "de914359f0ddc134dc0d7735e28922d49d0503f31e4bd66b44e26039c2226d39";
        };

        beamDeps = [ bandit ex_aws finch hackney jason mime plug telemetry ];
      };

    table_rex =
      let
        version = "4.0.0";
      in
      buildMix {
        inherit version;
        name = "table_rex";

        src = fetchHex {
          inherit version;
          pkg = "table_rex";
          sha256 = "c35c4d5612ca49ebb0344ea10387da4d2afe278387d4019e4d8111e815df8f55";
        };
      };

    tailwind =
      let
        version = "0.2.4";
      in
      buildMix {
        inherit version;
        name = "tailwind";

        src = fetchHex {
          inherit version;
          pkg = "tailwind";
          sha256 = "c6e4a82b8727bab593700c998a4d98cf3d8025678bfde059aed71d0000c3e463";
        };

        beamDeps = [ castore ];
      };

    telemetry =
      let
        version = "1.3.0";
      in
      buildRebar3 {
        inherit version;
        name = "telemetry";

        src = fetchHex {
          inherit version;
          pkg = "telemetry";
          sha256 = "7015fc8919dbe63764f4b4b87a95b7c0996bd539e0d499be6ec9d7f3875b79e6";
        };
      };

    telemetry_metrics =
      let
        version = "1.0.0";
      in
      buildMix {
        inherit version;
        name = "telemetry_metrics";

        src = fetchHex {
          inherit version;
          pkg = "telemetry_metrics";
          sha256 = "f23713b3847286a534e005126d4c959ebcca68ae9582118ce436b521d1d47d5d";
        };

        beamDeps = [ telemetry ];
      };

    telemetry_poller =
      let
        version = "1.1.0";
      in
      buildRebar3 {
        inherit version;
        name = "telemetry_poller";

        src = fetchHex {
          inherit version;
          pkg = "telemetry_poller";
          sha256 = "9eb9d9cbfd81cbd7cdd24682f8711b6e2b691289a0de6826e58452f28c103c8f";
        };

        beamDeps = [ telemetry ];
      };

    thousand_island =
      let
        version = "1.3.5";
      in
      buildMix {
        inherit version;
        name = "thousand_island";

        src = fetchHex {
          inherit version;
          pkg = "thousand_island";
          sha256 = "2be6954916fdfe4756af3239fb6b6d75d0b8063b5df03ba76fd8a4c87849e180";
        };

        beamDeps = [ telemetry ];
      };

    unicode_util_compat =
      let
        version = "0.7.0";
      in
      buildRebar3 {
        inherit version;
        name = "unicode_util_compat";

        src = fetchHex {
          inherit version;
          pkg = "unicode_util_compat";
          sha256 = "25eee6d67df61960cf6a794239566599b09e17e668d3700247bc498638152521";
        };
      };

    websock =
      let
        version = "0.5.3";
      in
      buildMix {
        inherit version;
        name = "websock";

        src = fetchHex {
          inherit version;
          pkg = "websock";
          sha256 = "6105453d7fac22c712ad66fab1d45abdf049868f253cf719b625151460b8b453";
        };
      };

    websock_adapter =
      let
        version = "0.5.7";
      in
      buildMix {
        inherit version;
        name = "websock_adapter";

        src = fetchHex {
          inherit version;
          pkg = "websock_adapter";
          sha256 = "d0f478ee64deddfec64b800673fd6e0c8888b079d9f3444dd96d2a98383bdbd1";
        };

        beamDeps = [ bandit plug websock ];
      };
  };
in
self
