Can I sell results from a GPL software - open-source

My question is, Can I use GNU General Public License v3 software (in this specific case the OpenFOAM) to do consultancy? The source code will not be changed neither charged. The idea is just charging for the results given by the software.
Do I need a special authorization from Linux (OS) and/or OpenCFD Ltd (owner of the OpenFOAM Trademark) for using their software?
Many thanks in advance.

Are you asking if you can use opensource tools to do consultancy bussiness? of course you can. The internet would close in minutes if it wasn't possible

First: I am not a lawyer. With that in mind:
Can I use GNU General Public License v3 software (in this specific case the OpenFOAM) to do consultancy?
Yes.
That is also part of the Free Software Foundation's Free Software Definition: The freedom to run the program as you wish, for any purpose (freedom 0). And since the GNU GPL v3 gives you all four freedoms listed there, you are fine to do that.
Do I need a special authorization from Linux (OS) and/or OpenCFD Ltd (owner of the OpenFOAM Trademark) for using their software?
No. You do not need special permission from them to use the software, that is to run the software on your computer(s). However, if "using the software" also includes modification of the source code and subsequent distribution of the modified program to the people you are consulting, you have to make sure they can get the modified source code, too.

Related

Can i use mySQL in my commercial windows project

Can I use mySQL in my commercial windows project? Are there any license issues? Which version should I use?
Surprisingly, since the server is not linked with your application directly, you can distribute the MySQL Community server unmodified or modified, as long as you follow the GPL terms. (in short, if you modify the server, you need to make the modified source available)
The client library is another story, however. If you are distributing your commercial project, you cannot distribute the MySQL client libraries freely along with your software if your software is not GPL-licensed or another OSI-approved open-source license.
This is called the MySQL FOSS license exemption, more can be found out about it here:
http://www.mysql.com/about/legal/licensing/foss-exception/
http://www.mysql.com/about/legal/licensing/index.html
You will either need to purchase a license to distribute the mysql client libraries, use another client library (highly unlikely to happen, as there aren't many good libraries that don't wrap the official one) or make your software open-source.
(I am not exactly sure on the legality, but it might be possible to have your customers download the mysql client libraries themselves, but I think it will still constitute 'linking' against a closed source app, therefore still violating the terms. In either case, this is definitely an added hassle for a commercial app.)
It might not be an option for you, but it's worth noting that PostgreSQL is licensed under the BSD license, and sqlite3 is in public domain. Both are a bit more friendly towards linking with commercial code.
As per their explanation, you can use it for free but you will be obligated to release your commercial windows project under the GPL. To keep your code proprietary, you need a commercial license.
Have you every try to search the official site of MySQL for license information?
-- (update) --
OK, since you are "not confirm", let me summarize in short:
"If you want to use MySQL in your commercial program, you must either make your program GPL (i.e., open source, which apparantly not your choice) or Pay Them For a Commercial License".

