On Tue, 24 Jan 2023, fab...@greffrath.com wrote:

> The AFDKO is Apache licensed. Would it be possible to install the
> afdko-bin package and use its /usr/libexec/afdko/detype1 and
> /usr/libexec/afdko/type1 scripts to disassemble and reassemble the
> font files? And will this probably replace the code in question with
> its Apache licensed pendants?

On a first try I wasn't able to run type1 on the detype1 output (fails
with "bad token in charsting"), but didn't dig deeper with this.


Instead I compared the problematic code fragment from the following book:
https://web.archive.org/web/20150321034514/http://partners.adobe.com/public/developer/en/font/T1_SPEC.PDF
Appendix 3, page 95 (of the book) page 101 (of the PDF).

with the output of t1disasm of the urw-base35 fonts.

While the code fragment in the book is 181 lines a diff with one of
the urw-base35 fonts shows only the following copied code lines:

{systemdict /internaldict known not
{pop 3}
{1183615869 systemdict /internaldict get exec
dup /startlock known
{/startlock get exec}
{dup /strtlck known
{/strtlck get exec}
{pop 3}
ifelse}
ifelse}
ifelse
} executeonly
] noaccess def

Since it contains the string "startlock get exec" it triggers the
lintian error.

I searched for the number (1183615869) in afdko source and found the
following file:
https://github.com/adobe-type-tools/afdko/blob/develop/c/shared/source/t1write/t1write_hintothers.h

/* Copyright 2014 Adobe Systems Incorporated (http://www.adobe.com/). All 
Rights Reserved.
   This software is licensed as OpenSource, under the Apache License, Version 
2.0.
   This license is available at: http://opensource.org/licenses/Apache-2.0. */

"/OtherSubrs[{}{}{}{systemdict/internaldict known not{pop 3}{1183615869\n"
"systemdict/internaldict get exec dup/startlock known{/startlock get 
exec}{dup\n"
"/strtlck known{/strtlck get exec}{pop 3}ifelse}ifelse}ifelse}executeonly]def\n"


As far as I can see that is exactly the code, that I found in the
urw-base35 fonts and that triggers the lintian error.

And as the header says, it is under Apache 2.0 license.

So lintian is wrong here and we can add lintian-overrides for this.

According to
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=665334#173
Apache-2.0 should be compatible with GPL-3 (the license of
fonts-urw-base35), so everything should be okay with this.


After fixing some issues in check-fonts-urw-base35-scale and adding
lintian-overrides (after some typos) this may be ready for a merge
request soon...

Greetings
Roland

Reply via email to