I am in the process of helping develop a commercial Java program. We want to use a certain third-party LookAndFeel in the GUI. The problem is that the LookAndFeel library is GPL licensed. Since we are planning to sell our product, would it be legal to use that GPL LookAndFeel in our product?

The LookAndFeel in question is the InfoNode Look And Feel

  • Nitpick: The GPL doesn't specify you can't sell your product, only that you must make the source publically available/redistributable. I've seen plenty of people sell GPL programs. – Earlz Feb 21 '11 at 3:47
  • 3
    @Earlz: The real problem is that selling a product (as opposed to selling a service) doesn't really work in the long-term when anyone you sell it to can duplicate and re-sell it, as much as they like, with minimal effort. Note that most open-source software transactions are really about selling support contracts. – Anon. Feb 21 '11 at 3:50
  • 2
    General rule of thumb. "If you have to ask, the answer is probably 'No.'" – btilly Feb 21 '11 at 4:51
  • @Earlz: yes, usually programs written by others... – jwenting Feb 21 '11 at 13:19

If you're willing to abide by the terms of the GPL, then yes it's legal.

But chances are if you're selling a commercial app, releasing the source to any Tom, Dick and Harry who buys a copy is a non-starter. If you're not willing to release your source code to anyone who uses it, no you can't license the library under the GPL.

However, the particular library you're interested in is dual-licensed. If the GPL doesn't suit you, you can instead license the library under the InfoNode Software License.

Basically, the developers of the library are using the standard practice of releasing the library under the GPL for open-source developers to use, and effectively requiring commercial developers to pay for the library if they want to use it in a commercial application.

  • 2
    GPL doesn't really work for commercial shrinkwrap software, with multiple customers. It works quite well for bespoke software for a single customer. E.g. my previous employer was given a contract to develop software for a retail chain. The contract terms required us to provide all source, and forbid us to sell that code to others. So we could safely re-use GPL code. – MSalters Sep 5 '11 at 12:40

Keep in mind that the GPL has many faces. Depending on the type of GPL license you're using, the rules may be vastly different.

The GPL is known as an infectious license, meaning that any proprietary code that uses GPL code becomes blanketed by the GPL license. This means that, if you did sell your product, you would also need to include the entire source code. The people you sell the product to can modify it, copy it, give it away for free, etc.

If you do sell it, you may be able to profit by offering support that, as the original authors, you are in a better position to do than those who have obtained it and are distributing it themselves.

If the license is LGPL, then as long as the library is only used and is not tightly coupled into the application, then the main body of the proprietary codebase can remain licensed under a proprietary license. However, you still must include the source of the library when you distribute your product, just not your main codebase.

DISCLAIMER: I am not a lawyer. This is my interpretation of the two licenses. It is best to seek advice from a professional specializing in law.

Not the answer you're looking for? Browse other questions tagged or ask your own question.