tools/pkgs/fawltydeps/default.nix

48 lines
1.5 KiB
Nix

{ lib
, poetry2nix
, fetchFromGitHub
, python39
, python39Packages
}:
let
poetryOverrides = poetry2nix.defaultPoetryOverrides.extend (full: prev: {
colorama = prev.colorama.overridePythonAttrs (old: {
buildInputs = old.buildInputs ++ [ prev.hatchling ];
});
iniconfig = prev.iniconfig.overridePythonAttrs (old: {
buildInputs = old.buildInputs ++ [ prev.hatchling prev.hatch-vcs ];
});
filelock = prev.filelock.overridePythonAttrs (old: {
buildInputs = old.buildInputs ++ [ prev.hatchling prev.hatch-vcs ];
});
packaging = prev.packaging.overridePythonAttrs (old: {
buildInputs = old.buildInputs ++ [ prev.flit-core ];
});
pathspec = prev.pathspec.overridePythonAttrs (old: {
buildInputs = old.buildInputs ++ [ prev.flit-core ];
});
nox = prev.nox.overridePythonAttrs (old: {
buildInputs = old.buildInputs ++ [ prev.setuptools ];
});
exceptiongroup = prev.exceptiongroup.overridePythonAttrs (old: {
buildInputs = old.buildInputs ++ [ prev.flit-scm ];
});
mypy = prev.mypy.overridePythonAttrs (old: {
buildInputs = old.buildInputs ++ [ prev.types-psutil ];
});
});
src = fetchFromGitHub {
owner = "tweag";
repo = "FawltyDeps";
rev = "0201e74a158c5774db9150e1e70f01e76bad34e7";
sha256 = "sha256-kSAy6IOS+G+e7hG4ZseglhOsnJ7Tg87MaMRCWUoSJdA=";
};
in
poetry2nix.mkPoetryApplication {
version = "2023-03-14";
python = python39;
projectDir = "${src}";
overrides = poetryOverrides;
}