Can someone help me by explaining the GPL in plain English? I'm trying to understand what I can and can't do. If I modify existing core modules, am I prohibited from selling those? What if I create a new module?

What if I build and customize an entire Drupal-based system for someone, can I sell that (or just "services" based around it)?

If I make code available freely, am I then also allowed to sell it (like Red Hat does)? If that is true, how prominent must I make the link to the free code?

Thanks. Right now I have nothing to sell, but I'd like to know my options going forward.

Comments

killes@www.drop.org’s picture

If you modify Drupal code you need to put your changes under the GNU public licence (GPL) because Drupal is released under this licence and the licence incloses this terms.

You are free to sell your changes, but the receiver might chose to give them away for free to third parties.

If you have to put modules that you write from scratch under the GPL is a bit unclear to me.

--
If you have troubles with a particular contrib project, please consider to file a support request. Thanks.

bertboerland’s picture

regarding modules, linus writings might be a good start. more links can be found here. I am afraid there is not one answer, but I would say, modules under drupal need to be GPL-ed.

--

groets


bertb

--
groets
bert boerland

Steven’s picture

The GPL is mostly about binaries/executables vs the source. E.g. you may not take a GPL application, change it, compile it, and give away or sell the resulting binary without providing the source code.

You can change a GPL program, use it for yourself, and keep it secret. This is especially important for websites: using Drupal on a website is not the same as distributing Drupal: you are free to make your own sites with a customized Drupal, and keep the code behind it secret.

However, anyone you give the code to has the same rights as you because of the GPL: they can give the changed program away for free if they want. The GPL prohibits imposing restrictions on your clients.

This makes selling code harder: you can more easily make money on services (installing, technical support, training, custom development, etc) or distribution (packaging, cd/dvd's, etc).

If I make code available freely, am I then also allowed to sell it (like Red Hat does)? If that is true, how prominent must I make the link to the free code?"

This is not really important for PHP, because for PHP, the source code is the program. However, you could in theory use code obfuscators to make your code hard to use. In that case, I think the GPL requires you to also include the original, readable code.

As far as hiding the link to free code goes: I think you must make the code available in a reasonable fashion. Hiding the source code behind a single blue pixel on your website would not be acceptable. Neither is providing the code engraved in solid gold bars, for the price of $10.000.000 per copy to cover for 'distribution costs'.

None of us here are lawyers though, I'm sure there are better GPL explanations out there.

bertboerland’s picture

This is not really important for PHP, because for PHP, the source code is the program. please note that Open Source is more than showing source.

Regarding orginal posting: for a good read on oss in "english", look at plain.

This wiki posting might be worth a read as well.

--

groets


bertb

--
groets
bert boerland

andynyc’s picture

Thanks for taking the time to respond.