about summary refs log tree commit diff
path: root/pkgs/development/python-modules/ocrmypdf
diff options
context:
space:
mode:
authorRobert Schütz <nix@dotlambda.de>2021-12-04 11:21:21 -0800
committerRobert Schütz <nix@dotlambda.de>2021-12-04 11:49:19 -0800
commitcee0c4a831bf1cf111071ad1ee3929f290de99e7 (patch)
treeb8dc3028eb60df5a3bb636be6fda08db1680cdae /pkgs/development/python-modules/ocrmypdf
parent8bf6b8fe27c4a0759ff74bd83cd95067a4740242 (diff)
python3Packages.ocrmypdf: 12.7.2 -> 13.0.0
Diffstat (limited to 'pkgs/development/python-modules/ocrmypdf')
-rw-r--r--pkgs/development/python-modules/ocrmypdf/default.nix6
-rw-r--r--pkgs/development/python-modules/ocrmypdf/paths.patch61
2 files changed, 16 insertions, 51 deletions
diff --git a/pkgs/development/python-modules/ocrmypdf/default.nix b/pkgs/development/python-modules/ocrmypdf/default.nix
index 71506e60b60e4..368f872bca318 100644
--- a/pkgs/development/python-modules/ocrmypdf/default.nix
+++ b/pkgs/development/python-modules/ocrmypdf/default.nix
@@ -8,7 +8,6 @@
 , importlib-metadata
 , importlib-resources
 , jbig2enc
-, leptonica
 , pdfminer
 , pikepdf
 , pillow
