Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Linking fbpdf against mupdf may be a copyright violation #10

Open
mgorny opened this issue Aug 18, 2020 · 8 comments
Open

Linking fbpdf against mupdf may be a copyright violation #10

mgorny opened this issue Aug 18, 2020 · 8 comments

Comments

@mgorny
Copy link

mgorny commented Aug 18, 2020

Disclaimer: IANAL, *GPL is horribly controversial and I might be wrong (but I don't think I am)

mupdf is licensed under AGPL terms. Per these terms, any program linking against it (either statically or dynamically), must also be released as AGPL. Releasing fbpdf under BSD is a violation of mupdf license. For this reason, Artifex could extort you or your users into buying a commercial mupdf license.

Now, I'm not sure how to fix it. The 'obvious' solution would be to license fbpdf separately as AGPL. However, I'm not sure if AGPL doesn't require covering other files in the package, particularly the Makefile. Since you have poppler-based fbpdf2, removing fbpdf or splitting it to a separate package may be a better option.

@aligrudi
Copy link
Owner

aligrudi commented Aug 18, 2020 via email

@mgorny
Copy link
Author

mgorny commented Aug 18, 2020

Is there any problem with releasing the source code (not the binary package) under ISC? Note that Fbpdf is under ISC now.

To the best of my knowledge, yes. AGPL explicitly states that anything using it must be AGPL as well. There is some provision for using plain GPL but I'm not sure when or how it applies. Though I don't think AGPL vs GPL makes any real difference for you here.

Also, since Fbpdf uses ISC, can binary packages be released under another license like AGPL? If so, distributions can use such licenses to resolve the issue.

I'm not sure. Technically, I don't think there's a problem in distribution 'forking' this project to relicense it into AGPL. However, it's a bit unclear if you can really relicense something if you don't make any changes. From my experience, Gentoo licenses team has been reluctant to relicense stuff on our end, and instead preferred that licensing issues are resolved upstream.

@mgorny
Copy link
Author

mgorny commented Aug 18, 2020

Maybe a bit more explanation is in place. The idea behind GPL/AGPL is that GPL-ed software must never ever be used in proprietary software. That's why these licenses require that anything forking, incorporating or linking to GPL libraries must also use the same license.

Now, permissive licenses such as BSD/ISC have no similar restriction. It is entirely permitted to fork fbpdf and release its modified version as a proprietary program. This is where a conflict arises. You could basically say that your license is giving your users right that you're not permitted to give because of the underlying license.

As I've said, I'm not a lawyer. I'm not sure if somebody can sue you for doing this. However, there is a real danger that an user (or distro packager) will miss the problem and assume this package is actually entirely fine as ISC, and eventually someone will fall into the trap of not meeting AGPL requirements somewhere.

What's even more worrying is that Artifex is one of the companies that offer commercial licenses in parallel to AGPL. This means that they do have an interest in selling commercial licenses to people who happened to violate AGPL.

@aligrudi
Copy link
Owner

aligrudi commented Aug 18, 2020 via email

@aligrudi
Copy link
Owner

aligrudi commented Aug 18, 2020 via email

@mgorny
Copy link
Author

mgorny commented Aug 19, 2020

Well, your previous suggestion of dual-licensing makes sense to me. However, if you go that way, please make it explicitly clear that when linking to AGPL-licensed versions of mupdf (doubt any other will ever happen but sure) only AGPL is applicable.

Also, I'm pretty sure all GNU licenses require you to include the license with sources, and ask people to mail them if you don't. A common layout for this would to have two files, COPYING.ISC, COPYING.AGPL and an explanation in plain COPYING.

@mgorny
Copy link
Author

mgorny commented Aug 23, 2020

I've done some research and I was wrong a bit. I'm sorry for that.

According to https://www.gnu.org/licenses/gpl-faq.en.html#IfLibraryIsGPL, it's fine to release all sources as ISC, and then only indicate that the final executable is AGPL (if it links to AGPL mupdf). Dual-licensing is not strictly necessary.

@aligrudi
Copy link
Owner

aligrudi commented Aug 23, 2020 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants