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