Date: Wednesday, December 20, 2017 @ 03:27:25 Author: heftig Revision: 313377
9.22-4 Added: ghostscript/trunk/ghostscript-9.22-fix-Fontmap.GS.patch ghostscript/trunk/ghostscript-9.22-restore-flushpage.patch Modified: ghostscript/trunk/PKGBUILD ------------------------------------------+ PKGBUILD | 16 +++++-- ghostscript-9.22-fix-Fontmap.GS.patch | 63 +++++++++++++++++++++++++++++ ghostscript-9.22-restore-flushpage.patch | 28 ++++++++++++ 3 files changed, 104 insertions(+), 3 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2017-12-20 03:00:01 UTC (rev 313376) +++ PKGBUILD 2017-12-20 03:27:25 UTC (rev 313377) @@ -4,7 +4,7 @@ pkgbase=ghostscript pkgname=(ghostscript ghostxps ghostpcl) pkgver=9.22 -pkgrel=3 +pkgrel=4 pkgdesc="An interpreter for the PostScript language" url="https://www.ghostscript.com/" arch=('x86_64') @@ -14,12 +14,22 @@ 'openjpeg2') makedepends=('gtk3' 'gnutls' 'glu' 'freeglut') # https://github.com/ArtifexSoftware/ghostpdl-downloads/releases -source=(https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs${pkgver/./}/ghostpdl-${pkgver}.tar.xz) -sha256sums=('f4e46bc1f8285a61ab036007705fc2b532cc40f4448fe6bc156bd130733f306b') +source=(https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs${pkgver/./}/ghostpdl-${pkgver}.tar.xz + ghostscript-9.22-fix-Fontmap.GS.patch ghostscript-9.22-restore-flushpage.patch) +sha256sums=('f4e46bc1f8285a61ab036007705fc2b532cc40f4448fe6bc156bd130733f306b' + '77018e388fb56761eb3d8966b3fe0d6f2313c17964e38077395b34e39549551c' + '22156c892ea27572386f5211f51a10a17079a9974ded9ec9af3f37a93a1bb8ca') prepare() { cd ghostpdl-${pkgver} + # https://bugs.archlinux.org/task/56778 + # https://bugzilla.redhat.com/show_bug.cgi?id=1517518 + patch -Np1 --no-backup-if-mismatch -i ../ghostscript-9.22-fix-Fontmap.GS.patch + + # http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=19ebb5f1f497b6f2d50fe13d17d3e627dfb6c868 + patch -Np1 --no-backup-if-mismatch -i ../ghostscript-9.22-restore-flushpage.patch + # force it to use system-libs rm -r cups/libs expat freetype ijs jbig2dec jpeg lcms2 libpng openjpeg tiff zlib Added: ghostscript-9.22-fix-Fontmap.GS.patch =================================================================== --- ghostscript-9.22-fix-Fontmap.GS.patch (rev 0) +++ ghostscript-9.22-fix-Fontmap.GS.patch 2017-12-20 03:27:25 UTC (rev 313377) @@ -0,0 +1,63 @@ +From efc24229b0ba4b2f6a39fe89a4c9c576dbe7e124 Mon Sep 17 00:00:00 2001 +From: "David Kaspar [Dee'Kej]" <[email protected]> +Date: Mon, 27 Nov 2017 10:30:52 +0100 +Subject: [PATCH] Bug 698784: Fix the alias for Helvetica-Narrow-Bold-Oblique + +Init/Fontmap.GS: + +There was a misalignment between the filename of the +NimbusSansNarrow-BdOblique and its /Fontname in the T1 font itself. + +Filename: NimbusSansNarrow-BdOblique +/Fontname: /NimbusSansNarrow-BoldOblique + +This worked correctly if the fonts were located directly in +/usr/share/ghostcript/Resources/Font folder on the filesystem. + +However, on Fedora we are using /usr/share/fonts/urw-base35/ folder, +which is part of Ghostscript's Search Path. In this case it was +causing the Ghostscript being unable to locate the correct font, thus +crashing while opening any document containing Helvetica Narrow Bold +Oblique font... + +*In addition*, rename the font file so it matches. +--- + ...busSansNarrow-BdOblique => NimbusSansNarrow-BoldOblique} | Bin + Resource/Init/Fontmap.GS | 2 +- + psi/psromfs.mak | 2 +- + 3 files changed, 2 insertions(+), 2 deletions(-) + rename Resource/Font/{NimbusSansNarrow-BdOblique => NimbusSansNarrow-BoldOblique} (100%) + +diff --git a/Resource/Font/NimbusSansNarrow-BdOblique b/Resource/Font/NimbusSansNarrow-BoldOblique +similarity index 100% +rename from Resource/Font/NimbusSansNarrow-BdOblique +rename to Resource/Font/NimbusSansNarrow-BoldOblique +diff --git a/Resource/Init/Fontmap.GS b/Resource/Init/Fontmap.GS +index 7770c67..cbda218 100644 +--- a/Resource/Init/Fontmap.GS ++++ b/Resource/Init/Fontmap.GS +@@ -96,7 +96,7 @@ + /Helvetica-Bold /NimbusSans-Bold ; + /Helvetica-BoldOblique /NimbusSans-BoldItalic ; + /Helvetica-Narrow-Bold /NimbusSansNarrow-Bold ; +-/Helvetica-Narrow-BoldOblique /NimbusSansNarrow-BdOblique ; ++/Helvetica-Narrow-BoldOblique /NimbusSansNarrow-BoldOblique ; + /Helvetica-Narrow /NimbusSansNarrow-Regular ; + /Helvetica-Narrow-Oblique /NimbusSansNarrow-Oblique ; + /Helvetica /NimbusSans-Regular ; +diff --git a/psi/psromfs.mak b/psi/psromfs.mak +index cbb1163..34e5b5f 100644 +--- a/psi/psromfs.mak ++++ b/psi/psromfs.mak +@@ -333,7 +333,7 @@ PS_FONT_DEPS=\ + $(PSRESDIR)$(D)Font$(D)NimbusRoman-Regular \ + $(PSRESDIR)$(D)Font$(D)NimbusSans-Bold \ + $(PSRESDIR)$(D)Font$(D)NimbusSans-BoldItalic \ +- $(PSRESDIR)$(D)Font$(D)NimbusSansNarrow-BdOblique \ ++ $(PSRESDIR)$(D)Font$(D)NimbusSansNarrow-BoldOblique \ + $(PSRESDIR)$(D)Font$(D)NimbusSansNarrow-Bold \ + $(PSRESDIR)$(D)Font$(D)NimbusSansNarrow-Oblique \ + $(PSRESDIR)$(D)Font$(D)NimbusSansNarrow-Regular \ +-- +2.9.5 + Added: ghostscript-9.22-restore-flushpage.patch =================================================================== --- ghostscript-9.22-restore-flushpage.patch (rev 0) +++ ghostscript-9.22-restore-flushpage.patch 2017-12-20 03:27:25 UTC (rev 313377) @@ -0,0 +1,28 @@ +diff -up ghostscript-9.22/Resource/Init/gs_init.ps.restore-flushpage ghostscript-9.22/Resource/Init/gs_init.ps +--- ghostscript-9.22/Resource/Init/gs_init.ps.restore-flushpage 2017-11-29 14:58:35.449534983 -0500 ++++ ghostscript-9.22/Resource/Init/gs_init.ps 2017-11-29 14:59:25.903397616 -0500 +@@ -2163,7 +2163,7 @@ SAFER { .setsafeglobal } if + /.type1execchar /.type2execchar /.type42execchar /.setweightvector /.getuseciecolor /processcolors /.includecolorspace + /.execn /.instopped /.stop /.stopped /.setcolorrendering /.setdevicecolorrendering /.buildcolorrendering1 /.builddevicecolorrendering1 + /.TransformPQR_scale_WB0 /.TransformPQR_scale_WB1 /.TransformPQR_scale_WB2 /.currentoverprintmode /.copydevice2 +-/.devicename /.doneshowpage /flushpage /.getbitsrect /.getdevice /.getdefaultdevice /.getdeviceparams /.gethardwareparams ++/.devicename /.doneshowpage /.getbitsrect /.getdevice /.getdefaultdevice /.getdeviceparams /.gethardwareparams + /makewordimagedevice /.outputpage /.putdeviceparams /.setdevice /.currentshowpagecount + /.setpagedevice /.currentpagedevice /.knownundef /.setmaxlength /.rectappend /.initialize_dsc_parser /.parse_dsc_comments + /.fillCIDMap /.fillIdentityCIDMap /.buildcmap /.filenamelistseparator /.libfile /.getfilename +@@ -2181,6 +2181,15 @@ SAFER { .setsafeglobal } if + /.systemvmSFD /.settrapparams /.currentsystemparams /.currentuserparams /.getsystemparam /.getuserparam /.setsystemparams /.setuserparams + /.checkpassword /.locale_to_utf8 /.currentglobal /.gcheck /.imagepath + ++% Used by a free user in the Library of Congress. Apparently this is used to ++% draw a partial page, which is then filled in by the results of a barcode ++% scanner and SQL database lookup. Its not clear to us exactly why this needs to be ++% done as a partial page, but its easiest to restore the operator, and it seems like ++% its a reasonably safe operator to restore, for the *very* few devices on which ++% it will have any effect. Currently this uses the 'sync_outptu' device method ++% to transfer the partial page, in future we may use a spec_op instead. ++%/flushpage ++ + % Used by our own test suite files + %/.fileposition %image-qa.ps + %/.makeoperator /.setCPSImode % gs_cet.ps
