Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

python312Packages.docling-parse: init at 2.0.2 #353183

Merged
merged 8 commits into from
Nov 8, 2024
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