Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 lib, 3 fetchFromGitHub, 4 buildPythonPackage, 5 fire, 6 fugashi, 7 jaconv, 8 loguru, 9 numpy, 10 pillow, 11 pyperclip, 12 torch, 13 transformers, 14 unidic-lite, 15 pythonOlder, 16}: 17buildPythonPackage rec { 18 pname = "manga-ocr"; 19 version = "0.1.11"; 20 disabled = pythonOlder "3.7"; 21 22 src = fetchFromGitHub { 23 owner = "kha-white"; 24 repo = pname; 25 rev = "refs/tags/v${version}"; 26 hash = "sha256-cLmgHBt6HvhY6Hb9yQ425Gk181axnMr+Mp2LxSmPoDg="; 27 }; 28 29 preBuild = '' 30 # remove subproject dedicated to model training 31 rm -rf manga_ocr_dev 32 # copy assets/example.jpg inside the package 33 # required by https://github.com/kha-white/manga-ocr/blob/ba1b0d94a8ef6676b618ba4e5ffe8ce2ab655270/manga_ocr/ocr.py#L27-L30 34 # see also package_data.patch 35 mkdir manga_ocr/assets 36 cp assets/example.jpg manga_ocr/assets/example.jpg 37 ''; 38 39 patches = [ 40 # instruct setuptool to copy assets/example.jpg to package when building wheel 41 ./package_data.patch 42 ]; 43 44 propagatedBuildInputs = [ 45 # taken from requirements.txt 46 fire 47 fugashi 48 jaconv 49 loguru 50 numpy 51 pillow 52 pyperclip 53 torch 54 transformers 55 unidic-lite 56 ]; 57 58 meta = with lib; { 59 description = "Optical character recognition for Japanese text, with the main focus being Japanese manga"; 60 homepage = "https://github.com/kha-white/manga-ocr"; 61 changelog = "https://github.com/kha-white/manga-ocr/releases/tag/${version}"; 62 license = licenses.asl20; 63 maintainers = with maintainers; [ laurent-f1z1 ]; 64 }; 65}