Johannes Meixner <jsmeix at suse.de> writes: > Hello, > > On Jun 6 16:40 Alessandro Zummo wrote (shortened): >> http://www.gnu.org/licenses/gpl-faq.html#FSWithNFLibs > > As far as I see, it seems to be allowed from the legal point > of view to have free software that uses non-free libraries > because they only say that the program won't be fully usable > or not usable at all in a free environment but they don't > say it violates the GPL.
This depends on the respective license conditions of the free and non-free parts. If all of the conditions are not mutually exclusive, then there is no problem license wise. If even only two of the conditions are mutually exclusive, you have a license violation on your hands. The above goes for any kind of combination where multiple licenses are involved, not just when combining with GPL'd software. > But what does "If it depends on a non-free library to run at all, > it cannot be part of a free operating system such as GNU" mean? > > Is "cannot be part of GNU" meant as a license violation or > just that it cannot be included in a "free operating system" > simply because it is useless? The latter. If something that requires non-free parts to operate were added to a free operating system, that operating system automatically becomes non-free. Please remember, the GNU project takes freedom seriously. If there is one REQUIRED non-free component, the whole thing is no longer free. Any free operating system needs to be 100% free. Anything less would simply not be free. > But why can't there be a program in a "free operating system" > which requires a proprietary library which checks if the > library file is there before it dlopens it and if the library > file is not installed, it shows a message where to get it > (e.g. where to download it - or perhaps it even runs a > download user GUI with appropriate license information). If said program would be free-as-in-freedom, that program could be part of a free operating system, license wise. However, as it exists solely to allow the user to make their operating system non-free, it is very likely to attract a fair bunch of flac from the die-hard free software corners. > For example a GPL media player which supports only a proprietary > media format. GNU folks will write a free library to support the media format (as they do with gnash, a free flash player) or advocate alternative, free formats (as they do with ogg/vorbis). > Such a program would be even useful without the proprietary library > installed because it would show the user a message where to get the > missing part. Of course the proprietary library might be not > available for all hardware architectures but this does not mean that > such a GPL media player is useless in any case. Of course all > proprietary media formats and all proprietary device communication > protocols are against the intention of a "Free World" but this does > not mean that programs for such formats/protocols are useless. If the only use of the program is telling the user how to sacrifice one's freedom in the interest of convenience, the program is not useful in a GNU world. Quite on the contrary, it is decidedly counter-productive to the GNU project's cause. > They even say: > --------------------------------------------------------------- > If the program is already written using the non-free library, > perhaps it is too late to change the decision. You may as well > release the program as it stands, rather than not release it. > --------------------------------------------------------------- So others can take a look at replacing the non-free components and benefit from the effort that went into writing the rest of the program? > This seems to indicate that free software that uses non-free > libraries is in compliance with the GPL from the legal point > of view. IF AND ONLY IF the license conditions of all the parts involved are not mutually exclusive. Please refrain from making such unqualified statements. They are misleading. In general, the combination of GPL'd software with non-free libraries results in mutually exclusive license conditions. That's why the library gets labelled non-free in the first place. Only if the license conditions of the GPL'd parts are changed to add exceptions enabling use with the non-free library can you resolve the mutually exclusive conditions. Once you do that, the GPL'd parts are no longer GPL. They become GPL + exception. The GNU Coding Standards[1] even mention some notation in the section on the --version option[2] where they list GPL/Guile and GPL/Ada. [1] http://www.gnu.org/software/automake/manual/standards.html [2] http://www.gnu.org/software/automake/manual/standards.html#g_t_002d_002dversion > Of course this is only what I perceive right now from what > I read there and of course I am not a lawyer! Hope this helps, -- Olaf Meeuwissen FLOSS Engineer -- AVASYS Corporation FSF Associate Member #1962 sign up at http://member.fsf.org/