diff --git a/pkgs/development/python-modules/deepsearch-toolkit/default.nix b/pkgs/development/python-modules/deepsearch-toolkit/default.nix new file mode 100644 index 0000000000000..92a88b6015077 --- /dev/null +++ b/pkgs/development/python-modules/deepsearch-toolkit/default.nix @@ -0,0 +1,93 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + poetry-core, + certifi, + docling-core, + platformdirs, + pluggy, + pydantic, + pydantic-settings, + python-dateutil, + python-dotenv, + requests, + six, + tabulate, + tqdm, + typer, + urllib3, + anyio, + fastapi, + uvicorn, + pytestCheckHook, +}: + +buildPythonPackage rec { + pname = "deepsearch-toolkit"; + version = "1.1.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "DS4SD"; + repo = "deepsearch-toolkit"; + rev = "refs/tags/v${version}"; + hash = "sha256-7XiI/VtXX4lRMreqUh6hJvdIULGvsCEdrd+zV5Jrne0="; + }; + + build-system = [ + poetry-core + ]; + + dependencies = [ + certifi + docling-core + platformdirs + pluggy + pydantic + pydantic-settings + python-dateutil + python-dotenv + requests + six + tabulate + tqdm + typer + urllib3 + ]; + + pythonRelaxDeps = [ + "urllib3" + ]; + + optional-dependencies = rec { + all = api; + api = [ + anyio + fastapi + uvicorn + ]; + }; + + pythonImportsCheck = [ + "deepsearch" + ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + disabledTests = [ + # Tests require the creation of a deepsearch profile + "test_project_listing" + "test_system_info" + ]; + + meta = { + changelog = "https://github.com/DS4SD/deepsearch-toolkit/blob/${src.rev}/CHANGELOG.md"; + description = "Interact with the Deep Search platform for new knowledge explorations and discoveries"; + homepage = "https://github.com/DS4SD/deepsearch-toolkit"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ drupol ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 7a36a3dcea9a5..3fb9c1d04ff27 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3064,6 +3064,8 @@ self: super: with self; { deepmerge = callPackage ../development/python-modules/deepmerge { }; + deepsearch-toolkit = callPackage ../development/python-modules/deepsearch-toolkit { }; + deeptoolsintervals = callPackage ../development/python-modules/deeptoolsintervals { }; deepwave = callPackage ../development/python-modules/deepwave { };