+self: super:
+let
+
+ # Pending upstream inclusion in https://github.com/NixOS/nixpkgs/pull/93377
+ fallback-backoff = self.python3Packages.callPackage ({ lib, buildPythonPackage
+ , fetchFromGitHub, pytestCheckHook, poetry, pytest-asyncio, }:
+ buildPythonPackage rec {
+ pname = "backoff";
+ version = "1.10.0";
+ src = fetchFromGitHub {
+ owner = "litl";
+ repo = pname;
+ rev = "v${version}";
+ sha256 = "1jj0l6pjx747d2yyvnzd3qbm4qr73sq6cc56dhvd8wqfbp5279x0";
+ };
+ format = "pyproject";
+ nativeBuildInputs = [ poetry ];
+ checkInputs = [ pytestCheckHook pytest-asyncio ];
+ }) { };
+
+ fallback-git-cache = self.python3Packages.callPackage
+ ({ buildPythonPackage, fetchgit, git, backoff, mypy, }:
+ buildPythonPackage rec {
+ pname = "git-cache";
+ version = "1.3.1";
+ src = fetchgit {
+ url = "https://scottworley.com/git-cache.git";
+ rev = "v${version}";
+ sha256 = "0awz7f6avzw9fk9gp1kadj0nbmf1s60qic9zb6ww92zig3khg12k";
+ };
+ propagatedBuildInputs = [ backoff ];
+ checkInputs = [ git mypy ];
+ doCheck = true;
+ checkPhase = "./test.sh";
+ }) { backoff = self.python3Packages.backoff or fallback-backoff; };
+
+ fallback-pinch = self.python3Packages.callPackage
+ ({ buildPythonPackage, fetchgit, nix, git, makeWrapper, mypy, git-cache, }:
+ buildPythonPackage rec {
+ pname = "pinch";
+ version = "3.0.4";
+ src = fetchgit {
+ url = "https://scottworley.com/pinch.git";
+ rev = "v${version}";
+ sha256 = "1i7v9vcjk599ffzwf3nq38y811cm6rnxriarqgpp3kwy52r91mi2";
+ };
+ buildInputs = [ makeWrapper ];
+ propagatedBuildInputs = [ git-cache ];
+ checkInputs = [ nix git mypy ];
+ postInstall = ''
+ wrapProgram "$out/bin/pinch" --prefix PATH : ${nix}/bin
+ '';
+ doCheck = true;
+ checkPhase = "./test.sh";
+ }) { git-cache = self.python3Packages.git-cache or fallback-git-cache; };
+
+in { pinch = super.pinch or fallback-pinch; }