Open Source Licenses and me [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
I have a software which wrote and includes within several components each of which comes with its own license.
In sum, all 24 components in use are sharing the following licenses:
Public Domain
GPL
LGPL
BSD
MPL
Questions I ask are:
Am I allowed to sell a compiled version of this software which links to all these components?
What is this is installed on a server (being a service) does this make any difference?
What if I modify the code, must I tell the world what did I do?
Public Domain
GPL
LGPL
BSD
MPL
Be careful with these licenses here. In particular, the MPL is not compatible with the GPL. Now, many (probably most) pieces of MPL licensed software are distributed under a dual license, in which you may choose to use and distribute the software under the terms of the MPL or under the terms of the GPL (or sometimes LGPL). But in that case, you shouldn't list the MPL in the list of licenses you are distributing software under, because in order to link to software released under the GPL, you must be using the GPL (or LGPL) option of the dual-license.
Am I allowed to sell a compiled version of this software which links to all these components?
Yes (and the other licenses don't affect this, either).
What is this is installed on a server (being a service) does this make any difference?
If you are selling a service, in which you only run the software on your own computers and don't distribute the software to anyone outside of your company or organization, then none of these licenses impose any significant restrictions on what you may do. In particular, the GPL and LGPL do not require you to provide source code to anyone else in these cases.
If you are using a lot of third party software, it's still generally a good idea to contribute your patches back to the upstream project. Diverging from the upstream can cause a lot of problems in the future when you try to upgrade, and contributing code upstream will mean you get more people who are familiar with the projects you are modifying to review your code, which can help improve its quality.
What if I modify the code, must I tell the world what did I do?
If you distribute the software to anyone outside of your company or organization, then you must provide them with the source code, or provide them with a written offer to provide the source code at a later date, for no more than the cost of physically transferring the data to them.
If you do not distribute the software, then none of the licenses above impose any significant restrictions on you. The GNU Affero GPL, or AGPL, is the only license I know of that imposes significant restrictions on people who run software as a network service, and as you did not list that license in your question, I don't think it's something you need to be concerned about.
Note that I am answering these questions from the point of view of the GPL, which is the most restrictive license that you list. Effectively, when you link several pieces of software with these licenses together, you can consider the whole to be licensed under the terms of the GPL (except for the MPL, which as I've mentioned, is incompatible). See the following slide for a visual depiction of compatibility between common licenses:
(source: dwheeler.com)
Yes, but see (3).
Yes, depending on your reading of the GPL. If it is your own server, you are argualbly OK.
If you distribute (i.e. sell) the executable, the fact that one of the components is GPL'd means you must also distribute your code.
Yes, but you must have a notice somewhere saying that some of the code(ie, everything but public domain) was under so-and-so license and it's source is available here.
No, shouldn't matter
Only for the GPL and LGPL code
AFAIK, you can't link to GPL code unless you use GPL on your software too (see http://www.gnu.org/licenses/gpl-faq.html#GPLInProprietarySystem ). If you're linking some other software together with GPL code, it must have a "compatible license" (see http://en.wikipedia.org/wiki/License_compatibility ). This matched, you can sell your software for any price you want, assuming you deliver the source code or offers this delivery for no charge.
You can put GPL software on a server, with changes made on your own, without delivering the source code, as long as you don't give the binary to anyone. Google explore this possibility a lot, using GPL code to deliver proprietary services over the web. However, this behaviour is not possible with GPLv3 if it uses the "Affero clause" (aka AGPL)
If you distribute your changes as a binary, yes, you must. Otherwise, check (2).
1 : yes, cf earlz or Neil Butterworth answers.
2 : ??
3 : if you modify the GPL/LGPL libraries and you provide (give/sell) your product, you must distribute the code (more precisely, the modifications you did to the library).
My opinion : have these libraries in separate projects from yours, so there is a clear separation and you can easily provide a patch if asked.
DISCLAMER : I am not a lawyer, consult a lawyer if in doubt

What are the steps in licensing a library? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 7 years ago.
Improve this question
I wrote a library and I would like to make it open-source, but I am afraid of others stealing it and taking ownership of it. I am very new to licensing software.
What should I do and what are the steps in licensing my software.
Well the first step is choosing what licence you want to release your software under. The Open Source Initiative has a useful page listing a lot of them and there's a good comparison on the KDE web site. There are lots of different options - you need to work out what you're happy for other people to do with your code. Are you happy for it to be included with commercial applications without the source code? Modified without changes being contributed back?
Then you just need to work out what the licence requires - you may just need to include a licence.txt file with the software, or apply a comment at the top of each source file.
Find an appropriate hosting site which is happy to use that licence, and you're away.
GNU Library License
Read LGPL.
Alternatives
There are many other licenses from which you can choose.
Application
Usually it is sufficient to include documentation in the header of all source files that refers to the licensing conditions. As well, it is common to include a text file containing information about how the software can be used.
Software Theft
Once publish your software under an open-source license, typically that grants everyone the right to use the code for any purpose they desire. Normally you needn't be concerned because that is the point of releasing the source code. In fact, you want to encourage others to take your software and use it. Something that is given away for free cannot be stolen.
Ownership
The real concern here, in my mind, would be people taking the software and claiming it as their own. It happens (DVD Jon, Microsoft, and SCO to name a few), and there is not much people can do about it.
If your concern is about people branching your software to create other versions, that seems more like cause for celebration. It implies that your software has been well received, so well that other people want to take it in directions that they feel solve a different niche of problems. This should be encouraged.
No matter what happens, though, you will retain ownership of whatever you produce under copyright law (at least in Canada and the United States).
Remember to consult your friendly neighbourhood IT-specialized lawyer for advice.
Custom License
Also, even if you release the source code under an open-source license, it does not mean that that is the only license you may associate with the source code. It is entirely possible that someone will approach you requesting different terms. For example, they might want to create and share a proprietary solution that uses your technology, without having to release their changes to the world. You might choose to offer them a commercial license under mutually agreeable terms and conditions.
Be careful, though: third-party contributions donated to your project, under the terms of the open-source license, are not yours to distribute under a different, custom license. If you want the flexibility of creating a custom license, you must have the ability to identify and extract your personal contributions.
If it's open source, you are relying on the honour of the people who use it, whatever form of preamble you put in each file and include with the distro bundle.
You probably want to start with the OSI licensing page.
If you make your code open source, you are explicityly allowing other people to do pretty much anything they want with it, with in the case of GPL some restrictions on what they must do ifv they choose to distribute it. This is not "stealing". If this worries you, don't make it open source.
If you want the source code to remain free but you don't require the software using your library to be free, you should use the LGPL library. Link
Otherwise, if you want the software using your library to be free, go for the classic GPL. Link
If you are afraid people can steal your work, well, maybe free licences aren't for you :-)
Instead of stealing them, they may use your code, enhance it, redistribute it etc. If you don't know much about this philosophy read here
You can start by looking at the GNU "How to use GNU license for your project" page.
However, the whole idea of open-source is sharing your code with other people. If you're afraid of "others stealing it" - keep it under your hat.
When you licence your library you still retain the copyright. The licence governs what people can and cannot do with the library. You can select from many different open source licences. Without knowing anything about how your library is intended to be used, I'm going to make the assumption that it needs to be compatible with a proprietary licence.
MIT
Permit anyone to freely use without restrictions.
LGPL
Permit anyone to freely use provided modifications are made available.
I strongly encourage you to read the terms of these licences.

What license do I need to use gSOAP in a commercial product? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 7 years ago.
Improve this question
I'd like to use gSOAP in a product which will be distributed commercially. The use I have in mind is what I suspect is a pretty typical workflow—generating a header using wsdl2h, consuming the header with soapcpp2, and then calling the functions generated in the stub in my code.
I'm not 100 percent sure which license(s) I need to use to be able to do this. Has anybody here already gone through this and figured out the solution?
I hope the following clarification helps. Please contact us at contact#genivia.com for questions.
The gSOAP software requires a commercial license for commercial product development if any one of the following conditions hold:
If you use wsdl2h to generate code. Because the generated code is GPL by default, you should obtain a commercial license from Genivia (www.genivia.com/Products/gsoap/contract.html). The wsdl2h tool itself is GPL, and we hold the copyright rights to it.
Or you use the web server code in gsoap/samples/webserver. This component is GPL by default.
Or you use the UDDI components in gsoap/uddi2, which are also GPL by default.
The commercial license is a development site license. There is a one-time fee for perpetual use of gSOAP to develop a product (a "target application"). No royalties.
The other good news is that all other parts of the software are released under the gSOAP public license, which allows commercial use without fees.
So the answer is that as long as you do NOT use wsdl2h, do NOT use the web server code, and do NOT use the UDDI code then you can use the gSOAP public license for free (which is based on the MPL1.1 open source license and a copy of the gSOAP public license is included in the package).
Hope this clarifies our licensing model.
Robert van Engelen, Genivia Inc.
From the site:
Important note: the wsdl2h WSDL
parser, UDDI code, and sample
applications such as the stand-alone
web server are distributed ONLY under
the GPL or the proprietary license.
This means either your product will have to be entirely licensed under GPL (hence you would need to opensource your app if not so already), or you have to purchase a commercial license.
You have to purchase a commercial license -- one per project in which gSOAP is to be used. We've been using it very successfully in a few of our projects here.
The gSoap licence is quite unclear, and I think part of it is even wrong. For example, GPL use and commercial use are opposed in the licencing, which is plain wrong.
Moreover, a code generator which is GPL doesn't necessarily produce GPL code:
http://www.gnu.org/licenses/gpl-faq.html#WhatCaseIsOutputGPL
As I understand the GPL, as long as you release all derived products under the GPL, the code is free for even commercial use. Of course most companies don't want to release their source code for anyone to copy freely, hence the commercial license. I think Genivia's summary is not as clear as it could be on this one point.

Corporate-Friendly Open Source Licenses [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
What open source licenses are more corporate-friendly, i.e., they can be used in commercial products without the need to open source the commercial product?
I recommend the Apache License (specifically, version 2). It is not a “copy left” license and it addresses several matters that are important to established companies and their lawyers.
“Copy left” is the philosophy of the free software foundation requiring anything incorporating the licensed opens source code to also be licensed as open source. That philosophy is regarded as poison by established companies that want to keep their products proprietary.
Aside from not having “copy left” provisions, the Apache license specifically addresses the grant of rights from project contributors and it expressly addresses the fact that modern companies are typically made up for more than one legal entity (for example, a parent company and its subsidiaries). Most open source licenses don’t address these points.
Whatever license you choose, if you want your code to be “corporate friendly,” in the sense that you want it to be incorporated into commercial, non-open source products, it is essential that you avoid GPL and other “copy left” type licenses. While it would be best to consult with your own lawyer before investing time or money in a project for which this is an important factor, a quick shorthand for licenses that are and are not “copy left” can be found on the Free Software Foundation’s website. They identify which licenses they don’t find meet their standards as “copy left.” The ones FSF rejects are most likely the ones that will be corporate friendly in this sense.
(Although the question didn’t ask this, it is worth mentioning that, with very few exceptions, even GPL and other “copy left” type licenses are perfectly corporate friendly if they are only used internally by the commercial entities and not incorporated into their products.)
Basically, only the GPL requires that the whole product is GPL, and LGPL implies that the parts specific to that library be open sourced. But, for both, the problem arises only when you distribute the application.
For all the other open source licenses, the only common requirement is the publicity (ie. show at some point to the user what open source component / library is used).
After that you have the "no competing commercial product" licenses...
All in all, the most acknowledged business friendly license are IMHO the Apache License, the Artistic License and the Mozilla Public license.
Furthermore, even if Creative Commons is not widely used for software development, some options are business friendly.
Edit: forgot BSD (which is more a license-template than a license) and MIT mentionned by Daniel. It seems to me that their usages are fading away, but there is some license tropism to take in account according to the development language / open source sub-community.
The two most commonly used licenses that allow what you want are the BSD License and
MIT License. (see also the full list of licenses considered Open Source by the OSI).
As a possible alternative to the BSD license you can also use the Ms-PL license (Microsoft public license). Pretty much the same but (arguably) better worded. Additionally, It's got “Microsoft” in its name, which screams “corprate-friendly” like nothing else does. ;-)
I believe that 6 of the 9 licenses on the OSI's list of "Licenses that are popular and widely used or with strong communities" meet your criterion: Apache, BSD, MIT, Mozilla, CPL, and Eclipse. The Mozilla license and CPL (the Common Public License) have language concerning patents that might make them more attractive to corporations.
See here for more information.
The GNU Lesser General Public Licence is also corporate-friendly and quite often used in libraries. It allows for usage of a certain library but modifications to it should be made public.
By "corporate" I tend to think of internal development, programs distributed only to people that are employed by the same company. In that sense, pretty much all free software licences are "corporate-friendly."
However, in terms of distributing closed-source software that contains free software the only big one (off the top of my head) that is excluded is the GPL. You could embed LGPL, BSD, MIT, Artistic licenced code. The "price" might be having to give credit, but that would be way cheaper than actually writing and debugging the software.
Things can get hazy when you consider licences that try to protect trademarks (Mozilla) or the compatibility of a broader range of software (Sun). Your constraints are not always only related to the distribution of the code.
In summary, if you're unsure you should consult a lawyer.
Ideally I looked for components licensed under the Apache Software License. After that LGPL, BSD and Artistic License are my next preferences.
MIT, Apache and BSD tend to be the most corporate friendly. The least corporate friendly that I have ran across are usually Q Public, GPL and Mozilla...
Wikipedia also has a very useful list that compares all the free software licenses. If you have a green box on the right ("Release changes under a different license"), I think that's all you need.