@@ -30,7 +29,7 @@
 
 buildPythonPackage rec {
   pname = "ocrmypdf";
-  version = "12.7.2";
+  version = "13.0.0";
 
   src = fetchFromGitHub {
     owner = "jbarlow83";
@@ -42,7 +41,7 @@ buildPythonPackage rec {
     extraPostFetch = ''
       rm "$out/.git_archival.txt"
     '';
-    sha256 = "sha256-+mh7NgAk7R/94FXjRV+SLy478pZwYLLS8HwCazEbMf4=";
+    sha256 = "sha256-W5RFCWKDIRrsgHZL8uSOQWvEltLbqYAweZkgIZZrSIo=";
   };
 
   SETUPTOOLS_SCM_PRETEND_VERSION = version;
@@ -52,7 +51,6 @@ buildPythonPackage rec {
       src = ./paths.patch;
       gs = "${lib.getBin ghostscript}/bin/gs";
       jbig2 = "${lib.getBin jbig2enc}/bin/jbig2";
-      liblept = "${lib.getLib leptonica}/lib/liblept${stdenv.hostPlatform.extensions.sharedLibrary}";
       pngquant = "${lib.getBin pngquant}/bin/pngquant";
       tesseract = "${lib.getBin tesseract4}/bin/tesseract";
       unpaper = "${lib.getBin unpaper}/bin/unpaper";
diff --git a/pkgs/development/python-modules/ocrmypdf/paths.patch b/pkgs/development/python-modules/ocrmypdf/paths.patch
index 9bfcc72855418..47521e1033eb4 100644
--- a/pkgs/development/python-modules/ocrmypdf/paths.patch
+++ b/pkgs/development/python-modules/ocrmypdf/paths.patch
@@ -1,30 +1,17 @@
 diff --git a/src/ocrmypdf/_exec/ghostscript.py b/src/ocrmypdf/_exec/ghostscript.py
-index 5c357f1b..f459763a 100644
+index 1146cc5f..43f3915c 100644
 --- a/src/ocrmypdf/_exec/ghostscript.py
 +++ b/src/ocrmypdf/_exec/ghostscript.py
-@@ -25,28 +25,7 @@ from ocrmypdf.subprocess import get_version, run, run_polling_stderr
+@@ -40,15 +40,7 @@ For details see:
+ # Most reliable what to get the bitness of Python interpreter, according to Python docs
+ _is_64bit = sys.maxsize > 2 ** 32
  
- log = logging.getLogger(__name__)
- 
--missing_gs_error = """
-----------------------------------------------------------------------
--This error normally occurs when ocrmypdf find can't Ghostscript.
--Please ensure Ghostscript is installed and its location is added to
--the system PATH environment variable.
--
--For details see:
--    https://ocrmypdf.readthedocs.io/en/latest/installation.html
-----------------------------------------------------------------------
--"""
--
 -_gswin = None
 -if os.name == 'nt':
--    _gswin = which('gswin64c')
--    if not _gswin:
--        _gswin = which('gswin32c')
--        if not _gswin:
--            raise MissingDependencyError(missing_gs_error)
--    _gswin = Path(_gswin).stem
+-    if _is_64bit:
+-        _gswin = 'gswin64c'
+-    else:
+-        _gswin = 'gswin32c'
 -
 -GS = _gswin if _gswin else 'gs'
 -del _gswin
@@ -86,19 +73,19 @@ index ca8a4542..d0544174 100644
              '--skip-if-larger',
              '--quality',
 diff --git a/src/ocrmypdf/_exec/tesseract.py b/src/ocrmypdf/_exec/tesseract.py
-index 33ead41e..5840f7c1 100644
+index a3688f65..61f54465 100644
 --- a/src/ocrmypdf/_exec/tesseract.py
 +++ b/src/ocrmypdf/_exec/tesseract.py
-@@ -78,7 +78,7 @@ class TesseractVersion(StrictVersion):
+@@ -75,7 +75,7 @@ class TesseractVersion(StrictVersion):
  
  
- def version():
+ def version() -> str:
 -    return get_version('tesseract', regex=r'tesseract\s(.+)')
 +    return get_version('@tesseract@', regex=r'tesseract\s(.+)')
  
  
  def has_user_words():
-@@ -100,7 +100,7 @@ def get_languages():
+@@ -97,7 +97,7 @@ def get_languages():
          msg += output
          return msg
  
@@ -107,7 +94,7 @@ index 33ead41e..5840f7c1 100644
      try:
          proc = run(
              args_tess,
-@@ -122,7 +122,7 @@ def get_languages():
+@@ -119,7 +119,7 @@ def get_languages():
  
  
  def tess_base_args(langs: List[str], engine_mode: Optional[int]) -> List[str]:
@@ -117,7 +104,7 @@ index 33ead41e..5840f7c1 100644
          args.extend(['-l', '+'.join(langs)])
      if engine_mode is not None:
 diff --git a/src/ocrmypdf/_exec/unpaper.py b/src/ocrmypdf/_exec/unpaper.py
-index 3c3ae72c..d269966a 100644
+index aec365c2..cc5cb7e4 100644
 --- a/src/ocrmypdf/_exec/unpaper.py
 +++ b/src/ocrmypdf/_exec/unpaper.py
 @@ -31,7 +31,7 @@ log = logging.getLogger(__name__)
@@ -138,23 +125,3 @@ index 3c3ae72c..d269966a 100644
  
      with TemporaryDirectory() as tmpdir:
          input_pnm, output_pnm = _setup_unpaper_io(Path(tmpdir), input_file)
-diff --git a/src/ocrmypdf/leptonica.py b/src/ocrmypdf/leptonica.py
-index e4814f1a..fdaf7ea4 100644
---- a/src/ocrmypdf/leptonica.py
-+++ b/src/ocrmypdf/leptonica.py
-@@ -33,14 +33,7 @@ from ocrmypdf.lib._leptonica import ffi
- 
- logger = logging.getLogger(__name__)
- 
--if os.name == 'nt':
--    from ocrmypdf.subprocess._windows import shim_env_path
--
--    libname = 'liblept-5'
--    os.environ['PATH'] = shim_env_path()
--else:
--    libname = 'lept'
--_libpath = find_library(libname)
-+_libpath = '@liblept@'
- if not _libpath:
-     raise MissingDependencyError(
-         """