mbox series

[bug#71787,00/12] Update and unbundle ghostscript and mupdf

Message ID 20240626192505.12401-1-david.elsing@posteo.net
Headers show
Series Update and unbundle ghostscript and mupdf | expand

Message

David Elsing June 26, 2024, 7:24 p.m. UTC
Hello,

this patch series unbundles the remaining dependencies of ghostscript and
mupdf and updates them to the latest version.

I also switched the sources of ghostscript and mupdf to the Git repository, as
the tarball contains some autogenerated files and (different) bundled
dependencies. For the licenses of the ghostscript source files, the Debian
package [1] has a very detailed list.

As the tesseract package has many dependencies (including a circular
dependency with ghostscript) and depends on the very large
tesseract-ocr-tessdata-fast package, I decided to disable tesseract for the
main packages and make package variants instead.

Previously, the ghostscript package was modified to omit non-reproducible
metadata when the GS_GENERATE_UUIDS environment variable was set to "0" or
"no". In the meantime, suitable options have been added upstream and I made a
patch to enable them depending on GS_GENERATE_UUIDS.

Building the ghostscript documentation transitively depends on ghostscript itself.
Therefore, I made a separate package (also for the missing Python dependencies).

[1] https://packages.debian.org/en/sid/ghostscript

David Elsing (12):
  gnu: Add lcms2mt.
  gnu: Add memento.
  gnu: Add extract.
  gnu: ijs: Remove unneeded files and build shared library.
  gnu: ghostscript: Unbundle dependencies and remove non-free parts.
  gnu: Add ghostscript/tesseract.
  gnu: mupdf: Update to 1.24.4 and unbundle remaining dependencies.
  gnu: Add mupdf/tesseract.
  gnu: Add python-pymupdf.
  gnu: Add python-svglib.
  gnu: Add python-rst2pdf.
  gnu: Add ghostscript-documentation.

 gnu/local.mk                                  |   8 +-
 gnu/packages/c.scm                            |  41 ++
 gnu/packages/ghostscript.scm                  | 359 ++++++++++++++----
 .../patches/extract-shared-library.patch      |  59 +++
 .../ghostscript-CVE-2023-36664-fixup.patch    |  56 ---
 .../patches/ghostscript-CVE-2023-36664.patch  | 142 -------
 .../patches/ghostscript-leptonica-hurd.patch  |  78 ----
 .../ghostscript-no-header-creationdate.patch  |  46 ---
 .../patches/ghostscript-no-header-id.patch    |  57 ---
 .../patches/ghostscript-no-header-uuid.patch  |  49 ---
 .../patches/ghostscript-reproducibility.patch |  26 ++
 gnu/packages/pdf.scm                          | 141 +++++--
 gnu/packages/python-xyz.scm                   | 143 +++++++
 13 files changed, 651 insertions(+), 554 deletions(-)
 create mode 100644 gnu/packages/patches/extract-shared-library.patch
 delete mode 100644 gnu/packages/patches/ghostscript-CVE-2023-36664-fixup.patch
 delete mode 100644 gnu/packages/patches/ghostscript-CVE-2023-36664.patch
 delete mode 100644 gnu/packages/patches/ghostscript-leptonica-hurd.patch
 delete mode 100644 gnu/packages/patches/ghostscript-no-header-creationdate.patch
 delete mode 100644 gnu/packages/patches/ghostscript-no-header-id.patch
 delete mode 100644 gnu/packages/patches/ghostscript-no-header-uuid.patch
 create mode 100644 gnu/packages/patches/ghostscript-reproducibility.patch