anchor.diff: -{ lib, python3, git }:
  +{ lib, python3, fetchFromGitHub, git, pkgconfig }:
  +
  +# Note:
  +# Conan has specific dependency demands; check
  +#     https://github.com/conan-io/conan/blob/master/conans/requirements.txt
  +#     https://github.com/conan-io/conan/blob/master/conans/requirements_server.txt
  +# on the release branch/commit we're packaging.
  +#
  +# Two approaches are used here to deal with that:
  +# Pinning the specific versions it wants in `newPython`,
  +# and using `substituteInPlace conans/requirements.txt ...`
  +# in `postPatch` to allow newer versions when we know
  +# (e.g. from changelogs) that they are compatible.
   
   let newPython = python3.override {
     packageOverrides = self: super: {
  
positive.code:         sha256 = "c0abe3218b86533cca287e7057a37481883c07acef7814b70583406938214cc8";
        };
      });
      pyyaml = super.pyyaml_3;
    };
  };
  
  in newPython.pkgs.buildPythonApplication rec {
    version = "1.12.0";
    pname = "conan";
  
    src = newPython.pkgs.fetchPypi {
      inherit pname version;
      sha256 = "0hgy3wfy96likdchz42h9mawfjw4dxx7k2iinrrlhph7128kji1j";
    };
    checkInputs = [
      git
    ] ++ (with newPython.pkgs; [
      codecov
      mock
      node-semver
      nose
      parameterized
      webtest
    ]);
  
    propagatedBuildInputs = with newPython.pkgs; [
      colorama deprecation distro fasteners bottle
      future node-semver patch pygments pluginbase
      pyjwt pylint pyyaml requests six tqdm
    ];
  
    checkPhase = ''
      export HOME="$TMP/conan-home"
      mkdir -p "$HOME"
    '';
  
    postPatch = ''
      substituteInPlace conans/requirements_server.txt \
        --replace "pluginbase>=0.5, < 1.0" "pluginbase>=0.5"
    '';
  
    meta = with lib; {
      homepage = https://conan.io;
      description = "Decentralized and portable C/C++ package manager";
      license = licenses.mit;
      maintainers = with maintainers; [ HaoZeke ];
      platforms = platforms.linux;
    };
  }
  
negative.code:         sha256 = "1dv6mjsm67l1razcgmq66riqmsb36wns17mnipqr610v0z0zf5j0";
        };
      });
      pluginbase = super.pluginbase.overridePythonAttrs (oldAttrs: rec {
        version = "0.7";
        src = oldAttrs.src.override {
  