From 8974da030ab6eb9a58ea1d23454f1ed3ef93a079 Mon Sep 17 00:00:00 2001 From: Anton Mosich Date: Sat, 22 Mar 2025 14:36:10 +0100 Subject: [PATCH] python3Packages.ingredient-parser-nlp: init at 2.0.0 --- .../ingredient-parser-nlp/default.nix | 58 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 60 insertions(+) create mode 100644 pkgs/development/python-modules/ingredient-parser-nlp/default.nix diff --git a/pkgs/development/python-modules/ingredient-parser-nlp/default.nix b/pkgs/development/python-modules/ingredient-parser-nlp/default.nix new file mode 100644 index 000000000000..0250a17c0212 --- /dev/null +++ b/pkgs/development/python-modules/ingredient-parser-nlp/default.nix @@ -0,0 +1,58 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + nix-update-script, + + setuptools, + + nltk, + python-crfsuite, + pint, + floret, + + pytestCheckHook, + nltk-data, +}: +buildPythonPackage rec { + pname = "ingredient-parser-nlp"; + version = "2.0.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "strangetom"; + repo = "ingredient-parser"; + tag = version; + hash = "sha256-i14RKBcvU56pDNGxNVBvvpQ65FCbitMIfvN5eLLJCWU="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + nltk + python-crfsuite + pint + floret + ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ + "ingredient_parser" + ]; + + # Needed for tests + preCheck = '' + export NLTK_DATA=${nltk-data.averaged_perceptron_tagger_eng} + ''; + + meta = { + description = "Parse structured information from recipe ingredient sentences"; + license = lib.licenses.mit; + homepage = "https://github.com/strangetom/ingredient-parser/"; + changelog = "https://github.com/strangetom/ingredient-parser/releases/tag/${version}"; + maintainers = with lib.maintainers; [ antonmosich ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index f1d6ddb041a0..5de93c6c9283 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6630,6 +6630,8 @@ self: super: with self; { inform = callPackage ../development/python-modules/inform { }; + ingredient-parser-nlp = callPackage ../development/python-modules/ingredient-parser-nlp { }; + iniconfig = callPackage ../development/python-modules/iniconfig { }; inifile = callPackage ../development/python-modules/inifile { };