You are not logged in.

#1 2013-09-13 07:20:42

speeider
Member
Registered: 2013-09-13
Posts: 8

[SOLVED]How licensing works in overall open source community.

As the title suggests, i don't know much about licensing schemes in the world of software and computing.
So, if there's anyone who can describe about overall licensing schemes i''l be glad, i just want to know some basic stuff like:

  • How one can license "his/her/other" software under some of available licenses such as GPL/MIT.

  • What is the best way to choose license for your software .

  • What if you want to earn some money while giving your users complete freedom to do whatever with your software (that includes the source code).

I know there is OSI but that stuff is little complicated for me as i'm no lawyer.

Thanks in advance.

Last edited by speeider (2013-09-24 08:53:45)


# Arch Linux, Rules!! \m/

Offline

#2 2013-09-13 07:32:43

jakobcreutzfeldt
Member
Registered: 2011-05-12
Posts: 1,041

Re: [SOLVED]How licensing works in overall open source community.

1) If you wrote the software, you can just apply a license to it.  Typically this involves including a file containing the legal text of the license in your package distribution (the file is often called COPYING). It's also advisable to include a license notification at the top of each source file, that way if someone only takes that file, they'll know it's license
2) You choose according to your beliefs and your needs. Start with "copyleft" vs "non-copyleft", then start with the most common license in the category (say, GPL vs BSD 2-clause), read the text and see if you disagree with anything. If so, read another one. Repeat.
3) That's a tough question that no one has really solved. Typically you might offer paid support or take donations.

Last edited by jakobcreutzfeldt (2013-09-13 07:33:52)

Offline

#3 2013-09-13 07:40:42

Iranon
Member
Registered: 2011-06-11
Posts: 146

Re: [SOLVED]How licensing works in overall open source community.

You just distribute the license with the software you release, and refer to it in the documentation.

Read the licenses and some commentary, compare how compatible they are with your goals.
WTF Public License: you don't care what others do with it.
BSD/MIT License: you want proper attribution, but don't want to restrict others.
GPL: you want to prevent others from taking your work and using it as a base for their own non-free software.

Giving others the source code and the freedom to distribute your software (with or without alterations) makes it difficult to "sell" software. Most commerce surrounding free software takes other forms - offering paid support, taking commissions for specific features in future versions and so on. Some businesses prefer to buy things they could have for free though, fearing legal trouble down the road... dual-licensing may be an option.
Liberal licenses are serious business though. Famously, "This software is to be used for good, not evil" conflicts with the GPL.

Offline

#4 2013-09-13 08:46:19

fukawi2
Ex-Administratorino
From: .vic.au
Registered: 2007-09-28
Posts: 6,217
Website

Re: [SOLVED]How licensing works in overall open source community.

GitHub wants to help you: http://choosealicense.com/

Offline

#5 2013-09-13 11:12:11

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 29,444
Website

Re: [SOLVED]How licensing works in overall open source community.

I think 1 and 2 have been answered very well already, so I'll just add to 3:

No open source license prevents you from selling software for a profit.  Of course once you sell it to one person, they can give it away to anyone they want, which would possibly undermine further efforts to sell it to others.  So selling copies does not seem to be a very viable strategy to make income on open source.

But this does not just leave donations.

One can also do "contract-coding".  My tools are all open source, but the ones used in professional research settings generally need to be tailored to the specific use for each new user.  If they know C, they are free to take any existing implementations of my tools and modify them for themselves.  But if they new C, they'd probably just write their own.  They can, if they choose, pay - or offer authorship/acknowledgement depending on the level of contribution - for me to modify the code to suit their specific needs.

EDIT: some of these questions sound a bit like their hovering around a common misconception about licensing.  Licenses do not dictate what you as an author can or cannot do.  Licenses grant (or license) certain rights to the end user.  By default, without a license, and end user recipient of your code could not legally do anything with it - they can only (legally) do what you authorize them to do.  Proprietary licenses do no "restrict" anything, they simple grant far fewer authorizations than open source licenses: users are granted the right to use the software on a single computer for their own use onle - for example.  Or they may be granted rights to use the software on as many computers as they'd like, for their own use only ... etc.  Open source licenses simply grant even more freedoms to modify and (under some restrictions) redistribute the code.

