{ pkgs, ... }:

let
  rev = "v0.15.1";
  src = (pkgs.fetchFromGitHub {
    owner = "martinvonz";
    repo = "jj";
    inherit rev;
    hash = "sha256-yppQIffjpyQ2nqhiZbV2pSMQJx8srmHjAk+UClCQfRw=";
  }) // {
    shortRev = rev;
  };
  flake-utils-src = (pkgs.fetchFromGitHub {
    owner = "numtide";
    repo = "flake-utils";
    rev = "v1.0.0";
    sha256 = "0hynd4rbkbplxzl2a8wb3r8z0h17z2alhhdsam78g3vgzpzg0d43";
  });
  flake-utils = (import "${flake-utils-src}/flake.nix").outputs {
    self = flake-utils;
  };
  rust-overlay-src = (pkgs.fetchFromGitHub {
    owner = "oxalica";
    repo = "rust-overlay";
    rev = "78503e9199010a4df714f29a4f9c00eb2ccae071";
    hash = "sha256:0xhrcahhlm8bz5gaka0rni9g20ypnmckmh0nz96xn5jb4a913j9z";
  });
  rust-overlay = (import "${rust-overlay-src}/flake.nix").outputs {
    self = rust-overlay;
    nixpkgs = pkgs;
    flake-utils = flake-utils;
  };
  flake = (import "${src}/flake.nix").outputs {
    self = flake;
    nixpkgs = pkgs.path;
    flake-utils = flake-utils;
    rust-overlay = rust-overlay;
  };
  fromFlake = (flake.overlays.default pkgs pkgs).jujutsu;
  fromFlake' = if pkgs.system == "aarch64-linux" then fromFlake.overrideAttrs (_: {
    doCheck = false;
  }) else fromFlake;
in
fromFlake'