Distributing free software (Qt) [closed] - licensing

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 8 years ago.
Improve this question
I have built a small program for plotting data from serial port using Qt and QCustomPlot. I am an engineering student, and I had a project that required me to manipulate data from the ADC of an mbed, so I built this app for my convenience and for experience. I would like to share it with other people who need such a tool (will put it on the mbed website).
I am not a programmer and I do not know a thing about licenses. The QCustomPlot is under GPL. I read that I cannot use static linkage with the GPL licence for QT; I do not intend to, (I will post the source too), but would like to include a statically built version of the program for people who would rather just use the program.
So without going in too much detail, what can I do? Also, do I need to include any disclaimers in my source?

First of all: choose a license for your software. The website http://choosealicense.com can help you in doing that.
Usually a license requires to add a text header to your source code files. This is just a fragment of text which shows the terms of the license right within the source code.
Also, a license.txt file is often required in which the full license has to be pasted. Anyway choosealicense.com clearly explains what to do.
Notice that some licenses (e.g. the GPL) need that a list of changes is added to your source code. This list has to be mantained through the entire life of your software distribution and updated when you provide new releases.
When you are ready with your package use a website like GitHub to distribute it as a source code.
Do not include binaries. Just add the source code and a README file in which you explain how to compile them.

Related

Can I license my specs/tests differently than my actual library/application source code? [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've written a Ruby gem that I've licensed under the MIT license, but I think I could greatly improve the test coverage by using an AGPL library in my specs. The actual library code I've written (that would be executed by people using the gem) would never use this AGPL library, it would just be for running the tests in a development environment when running the gem specs.
Is it legal for me to then license my spec code under AGPL while still licensing my library/application code under MIT? Is there anything special I would have to do with regard to my GitHub repository (e.g. a separate repo for the specs) or my .gemspec file (e.g. not bundling the specs and AGPL library with the gem)?
First of all, I am not a lawyer.
Let's assume that the library you're going to use is named L.
Since your application code is not a derivative work of L it is not affected by AGPL's licensing. Therefore you're free to choose rules under which it is distributed.
Your test code is a derivative work of L in the sense of AGPL and as a result if you publish it you have to use terms of AGPL.
Storing files with different licenses in a single repository is not an issue. What is important is to clearly and unambigously state what is the license of each file. The best idea is to put relevant notes both in files' headers and a README or LICENSE file. What I mean is something like
All files in the test directory are published under terms of (...). All remaining files are published under terms of (...) unless otherwise stated.
Remember to add this information in each form of distribution of your project, i.e. a gem file, a tarball and so on. If you have to specify terms under which your whole gem is published you have to provide both licenses. In the terms of a gemspec it would mean
spec.licenses = ['MIT', 'AGPL']

Distribution of commercial front-end for LGPL-licensed console application [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
There's a LGPL-licensed console application. I want to create a commercial GUI front-end for it and distribute it bundled with this console app. Does LGPL license allow that?
Note that I am not using a LGPL-licensed library, I am using a stand-alone application.
I tried reading the license itself, but it is still unclear to me.
Note that I am not using a LGPL-licensed library, I am using a stand-alone application.
The first L in LGPL stands for Lesser not Library. So it does not play much of a role whether it is a library or a stand-alone application.
LGPL is with weaker copyleft. That means, if you re-distribute that LGPL'ed software in object code (binary) you need to offer the source for it (for that version you distribute).
However it is lesser, meaning that you do not need to put your code under LGPL as well. Take care that your users should be able to tell both applications apart (and replace the one or other part easily).
However if you write GUI frontend, I think this is a pretty standard case, you will create a command-line and then execute the LGPL'ed binary.
Take care that this is from a developers perspective, not from a lawyer. A lawyer would require to see your current application and then could tell you in more detail the whats and whereabouts for your very concrete case.
It's also practical you get in contact with the author of the LGPL'ed software, they might be interested to know which supporting tools exist. As they have choosen the LGPL it's likely they do not expect your software to be under LGPL as well. So if you get in touch with the original authors you can also clarify your issue, albeit I don't think there is one technically.

Is it possible to use CKEditor in commercial web site? [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 plan to use CKEditor in commercial site. I've read http://ckeditor.com/license but I didn't understand how it is possible to have pricing for commercial use while they offer LGPL(which is good choice for commercial use)
Imagine you want to compile the javascript code of CkEditor into a binary application. Just assume this is possible. Then you would not ship the source code of the library any longer.
If you now even make modifications to the source code to distribute within the binary, you do not satisfy the LGPL as it requires that you provide the source for the library along with your binary. Same for the MPL on the file level.
If you don't want to distribute (your changes in) the source-code form of the library, you then can get a commercial license by the project (you buyout the license).
Next to such specific cases I can imagine that some folks just would like to have a commercial license as form of a backup if their legal department is too much puzzled. If the license is relatively cheap, they can opt for it and continue with their own work w/o being further interrupted. Business, you need to keep it running.
But regarding the LGPL, as long as you offer source (incl. the changes you probably make) of the library, you're fine to use it with non-free programs. So this does not mean that your website must be LGPL it's just using a LGPL'ed library.
You can use it for your commercial website. However, if you build a product and want to include (distribute) CKEditor with it then you might need a commercial license.
The condition whether you need the license is based on your product's license. If your product is closed sourced then including an open source product with it without sharing the source code is illegal. So, this commercial/closed distribution license fills the gap. You pay for it and you can distribute your product with the CKEditor closed sourced. Additionally you may do any closed source modifications to CKEditor.
TL;DR: if you want to modify and distribute it with a commercial license then you need to pay, otherwise you are free to use to for free!

If I modify and dynamically link against a modified LGLP Lib, do I have to make the changes available? [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 have found a bug in an LGPL Lib that I currently link against dynamically.
The application is closed source
I link dynamically to the LGPL Lib
The application will be available to the public
If I modify the lib my understanding is that I will have to make the changed source files availible with the application, is this correct?
You are redistributing the modified code of the LGPL library, so you need to release the source for that library (your bug fix). That does not mean you need to release the source code for your entire application, just the library that's LGPL'ed.
Also note that the GPL/LGPL only requires you to give the source code to someone that you give the binary to. It does not require you to e.g. put the source on the web for anyone in the world to download. A sure way to comply is to pack the source inside your distribution so people get it together with the binaries, then nobody can ever complain that the source wasn't available.
Another solution (although it may not always be possible) is to derive your own subclasses from the LGPL'ed library and make the necessary fixes there. Of course a better approach is to submit the fix to the maintainers of the library, but if you need to ship your code soon, this may be something to consider. By deriving stuff, you're not violating the LGPL.
From the License:
An “Application” is any work that makes use of an interface provided by the Library, but which is not otherwise based on the Library. Defining a subclass of a class defined by the Library is deemed a mode of using an interface provided by the Library.

License requirements for commercial program [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 8 years ago.
Improve this question
This page summarizes different license types' terms (GPL, LGPL, MIT, BSD, etc):
http://www.codeproject.com/info/Licenses.aspx
Say I write a program for sale that uses a software under one of the licensing types where "Can be used in commercial applications:" is true, and "Can be used in proprietary (closed source) applications:" is true.
Then if the "Bug fixes / extensions must be released to the public domain:" line is true, what does it mean to me? What am I required to do?
Thank you.
This will usually mean that if you build a patch or other modification of the program and want to distribute it you must also publish the sources of that modification under a license explicitly mentioned in the program license text.
In some license types this includes both the other program and any program using that (including your program). In others (like LGPL) this will only be required only for modification made to that program, but not to your program if they are separated (LGPL is typically used for libraries and doesn't enforce publishing the library consumers).
simply:
you can sell (and release with your own commercial license) your own app built with the provided code.
but:
you can not improve on the code (of the software you are using within your app) directly and not give it to public domain (usually it is in the original license of the software).
Instead of relying on those summaries, you would be advised to carefully read the license for any open source license you plan to use in a closed source product.
For instance, LGPL does not actually require you to release source code changes to the public domain. Rather, it requires you to release them under the terms of the LGPL.
If you are nor sure that you understand the implications of a particular license, talk to your company's lawyers.

Resources