Last edited by Trilby (2013-09-13 11:16:28)


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Online

#6 2013-09-16 05:24:02

speeider
Member
Registered: 2013-09-13
Posts: 8

Re: [SOLVED]How licensing works in overall open source community.

Thanks for the answers everyone, but these answers ignite some other q's

  • Is it that simple, that all i need is to copy license from one place to another?? "just making sure" .

  • SO, there's no judicial body who keeps track of software that are being licensed under open source license.

  • What if my source code came out to be similar(say 35% - 75%)  to someone else, i don't know about. Is there any chances to get sued over nothing.

Trilby wrote:

No open source license prevents you from selling software for a profit.

I don't understand this quite a bit, Like what if i want to sell my software "say like, which is also available on github under GPL/MIT" what peculiarities does it contain "Does that mean the buyer can then remove it from github and make it a closed source"... i don't want that.


# Arch Linux, Rules!! \m/

Offline

#7 2013-09-16 06:47:09

Xyne
Administrator/PM
Registered: 2008-08-03
Posts: 6,963
Website

Re: [SOLVED]How licensing works in overall open source community.

No, there is no judicial body that keeps track of software and corresponding licenses. A license is simply a set of terms under which you give someone permission to use your software. You normally include the text of the license with your code, and add some comments at the top of each file stating that the code has been released under that license.

Code that is unintentionally similar to some other code is unlikely to lead to a lawsuit, especially for non-commercial projects. You can always get sued over nothing by some rabid troll, but I would not worry about it. You're more likely to get hit by a car.

You can release software under multiple licenses. You can even change the license for new releases. For example, if you write a library named "foo", then you might release foo 2.0 under the GPL so everyone can use it in open source projects but not in closed-source/proprietary projects. That would not prevent you from licensing foo 2.0 to a company under a different license, for a fee, which allows them to use the code in a closed-source commercial product. Everyone would still be able to use foo 2.0 under the GPL (including the company) because you cannot revoke the license for foo 2.0. Basically, you've said "everyone can use foo 2.0 under these terms, but this company is also allowed to use it under these other terms because they paid me".

Later when you want to release foo 3.0, the company may pay you for an exclusive license under the terms of which you agree to not release foo 3.0 under an open source license (either for a given period of time, or forever). The company may even wish to buy the code itself from you, in which case they become the copyright holders and you no longer have any rights to it, depending on the agreement.

You could also go the other way and release foo 3.0 under a BSD license which grants everyone including the company the right to use it in closed-source applications. Again, foo 2.0 would still be under the GPL even if foo 3.0 is released under a BSD license. Of course, you could (re-)release foo 2.0 under a BSD license too with the 3.0 release. Then everyone can use foo 2.0 under either the GPL or a BSD license, but foo 3.0 would only be available under the BSD license.

The key points to remember are

  • a license determines the conditions under which others may use your code

  • you cannot revoke a license to prevent someone from using/modifying code under the conditions of a previous release (but you can change the license for future releases to prevent people from using newer versions)

  • you can still do whatever you want with your own code, the license does not restrict you...

  • ...unless you enter into an exclusive agreement with some entity that specifically places restrictions on what you may do with it (e.g. you agree not to license the code to anyone but the company)

  • you can license your code multiple ways to different people/companies/nations/galaxies/whatever

  • the code remains yours unless you transfer copyright to someone else via a legal contract, but even this depends on country (some countries do not legally recognize the transfer of copyright)


My Arch Linux StuffForum EtiquetteCommunity Ethos - Arch is not for everyone

Offline

#8 2013-09-16 11:57:08

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 29,444
Website

Re: [SOLVED]How licensing works in overall open source community.

speeider wrote:

I don't understand this quite a bit, Like what if i want to sell my software "say like, which is also available on github under GPL/MIT" what peculiarities does it contain "Does that mean the buyer can then remove it from github and make it a closed source"... i don't want that.

