Merge pull request #119126 from fabaff/pycomfoconnect
[NixPkgs.git] / pkgs / development / python-modules / spacy / models.nix
blob8c57d2e0d2629680cee9a93c41edecec5aa8b673
1 { lib, buildPythonPackage, fetchurl, jieba, pkuseg, spacy }:
2 let
3   buildModelPackage = { pname, version, sha256, license }:
4   let
5     lang = builtins.substring 0 2 pname;
6   in buildPythonPackage {
7     inherit pname version;
9     src = fetchurl {
10       url = "https://github.com/explosion/spacy-models/releases/download/${pname}-${version}/${pname}-${version}.tar.gz";
11       inherit sha256;
12     };
14     propagatedBuildInputs = [ spacy ]
15       ++ lib.optionals (lang == "zh") [ jieba pkuseg ];
17     pythonImportsCheck = [ pname ];
19     meta = with lib; {
20       description = "Models for the spaCy NLP library";
21       homepage    = "https://github.com/explosion/spacy-models";
22       license     = licenses.${license};
23       maintainers = with maintainers; [ rvl ];
24     };
25   };
27   makeModelSet = models: with lib; listToAttrs (map (m: nameValuePair m.pname (buildModelPackage m)) models);
29 in makeModelSet (lib.importJSON ./models.json)
31 # cat models.json | jq -r '.[] | @uri "https://github.com/explosion/spacy-models/releases/download/\(.pname)-\(.version)/\(.pname)-\(.version).tar.gz"' | xargs -n1 nix-prefetch-url