LGPL licensing and modifying existing code [closed] - open-source

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 found a few questions related to this around here but not exactly what I need. I'm working on a product that uses several LGPL licensed products that I modified and my own code as well. I want to release the product under a LGPL license, I suppose that's fine.
Now, regarding modyifing the code, I have a few questions. Each file contains comments in the header related to the author/product and so on. Should I leave that there and add notes under that regarding the changes made? If so, what about heavily modified files? Also, do I need to have any file that keeps track of all changes? (that sounds like a lot of work)
I would gladly kep the header of the files with the original author intact and add in myself and changes to the file, but is that ok according to the LGPL license? And the last thing, if I'm using the original product as a codebase for my own and I rename files and such, do I edit the original comments to match the new filenames?
Thanks!

Should I leave that there and add notes under that regarding the changes made?
Whatever you do, leave the copyright and license notice(s) intact and don't misrepresent code that you didn't write as your own work. What I sometimes do is add my own copyright notice right above the one from upstream. That makes it clear that I touched the software the last time, so I'm to blame for the bugs.
Also, do I need to have any file that keeps track of all changes? (that sounds like a lot of work)
Put it on an open source code hosting website such as GitHub. That's a good idea anyway, regardless of whether you legally need it. (I don't think you do, but read the LGPL carefully; you have to be able to supply source code for any binary release you did. If you distribute the source code along with the binaries, it should be fine.)
I am not a lawyer.

Related