I'm not sure what you mean by "remove it from github".  It is your github, unless you are handing out your password, no one can remove your code from github but you.  They can download a copy of it from github - as could anyone else could.

If you license code under an open-source license, can the end-user recipient turn around and sell it as closed source: that depends on the specific license.  With a big 'AFAIK', LGPL allows this, while GPL and MIT do not.  But you chose the license, so you determine what you want to allow the licensee to do.  But even with the LGPL, unless they are making substantial additions to your code, I don't think there would be a purpose in them selling it.  LGPL is really for libraries that can be used as a component in closed source software.  If you released something freely and it was available on github, not many would buy it from someone else.

If I offered to sell you a copy of dwm under a proprietary license, first you should laugh: why pay me for it, it's free already.  Second you should report it to the suckless team, as the license underwhich I recieved dwm does not allow me to redistribute under a proprietary license.

Selling for a profit in my previous post was in reference to code that one writes themselves, not code they get from someone else.  No one can (legally) sell - or even redistribute for free - any code that someone else wrote, unless the original author has granted such permission (or if the original author left the permission wide open as in WTFYW type licenses or releasing it into the public domain).

Selling licenses for profit will not ever be practical in open source, IMHO.  But there is nothing legally preventing it (in most cases).  Contract-coding does seem to be a much more practical approach.  And yet another practical approach is what I may do for some of my code used in research settings: academic researchers are always very worried about being "scooped" as a scientific publication can sometimes take years to get published.  If I accept a contract to write a tool that will help their work, they pay me, then I release it to everyone, then the researchers who paid me are at substantial risk.

I've thought of two ways to solve this: a dual license, one with a "sundown" clause so it applies for a certain time window only.  But as I am not a lawyer, nor do I want to hire one, I went with a much simpler approach.  I'll release the code under a GPL license, but I will not publish the code publicly until the agreed upon time window is over.  So they pay me some $$$ to write a program.  I write it and give it to them under an open source license.  We sign an additional agreement that I will not provide the code nor the program to anyone else for 6 months.  After 6 months, I can post it on github.

This example highlights one common misconception on open source licenses: the source code doesn't need to be publicly available.  Any licensee must be provided with the code, or a means of obtaining it (depending on the license).  But if I only license my program to that one team of researchers, they are the only ones I have to make the source code available to.  If they wanted, they certainly could redistribute that code before the 6 month term had passed - but they wouldn't, they are the ones benefiting from that 6 month window.

EDIT: I went on a few tangents, back to the original question here:

speeider wrote:

I don't understand this quite a bit, Like what if i want to sell my software "say like, which is also available on github under GPL/MIT" what peculiarities does it contain "Does that mean the buyer can then remove it from github and make it a closed source"... i don't want that.

Whether or not they can resell it under a proprietary license has nothing to do with whether they paid you for it.  It depends only on the license under which you provided it to them.  You *can* sell your code under a GPL license, but this is subject to the limitations due to practicality above.  If you post the code up on a public site like github with a GPL license, then try to sell it for a profit, you'll really get nothing.  There are enough consumers out there who say "why pay for it when I can download a copy for free."  They say this when 'downloading for free' is illegal, but selling GPL'ed code posted publicly on github would mean 'downloading for free' was legal.

Last edited by Trilby (2013-09-16 12:08:31)


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Online

#9 2013-09-16 13:11:40

fsckd
Forum Fellow
Registered: 2009-06-15
Posts: 4,173

Re: [SOLVED]How licensing works in overall open source community.

You should consult with a lawyer or similar legal advisor in your own country as laws vary by nation. The answers above apply to the U.S. It is with reasonable assumption that they apply to your country but this is not guaranteed.


aur S & M :: forum rules :: Community Ethos
Resources for Women, POC, LGBT*, and allies

Offline

#10 2013-09-16 17:01:20

srs5694
Member
From: Woonsocket, RI
Registered: 2012-11-06
Posts: 719
Website

