Re: Ghostscript CMap files
On 01/25/2011 01:38 AM, Jonas Smedegaard wrote:
On Mon, Jan 24, 2011 at 11:30:31PM +0100, Till Kamppeter wrote:
On 01/24/2011 09:04 PM, Jonas Smedegaard wrote:
I noticed that recent Ghostscript packaging for [Ubuntu] dropped the
indirection of CMap files.
I am not knowledgeable in DeFoMa, but recent changelog entry of
gs-cjk-resource seems to indicate that even dropping DeFoMa it still
makes sense to preserve the indirection.
Ghostscript 9 made progress in releasing CMap files under a DFSG-free
license, but still some of them need to be stripped, so I suspect
some users still rely on gs-cjk-resource for their needs with
The use of Ghostscript's CMap file solves some non-CJK bugs:
This one seem to be an issue of broken DeFoMa hints, not lack of CMap
files. Sure ripping out DeFoMa support helps there, but that is a
different issue than the one I raise here, I believe.
So the first thing to do is to cleanly remove DeFoMa support from the
gs-cjk-resource and cmap-adobe-japan1 packages.
This one seems to also solvable by installing gs-cjk-resource.
So this package should be a dependency of Ghostscript. As it also seems
to contain non-CJK resources it should be renamed to ghostscript-cmaps.
My suggestion is symlinking the CMap files of gs-cjk-resource into the
CMap directory of Ghostscript or by simply letting them get installed
into Ghostscript's CMap directory. If the files are already shipped by
Ghostscript, the gs-cjk-resource and/or cmap-adobe-japan1 packages
will get superfluous and should get removed from Debian.
The origin of those CMap files is Adobe, not Ghostscript, and they are
usable for other purposes that with Ghostscript.
So we need to check whether the packages gs-cjk-resource and
cmap-adobe-japan1 really contain all CMaps with come with Ghostscript.
AFAIK there are two CMaps which come from Artifex, which should stay
part of Ghostscript. They should not get removed by the repackaging and
should be placed in an appropriate directory so that Ghostscript works
correctly together with gs-cjk-resource and cmap-adobe-japan1.
Note that according to the licenses in the debian/copyright files of
gs-cjk-resource and cmap-adobe-japan1 all contained files are free
software provided by Adobe.
True. I will now make ghostscript depend on gs-cjk-resource - which will
then recommend the others (not only the one for japanese).
OK. If all what I mentioned above is solved we can maintain it this way.
As the files stripped from Ghostscript are non-free files from Adobe,
Another possibility is that licensing wasn't examined very closely and
the exact same files should be stripped as has been in ghostscript after
my relatively recent examination.
The gs-cjk-resource and cmap-adobe-japan1 need to be checked whether
they really contain only free files.
it looks like for me the gs-cjk-resource and cmap-adobe-japan1 do not
provide the functionality of the stripped files.
I agree here.
The stripped proprietary CMap files of Ghostscript address only very
old CJK PDF files, of the Adobe Acrobat Reader 3-6 generation. We
would need a sample file to see whether gs-cjk-resource and
cmap-adobe-japan1 would be able to make these files rendered.
Yes, that would be nice. Failing that I still see it as relevant to
maintain integrity between ghostscript and gs-cjk-resource.
Are you certain your change do not negatively affect users of
gs-cjk-resource? If so, please elaborate on what more detailed this
change consist of, so that I might adopt it for the Debian packaging.
My change's intention is to use Ghostscript's upstream source as far
as possible, to make it easier to pass bugs reported to us to the
upstream developers and also to get fixes and changes done and tested
by the Ghostscript developers. The gs-cjk-resource and
cmap-adobe-japan1 should be modified to not duplicate any of the files
which ship with Ghostscript and to add files which are useful.
I find it more important to track true source of code than to keep most
possible of Ghostscript released source bundles intact. So it seems we
do not share intend here.
I agree with you. So we should
- rename gs-cjk-resource to cmap-adobe
- make sure that gs-cjk-resource (cmap-adobe) and cmap-adobe-japan1 are
really free od DeFoMa remainders
- make sure that all CMaps shipping with Ghostscript are provided by
gs-cjk-resource (cmap-adobe) and cmap-adobe-japan1 and missing CMaps
like the Artifex ones provided by Ghostscript and installed into a
- make sure that gs-cjk-resource (cmap-adobe) and cmap-adobe-japan1 do
not ship non-free CMaps.
- Ghostscript depends on the packages which provide all needed CMaps, so
that the installed system contains all CMaps which an upstream-installed