Copyright and GPL Licences

Posted on 2004-11-08
Medium Priority
Last Modified: 2010-04-06
Ive been reading over GPL licences and im still a bit confused. Actully I never really looked into it until a few nights ago.

Ive written a quite a few modules for my company for GPL licensed software that we use in house, mostly for oscommerce. Ive been thinking about offering a few up as contribs for free, but there are a few that I spent allot of time on and would like to sell.

From what I gather, I can charge for downloading the software, but once someone downloads a copy, they can make a few minor changes, and then sell the code, or offer the code for free. Is this correct? Can I copyright my contributions so at least I get credit, is there anyway that I can maintain a licence on the software so that it cannot be redistributed without my permission?

Can someone give me the inside scoop please? also usually put headers in my code like

// designed by (my name) (date released) (version) //

but was also wondering if theres anywhere I can get good examples of copyright disclaimers/ or template licence agreements for my code.

Thanks so much for your time guys. I really do appreciate it.
Question by:redcable
1 Comment

Accepted Solution

eyeh8u earned 750 total points
ID: 12523140
You may charge for software licensed under the GPL, however, people can then re-distribute that code free of charge. For example, Red Hat is under the GPL, they can charge for the boxed copies of RedHat that youmight buy in a store as they see fit, but equally, you as the end user may then copy the CDs and give them to anyone free, or offer the content for download etc.

They don't even have to change your code to pass it on.

Yes, you can copyright your contributions/modules/code. The GPL doesn't concern itself with the copyright of your code, just the licensing of it's use.

AFAIK, you can however write extensions to a system without issuing it under the same license. So for example, Geeklog, which is I beleive GPL, you can write a plugin for it and charge for it releasing it under any license you like. I'm not 100% sure how the licensing restrictions apply to modifications of code. PROVIDED that plugin isn't based on the original product. I.e. it's your work, the killer clause is 2.

"2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:

a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.

b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.

c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.

In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.


In other words anything you build based on some GPL software you must issue FOC under the GPL. However, you maintain copyright on portions you have written.

AS for good examples of copyrights/disclaimers, just grab them from the header in any GPL product. I change my headers based on what I am working on, I use headers consistent with the style used in the core product for any modules intended to work with a product.

Makes third parties more comfortable.

Featured Post

How to Use the Help Bell

Need to boost the visibility of your question for solutions? Use the Experts Exchange Help Bell to confirm priority levels and contact subject-matter experts for question attention.  Check out this how-to article for more information.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Preface This is the third article about the EE Collaborative Login Project. A Better Website Login System (http://www.experts-exchange.com/A_2902.html) introduces the Login System and shows how to implement a login page. The EE Collaborative Logi…
Browsers only know CSS so your awesome SASS code needs to be translated into normal CSS. Here I'll try to explain what you should aim for in order to take full advantage of SASS.
Viewers will learn about basic arrays, how to declare them, and how to use them. Introduction and definition: Declare an array and cover the syntax of declaring them: Initialize every index in the created array: Example/Features of a basic arr…
Video by: Mark
This lesson goes over how to construct ordered and unordered lists and how to create hyperlinks.
Suggested Courses

839 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question