Re: [SOLVED]How licensing works in overall open source community.

Trilby wrote:

Selling for a profit in my previous post was in reference to code that one writes themselves, not code they get from someone else.  No one can (legally) sell - or even redistribute for free - any code that someone else wrote, unless the original author has granted such permission (or if the original author left the permission wide open as in WTFYW type licenses or releasing it into the public domain).

That's not really true in the open source world, except in a very limited way. Consider Red Hat, Novell, and others who sell "enterprise" versions of Linux; or companies like OSDisc or The Linux Shop, which sell CDs and DVDs with Linux distributions for the benefit of those who don't have fast Internet connections. These companies all sell massive collections of open source software that they did not write for a profit, and doing so is perfectly legal. You can sell Arch Linux DVDs for $10,000 if you like -- in theory. In practice, you'll be hard-pressed to find buyers, since anybody can download the image for free.

What is not legal under some open source licenses is to fork the project and make it closed source. For instance, I couldn't legally fork the GPLed Linux kernel and sell it as a commercial, closed-source product. I could do that with the FreeBSD kernel, though, since the BSD license permits this type of thing.

Offline

#11 2013-09-16 17:12:51

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 29,444
Website

Re: [SOLVED]How licensing works in overall open source community.

Those examples are not selling a license to the code, they are are selling a service contract, the dvd itself, or the collected polished package of stuff.


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Online

#12 2013-09-16 17:32:43

srs5694
Member
From: Woonsocket, RI
Registered: 2012-11-06
Posts: 719
Website

Re: [SOLVED]How licensing works in overall open source community.

Trilby wrote:

Those examples are not selling a license to the code, they are are selling a service contract, the dvd itself, or the collected polished package of stuff.

True. Upon re-reading, I see you were talking mostly about selling licenses, but that wasn't clear in the paragraph to which I responded. This does bring up an important point about that distinction, though, which few people understand, between these things. Copyright applies to code (or other intellectual "property" -- in quotes because it's unlike other forms of property) and is held by the author of the work -- at least unless or until that person transfers the copyright to somebody else. A license can be sold by the copyright holder to another individual or organization, and grants that individual or organization the right to use the software in certain ways. Open source licenses are quite liberal in their terms; they grant everybody the right not just to use the software, but to modify and redistribute it. Typically, when money changes hands in a software sale (as when you buy a copy of Windows), you're buying a license to the software, and often a physical medium. When Red Hat, OSDisc, or whatever sells an open source CD, though, the license is not being sold (everybody on the planet already has a license), just the physical medium, a service contract, or whatever. This is a subtle distinction that probably doesn't matter for most buyers, except in that open source software can be redistributed. A software developer, though, needs to consider the license terms and the implications they might have for further development of the project.

Offline

#13 2013-10-11 01:54:42

cfr
Member
From: Cymru
Registered: 2011-11-27
Posts: 7,130

Re: [SOLVED]How licensing works in overall open source community.

Also, the licences under which Red Hat etc. are permitted to sell CDs of the software, say, may have conditions. For example, if they modify code distributed to them under the GPL, and they then distribute binaries compiled from that modified code, they have to publish the modified code under (basically) the GPL. They can't restrict the users of their software from exercising the freedoms which gave them the right to create that software in the first place.

It isn't quite true that you can basically take any licence, include it with the software and distribute the software under that licence. The licence itself is intellectual property so you need the right to use it in that way. For any open-source or free licence, that's a non-issue but it might not always be the case with proprietary licences, I guess. At least in theory.

One thing to think about is how the software is meant to work with other software. For example, LaTeX packages are often licensed under the LPPL but it really would not make sense to licence software unrelated to TeX under that licence.


CLI Paste | How To Ask Questions

Arch Linux | x86_64 | GPT | EFI boot | refind | stub loader | systemd | LVM2 on LUKS
Lenovo x270 | Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz | Intel Wireless 8265/8275 | US keyboard w/ Euro | 512G NVMe INTEL SSDPEKKF512G7L

Offline

Board footer

Powered by FluxBB