Skip to content

Commit

Permalink
python312Packages.docling-parse: init at 2.0.2 (#353183)
Browse files Browse the repository at this point in the history
  • Loading branch information
GaetanLepage authored Nov 8, 2024
2 parents 6926842 + 91d9540 commit 266b098
Show file tree
Hide file tree
Showing 9 changed files with 512 additions and 0 deletions.
49 changes: 49 additions & 0 deletions pkgs/by-name/lo/loguru/package.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
{
lib,
stdenv,
fetchFromGitHub,
fetchpatch,
cmake,
}:

stdenv.mkDerivation {
pname = "loguru";
version = "2.1.0-unstable-2023-04-06";

src = fetchFromGitHub {
owner = "emilk";
repo = "loguru";
rev = "4adaa185883e3c04da25913579c451d3c32cfac1";
hash = "sha256-NpMKyjCC06bC5B3xqgDr2NgA9RsPEeiWr9GbHrHHzZ8=";
};

patches = [
# See https://github.com/emilk/loguru/issues/249
# The following patches are coming from a fork and fix builds on Darwin
# Hopefully they will be merged in the main repository soon.
(fetchpatch {
url = "https://github.com/virtuosonic/loguru/commit/e1ffdc4149083cc221d44b666a0f7e3ec4a87259.patch";
hash = "sha256-fYdS8+qfgyj1J+T6H434jDGK/L+VYq+L22CQ7M/uiXE=";
})
(fetchpatch {
url = "https://github.com/virtuosonic/loguru/commit/743777bea361642349d4673e6a0a55912849c14f.patch";
hash = "sha256-3FhH7zdkzHuXSirSCr8A3uHg8UpSfEM02AkR0ZSG0Yw=";
})
];

cmakeFlags = [
"-DLOGURU_WITH_STREAMS=1"
];

nativeBuildInputs = [
cmake
];

meta = {
description = "Lightweight C++ logging library";
homepage = "https://github.com/emilk/loguru";
license = lib.licenses.unlicense;
maintainers = with lib.maintainers; [ drupol ];
platforms = lib.platforms.all;
};
}
93 changes: 93 additions & 0 deletions pkgs/development/python-modules/deepsearch-toolkit/default.nix
Original file line number Diff line number Diff line change
@@ -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 ];
};
}
59 changes: 59 additions & 0 deletions pkgs/development/python-modules/docling-core/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
poetry-core,
jsonref,
jsonschema,
pandas,
pillow,
pydantic,
tabulate,
jsondiff,
requests,
pytestCheckHook,
}:

buildPythonPackage rec {
pname = "docling-core";
version = "2.3.1";
pyproject = true;

src = fetchFromGitHub {
owner = "DS4SD";
repo = "docling-core";
rev = "refs/tags/v${version}";
hash = "sha256-yNsmMAeR1sbZsddpjMFWZy2UAbIWWiZmdW4/lwLvCbM=";
};

build-system = [
poetry-core
];

dependencies = [
jsonref
jsonschema
pandas
pillow
pydantic
tabulate
];

pythonImportsCheck = [
"docling_core"
];

nativeCheckInputs = [
jsondiff
pytestCheckHook
requests
];

meta = {
changelog = "https://github.com/DS4SD/docling-core/blob/${version}/CHANGELOG.md";
description = "Python library to define and validate data types in Docling";
homepage = "https://github.com/DS4SD/docling-core";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ drupol ];
};
}
75 changes: 75 additions & 0 deletions pkgs/development/python-modules/docling-ibm-models/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
poetry-core,
huggingface-hub,
jsonlines,
lxml,
mean-average-precision,
numpy,
opencv-python-headless,
pillow,
torch,
torchvision,
tqdm,
pytestCheckHook,
}:

buildPythonPackage rec {
pname = "docling-ibm-models";
version = "2.0.3";
pyproject = true;

src = fetchFromGitHub {
owner = "DS4SD";
repo = "docling-ibm-models";
rev = "refs/tags/v${version}";
hash = "sha256-vSEW1+mFTjUvjjUOoX3aGgT/y8iwP3JGIZaPh9RbX5I=";
};

build-system = [
poetry-core
];

dependencies = [
huggingface-hub
jsonlines
lxml
mean-average-precision
numpy
opencv-python-headless
pillow
torch
torchvision
tqdm
];

pythonRelaxDeps = [
"lxml"
"mean_average_precision"
"torchvision"
];

pythonImportsCheck = [
"docling_ibm_models"
];

nativeCheckInputs = [
pytestCheckHook
];

disabledTests = [
# Requires network access
"test_layoutpredictor"
"test_tf_predictor"
];

meta = {
changelog = "https://github.com/DS4SD/docling-ibm-models/blob/${src.rev}/CHANGELOG.md";
description = "Docling IBM models";
homepage = "https://github.com/DS4SD/docling-ibm-models";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ drupol ];
};
}
81 changes: 81 additions & 0 deletions pkgs/development/python-modules/docling-parse/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
cmake,
pkg-config,
cxxopts,
poetry-core,
pybind11,
tabulate,
zlib,
nlohmann_json,
utf8cpp,
libjpeg,
qpdf,
loguru-cpp,
pytestCheckHook,
}:

buildPythonPackage rec {
pname = "docling-parse";
version = "2.0.2";
pyproject = true;

src = fetchFromGitHub {
owner = "DS4SD";
repo = "docling-parse";
rev = "refs/tags/v${version}";
hash = "sha256-unXGmMp5xyRCqSoFmqcQAZOBzpE0EzgEEBIfZUHhRcQ=";
};

dontUseCmakeConfigure = true;

nativeBuildInputs = [
cmake
pkg-config
];

build-system = [
poetry-core
];

env.NIX_CFLAGS_COMPILE = "-I${lib.getDev utf8cpp}/include/utf8cpp";

buildInputs = [
pybind11
cxxopts
libjpeg
loguru-cpp
nlohmann_json
qpdf
utf8cpp
zlib
];

env.USE_SYSTEM_DEPS = true;

cmakeFlags = [
"-DUSE_SYSTEM_DEPS=True"
];

dependencies = [
tabulate
];

pythonImportsCheck = [
"docling_parse"
];

nativeCheckInputs = [
pytestCheckHook
];

meta = {
changelog = "https://github.com/DS4SD/docling-parse/blob/${src.rev}/CHANGELOG.md";
description = "Simple package to extract text with coordinates from programmatic PDFs";
homepage = "https://github.com/DS4SD/docling-parse";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ drupol ];
};
}
Loading

0 comments on commit 266b098

Please sign in to comment.