Free Software Licensing Quiz
mpawlo writes: "How much do you know about free software licensing? Time to find out! In a
quiz presented by the Free Software Foundation you can test your abilities. How should Joan license her web browser?"
← Back to Stories (view on slashdot.org)
Do I get a certificate signed by RMS?
That was complicated and ugly - but considering how much effort some of my Windows IT brethren have been putting into Licensing 6.0, it's not too bad.
Fred wishes to distribute Joan's browser linked to a third-party module. The third party module has the following license:
This code may be freely modified, copied and distributed, so long as no fee is charged for it.
Q: Would this violate the GPL?
A : Yes, because the GPL requires that code linked against GPL-licensed code be licensed under the GPL.
Yes, because the GPL does not allow additional restrictions to be applied to any part of the code.
Doesn't sound very open to me.
A quiz is great for educational purposes, but I think this test only will be mastered (and even taken) by the pro's. Someone (don't look at me!) should construct a test with easier and more general questions on free software and related licensing issues. I guess such an easier test could encourage more people to use and develop free software. The test linked above will most probably discourage newbies from free software rather than encourage them. Great quiz for pro's, though.
Regards
Mikael
Pawlo.com
Why can't you ship source code and the binaries from the same location and get on with your life? One way to comply with the GNU GPL is to make source code available from the same location as the binaries. Websites become unavailable for various reasons and if people have only the binary and a pointer to the source code on a website, it's possible they would not be able to obtain the source code that compiles to the binary they have. This is not unheard of when people distribute binaries via CD. But my experience is most people don't find it difficult to ship source code and binaries from the same location.
Digital Citizen
What in the hell is Joan thinking of linking a web browser to a mail server? I think Joan is automatically disqualified from ever developing software, much less having the ability to determine which license to use.
According to section 3 of the GPL, any program which uses a library which is released under the LGPL can be modified and used internally without releasing it . Clearly, binaries you distribute for download must be licensed to all third parties under the GPL Nevertheless, any program which makes a system call to run separate programs which are released under the GPL must be provided on a physical medium . Of course, any program which makes a system call to run separate programs which are released under the GPL, with a special exception which allows linking proprietary modules under a controlled interface only must be made available with its complete source code under the GNU GPL.
Of course, any program which is merely aggregated to separate programs which are released under a proprietary license can be distributed commercially, but must include a written offer valid for any third party . A consequence is that any program which uses a library which is released under the LGPL must be provided on a physical medium
Let us continue to suppose that modified versions you distribute can be distributed non-commercially, but must include a written offer valid for any third party . On our assumptions, binaries you distribute for download can be modified and redistributed under the GNU LGPL The GPL is a free software license, and therefore any program which uses a library which is released under the LGPL must be made available with its complete source code under the GNU GPL. . However, this assumption is not correct, since any program which makes a system call to run separate programs which are released under a GPL-compatible license can be distributed non-commercially, but must include a written offer valid for any third party With this clarification, any program which uses fork() and exec() to invoke separate programs which are released under a GPL-compatible license can be modified and redistributed under the GNU GPL . It must be emphasized, once again, that all derivative works of free software must be provided on a physical medium
It may be, then, that free software that uses non-free libraries is covered by the GNU GPL . The GPL is a free software license, and therefore any program which uses fork() and exec() to invoke separate programs which are released under a GPL-compatible license can be modified and redistributed under the GNU LGPL Thus, a GPL-covered program must be made available with its complete source code under the GNU GPL. . It must be emphasized, once again, that binaries you distribute for download must be made available with its complete source code under the GNU LGPL.
Of course, any program which makes a system call to run separate programs which are released under a proprietary license is covered by the GNU GPL . The GPL is a free software license, and therefore a program released under a GPL-compatible license can be distributed commercially, but must include a written offer valid for any third party It appears that any program which uses a library covered by a special exception of the GNU GPL can be distributed non-commercially, but must include a written offer valid for any third party . It must be emphasized, once again, that any program which is compiled by GCC must be made available with its complete source code under the GNU GPL. It must be emphasized, once again, that any program which uses fork() and exec() to invoke separate programs which are released under the GPL must be provided on a physical medium . According to section 3 of the GPL, a program which copies part of itself on its output is covered by the GNU LGPL Presumably, any program which makes a system call to run separate programs which are released under the GPL, with a special exception which allows linking proprietary modules under a controlled interface only can be distributed commercially, but must include a written offer valid for any third party . Furthermore, a program released under a GPL-compatible license can be modified and redistributed under the GNU LGPL
I got 7of9! Yes! My final fantasy came true ;-)
Whelp, I got 90% right which I suppose means I understand the basics (these weren't obscure cases) but considering the amount of time it took me I'm going to stick with BSD licensed stuff.
Atleast with that I'm guarenteed that contributions back to software I wrote a majority of won't prevent me from using the damn stuff myself.
Rod Taylor
The example is not silly at all. People do distribute CDs of binaries without source code. The FSF won't sue someone who uses the GNU GPL to license their software in cases where the FSF is not the copyright holder (which is the vast majority of GNU GPL-covered software). Even in cases where the FSF holds the copyright, usually these cases are not settled by lawsuit. Usually infringements are settled by someone pointing out the GPL's terms and asking for compliance (sometimes with the assistance of Eben Moglen, general counsel for the FSF, who said, "[a] quiet initial contact is usually sufficient to resolve the problem.").
Also, the problem doesn't come up merely by not distributing source code with binaries, but by not making it available at all. One can comply with the GPL in ways other than distributing source code with binaries. Distributing both source code and binaries simultaneously from the same location is probably the most convenient way to comply.
It makes sense when you consider that not everyone gives gifts to demonstrate how rich they are. Some people give gifts to show that they care about their friend's wishes. Sometimes this involves buying something, sometimes it involves spending time making something that has no price attached to it. Giving someone a copy of Debian GNU/Linux who can not get it on their own is one way to help them have software freedom.
No, the GPL does not need amending here. People need to be able to excercise all of their software freedoms including the ones that require source code: studying how the program works, adapting it to their needs, improving the program, and releasing their improvements to the community (known as freedoms #1 and #3 in the definition of Free Software). In order to come as close as one can to guaranteeing source code availability and offer reasonable practical alternatives, the GNU GPL includes the terms discussed in the first quiz question.
Digital Citizen
Someone could patent the code they contribute to your project and not license that patent to you. The BSD licenses do nothing to help you with software patents. The GNU GPL covers this situation.
I understand your desire for a simple permissive software license, but ensuring software freedom requires more complex licensing terms than what the BSD licenses provide.
Digital Citizen
Jesus Fuck.
Since when did legal studies become the main concern for computer afficianados?
That quiz has to be a goof. I think Microsoft hacked into FSF's servers to scare people away from open-source.
There is something very, very wrong here.
These legalisms are paralyzing to a fertile, inquisitive mind.
evanchik.net
After taking the quiz I'm quite amazed anybody uses GPL or LGPL'd software to make a business. I can think of a few projects that violate the LGPL that are popular. FLTK seems to violate it, because the author allows static linking of FLTK with commercial applications. Gnocl (a Tcl binding to GNOME/GTK+) violates it because it uses a BSD/Tcl license with code that's based on a LGPL'd library. In short the GPL is a virus. People that use it are greedy. If you really want to make free software release it in the public domain with a clause that says they can't patent any of the code. The GPL and LGPL should be stopped, because they could put an end to being able to make money as a programmer. Months ago I wondered why Microsoft was so upset with the GNU licenses. Now my question has been answered.
The correct answer to question 9 is 1. No one is alleging that FooCorp is infringing any patents.
Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
If I share software with you I can't simply tell you where the source is, I have to give it to you or make a written offer?
Say my sister doesn't have access to the Internet. Given only a URL, how is she supposed to fetch the source code? (Read More...)
Will I retire or break 10K?
I wonder why no VA site ... has posted the news of ESR's Resignation from the VA Software Board of Directors
Did you consider submitting such a story? Your conspiracy theory becomes more credible with a (rejected).
I'm developing a video game to be released under the GNU General Public License. The binary (executable + video and sound assets) will be about 256 KB, and the source code for the executable portion of the file plus the custom build tools is about 256 KB. The problem is that the "source code" for the whole project, as defined by the GPL, may exceed 50 MB (primarily large lossless video and sound files), and because this is my first project, I can't afford very much web space. I can't re-license the software because it uses the LZO compression library, which is licensed under the GNU GPL, not the Lesser GPL. (I can switch to any other packer library with similar speed, but I don't want to have to go all the way back to RLE compression.)
If the source code is several orders of magnitude bigger than the binary and requires manual processing in the build process, how should I distribute my software electronically in order to comply with the letter and spirit of the GNU GPL?
Will I retire or break 10K?
Actually, they don't have the right to put additional constraints on the source code (as specified in the GPL), and unfortunately, a patent is such a constraint, so if FooCorp wants to distribute a patented technology in a GPL'd progam, they have to allow everyone that uses the code to use the technology.
AFAIK, the LGPL not only obligues all static linking versions to be LGPL compliant, but also, if I want to write a non LGPL version (say, a commercial version) of it, the software must be linked at runtime to the library and also be compilable and functional even if the library is not present in the system, that is, if the software doesn't work properly without the library, then should be LGPL too. This is because if the source code can't be compiled without the library headers (this is too C/C++ specific?) then is a derived work and must be LGPL.
So using any LGPL library in commercial software is possible if all the features provided by the library are OPTIONAL and not REQUIRED to work.
We are Turing O-Machines. The Oracle is out there.
Stick the video and sound assets into a seperate file
The target system uses interchangeable ROM cartridges and has only one ROM connector. I don't want the user to have to swap cartridges several times during game play, and I don't want to have to provide two expensive ROM cartridges in each package.
(like iD did with their .pak files with quake)
I'm already storing asset files in .gbfs archives. (The .gbfs format is an archive format I designed, somewhat similar to .tar, .pak, .zip, .jar, .dat used by other programs.) However, because a program on the target system can access only one file (the ROM), I have to concatenate the asset files to the end of the executable. Does concatenating several files count as "linking" if I also provide a tool to extract the individual .exe and .gbfs files?
If you want to (and I presume you do), provide compressed versions of the assets (eg make the asset library a simple zip file).
I already do that, but the assets are already 20 MB zipped before counting the lossy compression used to pack the assets into the pak file. Lossy compression of source code is not permitted by the GPL, as a lossy compressed audio or image file is no longer "the preferred form for making modifications to the work."
If you are concerned about that, just write an exception into your copy of the GPL.
I am not authorized to do that. The program includes a library (M.F.X.J. Oberhumer's LZO) under the GNU GPL, and I am not permitted to link it against anything not under the GPL. I cannot contact Mr. Oberhumer because he does not accept mail not encrypted with PGP, and I cannot use PGP because I don't know anybody who would sign my keys.
If concatenating several files in a reversible manner does not count as "linking," then I don't have a problem.
Will I retire or break 10K?
You have misunderstood what copyright law allows for. This issue has little to do with the GNU GPL and LGPL per se, more to do with how copyright law deals with output of processes and copyright power regarding derivative works. Like any other software license, the GNU GPL and LGPL inherit many things from copyright law, one of them being that they cannot control the licensing of the output of a process (there are exceptions but I'm trying to keep this concise and simple). So, even though gcc is GPL'd, you can compile non-GPL'd software with gcc.
Linking, however, is a different issue. Linking constitutes a derivative work which does fall under the aegis of copyright law. Therefore the license for your derivative work is not completely under your control. Different licenses offer differing levels of permissiveness for creating and distributing derivative works. For example, if you were to distribute your work linked against the LGPL'd GNU C library you would have to follow what the LGPL says for licensing your derivative work. The LGPL does not make you use the LGPL as the license for your derivative work, but it has some say in what the license for your derivative work must allow.
I suggest you read a lot of licenses very carefully and weigh your options. Keep in mind that nobody owes you the ability to make or distribute derivative works. If you are unwilling to agree to the terms of someone's license, write your own code.
Digital Citizen
No, the LGPL was never meant to be a gift to business. That concept is the motivation of another movement, not the Free Software movement. Read the FSF's essay on the LGPL to learn what the LGPL is meant to do.
Also, Microsoft has no valid point regarding the GNU GPL and Microsoft doesn't act in accordance with their lies. Nobody owes them the ability to make derivative works. It is not the Free Software developer's responsibility to make sure software proprietors have code to extend. This is one of the points that separate the Open Source movement (who strongly advocates the X11 and new BSD licenses, both of which allow for proprietary derivatives) and the Free Software movement (which chiefly advocates the GNU GPL, a license that does not allow proprietary derivatives).
You could release your software under the GNU GPL and write derivative code from any GPL-compatible licensed work you wish. You could sell the software and support for the software, even sell warranties for your work. Your competitors will not be able to distribute derivatives of your software without using the GPL for their releases, thus allowing you to share their distributed improvements.
Digital Citizen
Exactly what part of the GNU GPL are you referring to? I'm not aware of the part of the GNU GPL that requires "electronic" distribution. Also, if the work is not a derivative of anything GPL'd, the GNU GPL would not apply to you (assuming you are the copyright holder on this work). It would only apply to those you distribute your work to.
Digital Citizen
I'm not aware of the part of the GNU GPL that requires "electronic" distribution.
But the GPL FAQ states that if the binaries are distributed electronically, the source code must also be distributed electronically. The sheer size of the source code may prohibit me from distributing the software electronically at all.
Also, if the work is not a derivative of anything GPL'd, the GNU GPL would not apply to you (assuming you are the copyright holder on this work)
I am not. Read what I had written: "I can't re-license the software because it uses the LZO compression library, which is licensed under the GNU GPL." The LZO library was written by Markus F.X.J. Oberhumer, who does not have a plain e-mail address.
This is a non-problem if and only if reversibly concatenating an executable with asset files counts as either "mere aggregation" and/or "just data" under the GPL.
Will I retire or break 10K?
So don't distribute your work electronically. Distribute source and binaries together simultaneously by burning both onto CD-Rs. Someone else might volunteer to redistribute the work electronically for you. So much of this issue centers on your erroneous belief that the GNU GPL requires you to distribute electronically.
I did read it, quite carefully. I figured at least one of the following things might have occured to you:
I very much doubt that distributing a single file would count the way you want it to be counted. That's a question for the FSF, albeit a rather academic one considering that this whole issue is a non-problem if you drop the phony electronic distribution requirement (that never really existed) and distribute your program via inexpensive CD-Rs (which have approximately 600MB more capacity than you said you need to distribute your program).
Digital Citizen
Pioneer hackers?
Maybe you misspelled that, and meant "pioneer hacks."
You realize that you are talking about people who copy other people's work & write a POS text editor, don't you.
So don't distribute your work electronically.
Would you get one of, say, the media player apps if you couldn't get it for free online?
So much of this issue centers on your erroneous belief that the GNU GPL requires you to distribute electronically.
I understand that the GNU GPL does not require this, but the behavior of the typical Internet surfer does. The typical Internet surfer would rather just click the little X button in the upper right corner of her browser than order a CD on an impulse. And if I start selling CDs online, I have to pay upwards of $200 per year for an SSL certificate to protect my e-commerce from the man in the middle, don't I?
You could accede to Oberhumer's wishes and try GPG
I have considered this path. However, when I looked into GPG, I found no way of getting my key signed by a prominent GPG user, or even by any GPG user. Isn't that a prerequisite for entering the "web of trust" or whatever they call it?
phony electronic distribution requirement
You try selling a game that doesn't have a downloadable playable demo. Players like to know what they're getting into before they buy something.
Will I retire or break 10K?
The compressed video and sound are fine, as they are playable using the open-source code and can easily be considered the "usual form of the source".
From the GPL: "The source code for a work means the preferred form of the work for making modifications to it." Would you rather make modifications to a sound recording using a single stereo Ogg file, using a single stereo PCM WAV file, or using WAV files of the individual tracks (one per instrument) plus the script for the mixer?
I think in fact you are trying to make a bogus example to show that the GPL won't work. It works fine.
Will I retire or break 10K?
I think in fact you are trying to make a bogus example to show that the GPL won't work. It works fine.
I aimed for Preview but hit Submit. The name of the program is Tetanus On Drugs.
-- yerricdeYes, if it were Free Software and priced reasonably, but that's completely beside the point. This is a market issue, not a problem for the GNU GPL. Ultimately network distribution is something you don't have the budget to do in the way you want to do it. So instead of wallowing in what you can't afford to do, try distributing your program in a way you can afford.
Then this thread was always completely outside the context of the GNU GPL. This thread is becoming less and less apropos for this discussion topic.
Well, if you can't afford that, you'll have to reconsider doing e-commerce that way (maybe you won't do e-commerce at all). This isn't brain surgery and you're not running a huge store. It's also not my responsibility to come up with a viable business plan for you.
Your posts convey no sense of this at all. In fact you tried to take me to task by pointing me to a webpage you thought would corroborate your assumption you could only contact this person via PGP encrypted e-mail. It turns out that wasn't the case; apparently you didn't read that page too closely.
Briefly: No it is not, and if you read documentation on GPG you'll see you what you need to use encrypted and signed e-mail.
But again, there's a more important issue here. You need to ask yourself whether you need to contact Oberhumer at all. I don't think you do. You don't need to obtain another license for Oberhumer's work because you have no genuine problem complying with the GPL. This was the only reason for contact and since this turned out to be another non-problem, the need to contact Oberhumer vanishes.
Welcome to the free market. Nobody owes you bandwidth or storage.
Digital Citizen
I don't see any flame coming this way you slashdot fools. Maybe you should bump my score up. Commander Taco is a loser, and slashdot is beginning to suck. heheheh
If your software is GPL'ed I believe that sourceforge will be more than happy to host your project for you, including multimedia files.
I had thought they would reject my project because I abandoned the first project I tried to host with them. But if not, thanks for the tip. It's much more helpful than jbn-o's defeatist "then don't distribute your software electronically, and if you can't afford SSL, don't sell it online either" stance.
Will I retire or break 10K?