diff --git a/pkgs/development/python-modules/timm/default.nix b/pkgs/development/python-modules/timm/default.nix new file mode 100644 index 000000000000..5f2d0135cc8f --- /dev/null +++ b/pkgs/development/python-modules/timm/default.nix @@ -0,0 +1,50 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pythonOlder +, pytestCheckHook +, expecttest +, pytest-timeout +, huggingface-hub +, pyyaml +, torch +, torchvision +}: + +buildPythonPackage rec { + pname = "timm"; + version = "0.6.12"; + disabled = pythonOlder "3.6"; + + src = fetchFromGitHub { + owner = "rwightman"; + repo = "pytorch-image-models"; + rev = "refs/tags/v${version}"; + hash = "sha256-RNjCcCnNhtr5a+29Bx+k427a03MSooqvnuiDQ8cT8FA="; + }; + + propagatedBuildInputs = [ + huggingface-hub + pyyaml + torch + torchvision + ]; + + nativeCheckInputs = [ expecttest pytestCheckHook pytest-timeout ]; + pytestFlagsArray = [ "tests" ]; + # takes too long and also tries to download models: + disabledTestPaths = [ "tests/test_models.py" ]; + + pythonImportsCheck = [ + "timm" + "timm.data" + ]; + + meta = with lib; { + description = "PyTorch image models, scripts, and pretrained weights"; + homepage = "https://huggingface.co/docs/timm/index"; + changelog = "https://github.com/rwightman/pytorch-image-models/blob/v${version}/README.md#whats-new"; + license = licenses.asl20; + maintainers = with maintainers; [ bcdarwin ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index be3ea429793e..372d5ee182b2 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -11436,6 +11436,8 @@ self: super: with self; { timezonefinder = callPackage ../development/python-modules/timezonefinder { }; + timm = callPackage ../development/python-modules/timm { }; + tinycss2 = callPackage ../development/python-modules/tinycss2 { }; tinycss = callPackage ../development/python-modules/tinycss { };