Open source - How to make sure user has bought a license/avoid pirate-versions? [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 9 years ago.
Improve this question
This is not something I want to do myself, but it's a question/problem I can't get out of my head.
If you distribute open source-program/classes/libraries, how can you make sure the user has purchased a license? Would it not be very easy for programmers to just remove the license-part of the product and distribute it or use a pirate-version?
Take Invision Power Board for instance. It is written in PHP (i.e completely open and editable) and you have to buy a license to be able to use it. How can they make this limit? Do they authenticate the forum towards their servers? If they do, would it not be easy to simply remove this function?
Another example that I have even more problem understanding is HighCharts, a JS library to draw graphs. They offer a free version with their name on each graph. If you purchase the product, the label is gone. How do they do this?
I know this question is a bit wide and open, but I am just asking for a way to prevent people from simply editing out the license/blockade? What is the essence in this?
There are no license purchases for true "open source" libraries or programs, because the essence of open source is that the code is free and you can build/deploy it yourself at will.
What you're talking about is commercial software that might use a codebase that is easily visible/editable. It's not marketed as "open source," but the source code is easily accessible and potentially easily modified.
There are various mechanisms for obfuscating or hiding the content of the code that some products would choose to use, which make modifying the code more difficult. For example, there are various ways of pre-compiling PHP code rather than distributing the raw files (see this question for examples).
However, the biggest thing that you lose out on with most software of this sort is support. If you're a serious user of a complex piece of software, especially a business user, you would typically want to know that you have a commercial support plan in place for any critical software. The kind of user that would crack/pirate such software (that is, individuals or small companies) aren't likely to be as significant to the vendor.
On the internet there's a further obvious avenue: if a significant public site were using Invision Power Board, they would soon notice and could demand suitable license (or take legal action).
Ultimately, this kind of abuse is very difficult to prevent if someone is determined enough: you are very much at the whim of your users.

What and when do I have to disclose, if I use open source software for a totally different use? [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 9 years ago.
Improve this question
If I make a (web-based if it matters) game and have the inventory portion of it from an open source inventory program, what do I disclose?
I would say part X came from open source, or I just "hacked" then inventory system and put my game as a front end.
I just don't know where I put that on my website, or do I wait until someone asks? Does this mean my part of the software is also open source? What am I supposed to do?
I'm not sure how to ask it. I want to do the right thing and all.
It depends on the license that the open source inventory program is under. Have you looked into that yet?
This is a good place to start for comparisons:
http://en.wikipedia.org/wiki/Comparison_of_free_software_licenses
You have not asked much specific with your question. The general answer is: It depends.
On what does it depend you might then ask yourself. It depends on the usage terms of the software you make use of.
You only have shared so far that the software is "open source". That term does not say much. It could mean you refer to an OSI certified Opensourcetm license, however, you wrote "open source" which might be a different term. Probably you have picked something from github (compare: Can I use the code in a Github project which does not have a license specified?) ?
So unless you do not share which kind of license that is you talk about not much could be said:
If it is a permissive Free Software license, your code can normally stay under it's own license.
If it is a copyleft Free Software license, your code normally is being licensed under the same license.
If it is a compromise license, it depends on the type of work and way of interaction / derivation / usage / packaging.
In any case it always depends on
the concrete licenses for all works in question.
the concrete type of work and way of combining it with your work.
if you plan to go conform with the licensing or you want to exploit it.
You have not specified much of both, so no better suggestion can be given. Also take note that IANAL and this is only some personal opinion of a layman.
And do not wait until someone does something. You should be the active party to find out. That works best by contacting the original author of that component, tell her what you want to do with it and keep the written allowance you get from her with your records. Especially as you are unsure. And the original author has enough power to allow you things even apart from the public visible license btw..

Picking an appropriate license [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'm working on a web based ladder system for a game. It is very game specific and I want to make the project open source so the community can give back, contribute and make the experience better for everyone. However at the same time I don't want people to re-use the code/implement the code on separate sites because the purpose of the website/project is to unify the community under one roof. So my question is: what is the best license to use to make that possible?
... I don't want people to re-use the code/implement the code on separate sites ...
This really misses the point of Free Software, or as the FSF puts it, it's open source but not really Free Software. Despite my tone, I'm not here to lecture you, I'm simply pointing out that people are not likely to help if the project has this kind of restriction.
However, if you change that to:
... I don't want people to re-use the code/implement the code on separate sites without contributing any modifications they make back to the project ...
Then the GNU Affero General Public License might be appropriate; it prevents people from modifying your website unless they publish their changes under the same license.
If you still insist on your original restriction, then no open source license will help you, since most of them are about being Free Software, not just open source. You're going to have to write your own license, or modify an existing one.

Any open source hosting site for abandoned projects? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
I have some projects for which I have ceased development a long time ago but still get code access requests for. I'm currently providing zipped packages from my personal web site. I think zipped packages are far from being useful (e.g. can't read code right away, can't provide URLs to individual source files, can't fork easily, lifetime is dependent on my own web page's).
I want that archaic code to be present on the net whether I keep my web page up or not. I saw the question "What's the best open source hosting site?". However, most sites request the project "to be active", Codeplex for instance. I didn't go through EULA's of all providers to see if they allow abandoned projects.
Are there elephants' graveyards for old code without activity restrictions? Which one would you pick, why?
UPDATE:
I tried both Google Code Hg and GitHub to see which is easier to use. Although GitHub required SSH key setup and additional steps, it was still much easier to get going. On Google Code even finding "create a project" page was a hassle in itself, every time I had to navigate through FAQ. Hg authentication did not work for some reason (yes I tried both encoding # to %%40 and removing gmail suffix completely, didn't work).
On GitHub, creating/forking a project is a breeze, supports syntax highlighting for Pascal source files which was also a plus for those archaic code.
Github would be a good choice. I don't think they have such a requirement and it would be simple for someone else to take over as the maintainer with no action necessary on your part.
I don't think code.google.com has such requirement.
You can host your project active or not for how long as you wish, and perhaps if a community will form around it grant someone the admin role to take the lead.
-- EDIT (based on ndp answer) --
You would obviously want to set your repository type to Mercurial, to allow easy cloning / branching for people interested in hacking on the code.

Releasing company's code on free software licence [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 years ago.
Improve this question
My company (EU-based) is considering to release some parts of our code
under a free software license. We are going to ask lawyers, but firstly
I'd like to ask what problems should we expect when doing that? We are
planning to use LGPL license, mostly because we want to be able to reuse
other people's code in our (closed) software later too.
Edit: We own all the code we want to be released (everything was written
by a single developer, and he actually proposed to opensource the code).
Also we don't care about reusing
this code by our competitors; this piece of code is more or less orthogonal
to what we do for living. We do expect that this code will be improved by others (or at
least spot any bugs), but it is actually good enough for us already.
Thanks for opinions.
Possible problems:
You do not own the rights on all of your own code (e.g. some portion was made by a freelancer but the rights were never properly transfered)
You expect something to happen with your code (e.g. other people to improve it) but it never happens
Your code becomes used in a competing product and you cannot prevent that
You want to withdraw the freedom and find out you can't
If your company wants to keep some control of what is the official code, I suggest you the Artistic License 2.0, instead of LGPL.
I would recommended releasing under LGPL or BSD style license, which does not contain any responsibilities from your side.
Regarding the use of code by other people, again, use only BDS licensed code and you are all set.
If you use the LGPL, contributions from other people can still be done under the GPL, which would prevent you from reusing their code in close-source software. You'll have to watch out for that. Also, even if their contribution is LGPLed, you only have the freedom to not open the source if that code is used in an external DLL or the like.
This is a very rough description, and the implications of that are quite hard to grasp (I don't fully either) and also depend on what kind of software you're developing, so you definitively have to consult a lawyer.
You might also want to look at what Qt does.