threads / discuss / 27093

Re: Gitbox

Subject: Re: Gitbox

## tl;dr

10 messages between Apr 13, 2011 and Apr 15, 2011.

replies: 9people: 6as markdown or json

Joshua Juran· Apr 13, 2011, 22:23 UTC · lore
On Apr 13, 2011, at 3:17 PM, Daniel Searles wrote:
> I apologize for the empty email. My SMTP server is having problems.  
> That is why I'm going to use this email address to write to the list.
Gah, stop doing that!  :-)
Show 10 quoted lines
> I feel that gitbox and perhaps other commercial tools for git are in  
> violation of the GPL simply since they rely on git in order to be  
> useful. Take git away from gitbox and it serves no purpose. The  
> thread in the following link goes into depth with regards to a  
> program relying on code that is under a GPL license. The conclusion  
> made in the thread may be due to an older version of the GPL. Could  
> it be that gitbox isn't in violation of the GPL since git uses GPL  
> version 2.0 exclusively?
>
> http://clisp.cvs.sourceforge.net/viewvc/clisp/clisp/doc/Why-CLISP-is-under-GPL

My shell scripts that call git are also useless without Git. Am I not allowed to distribute my scripts under non-GPL terms? (And what about a script that calls the nonexistent blort utility, and then someone writes blort and distributes it under the GPL?) As I understand it, the GPL (and the thread you mention) address linking, not utility.

RMS seemed to win this debate by arguing that his position was better for the community. I have colleagues who understand that Git is the best VCS available but are concerned about having to train users who are used to IDEs. I've used a couple open source Git viewers and would hesitate to recommend them. The option to use GitBox makes adoption of Git more likely in this case.

CVS is a GNU project.  Did FSF go after proprietary cvs wrappers?
Josh
Chris Perkins· Apr 14, 2011, 01:58 UTC · re: Joshua Juran · lore

Let's look at this at a slighty different way. Let's say someone writes a GUI wrapper for Git, bundles it with Git, and then offers for sale a new proprietary SVC system. They list off all the wonderful features that it has. On the back page of their website is a small 'Licenses' disclosure and the source code to Git comes with the download buried in a subdirectory. None of the users realize the software is using Git.

Is that a violation of the GPL? I would say that it absolutely is. A proprietary software is being built atop the hard labor of the GPL authored software. Hundreds contributed to the Open Source effort, one profits by burying their work in his with the minimal effort.

So, I guess the question is, how is that scenario different than Gitbox? I guess Gitbox doesn't present itself as something else, but code-wise it is no different. Without the Git binary there is no Gitbox.

(Randal L Schwartz writes):
>And it's also about readline.a, which *has* to be linked into a binary
>to make it work.  None of the git code is being *linked* in.

The GPL doesn't mention .a files versus .o versus .so. _Linked_ is not the issue. The issue is one work being _based_ on another, and the word _based_ is the one that appears in the GPL, including the section you quoted.

Section 2 b) of GPL 2 plainly states that any work based on a GPL licensed product must be distributed free of charge and be GPL:

  2 b) You must cause any work that you distribute or publish,
  that in whole or in part contains or is derived from the Program
  or any part thereof, to be licensed as a whole at no charge to
  all third parties under the terms of this License.

And the closing explanation of the GPL 2 says the same in even more frank and plain language. These are the last three lines. 'your program' refers to the program being placed under GPL (ie Git), they are written to someone considering releasing software under the GPL:

  This General Public License does not permit incorporating your
  program into proprietary programs. If your program is a subroutine
  library, you may consider it more useful to permit linking
  proprietary applications with the library. If this is what you want
  to do, use the GNU Lesser General Public License instead of this
  License.
(Joshua Juran writes):
> My shell scripts that call git are also useless without Git.  Am I not
> allowed to distribute my scripts under non-GPL terms?  
I don't know the answer to this. Maybe they must be distributed as GPL.
(Joshua Juran writes):
> CVS is a GNU project.  Did FSF go after proprietary cvs wrappers?

I don't know, but I doubt they did. And it is a good point that failure to defend a copyright can often be argued in court as tacit disavowal of that copyright.

Chris
Randal L. Schwartz· Apr 14, 2011, 02:02 UTC · re: Chris Perkins · lore
>>>>> "Chris" == Chris Perkins <cperkins@medialab.com> writes:

Chris> Is that a violation of the GPL? I would say that it absolutely Chris> is.

Which part, then?  Name chapter and verse.
Maybe the spirit, as you see it.  But which letter?

But if the GPL is to be treated as a legally enforceable document, "live by the sword, and die by the sword". GPL-desk-pounders can't have it both ways.

(This is also why it's not "GNU/Linux"... if RMS had wanted that, it should have been written into the license. He forgot, so the rest is history. It's just Linux, dammit.)

-- 
Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095
<merlyn@stonehenge.com> <URL:http://www.stonehenge.com/merlyn/>
Smalltalk/Perl/Unix consulting, Technical writing, Comedy, etc. etc.
See http://methodsandmessages.posterous.com/ for Smalltalk discussion
Chris Perkins· Apr 14, 2011, 02:28 UTC · re: Chris Perkins · lore
On 4/13/11 11:02 PM, Randal L. Schwartz wrote:
Show 6 quoted lines
>>>>>> "Chris" == Chris Perkins <cperkins@medialab.com> writes:
>
> Chris> Is that a violation of the GPL? I would say that it absolutely
> Chris> is.
>
> Which part, then?  Name chapter and verse.
Section 2 b). I quoted it in whole in my email:
  2 b) You must cause any work that you distribute or publish,
  that in whole or in part contains or is derived from the Program
  or any part thereof, to be licensed as a whole at no charge to
  all third parties under the terms of this License.
and the last paragraph in the "how to" section is even more frank.
> But if the GPL is to be treated as a legally enforceable document, "live
> by the sword, and die by the sword".  GPL-desk-pounders can't have it
> both ways.

I'm not a GPL-desk-pounder. I write commercial software for a living. But I take the efforts I put into my software very seriously. If I were to release software as free software under a license like the GPL I would not appreciate someone attempting to profit off my hard work by putting a bow on it and selling it as their own.

Don't get me wrong. I don't see Gitbox as just a 'bow' atop Git. Frankly, the type of wrapping that Gitbox is doing seems perfectly reasonable to me. Gitbox is providing real value to users, it's not disguising or hiding Git and it's not pretending to be provide the work of Git as its own and it isn't trying to pretend to be anything that it isn't.

However, that said, I still think it's a violation of the GPL. That license lays it out very clearly without much room for interpretation. You can't make commercial works based on GPL licensed software. Without Git there is no Gitbox. End of story.

I'm not a lawyer, were I then perhaps I'd know solidly one way or other.
 I'm not the author nor one of the contributors to Git. Were I then
perhaps I might feel differently about Gitbox being 'perfectly reasonable'.

But I will add this, some on our team would very much like to incorporate Git into one of our own upcoming commercial products. Code-wise in the same manner as Gitbox has done. But we aren't going to do this, because the GPL license for Git clearly states that we cannot.

Chris
Randal L. Schwartz· Apr 14, 2011, 02:34 UTC · re: Chris Perkins · lore
>>>>> "Chris" == Chris Perkins <cperkins@medialab.com> writes:
>> Which part, then?  Name chapter and verse.
Chris> Section 2 b). I quoted it in whole in my email:

Chris> 2 b) You must cause any work that you distribute or publish, Chris> that in whole or in part contains or is derived from the Program Chris> or any part thereof, to be licensed as a whole at no charge to Chris> all third parties under the terms of this License.

Broken pre-condition.  See the beginning of 2:
    2. You may modify your copy or copies of the Program or any portion of
    it, thus forming a work based on the Program, and copy and distribute
    such modifications or work under the terms of Section 1 above, provided
    that you also meet all of these conditions:

Gitbox is not *modifying*, or creating a work *based on the Program*. Separate copyrights. The rest of your argument thus falls apart.

Chris> However, that said, I still think it's a violation of the GPL. That Chris> license lays it out very clearly without much room for Chris> interpretation.

Bullcrap. See above.  Get your preconditions right, and I'll play along.
Chris> You can't make commercial works based on GPL licensed software.

Sure you can. RedHat makes money somehow. Don't play the "we must be starving artists for the cause of GPL" on me.

Chris> But I will add this, some on our team would very much like to Chris> incorporate Git into one of our own upcoming commercial products. Chris> Code-wise in the same manner as Gitbox has done. But we aren't going to Chris> do this, because the GPL license for Git clearly states that we Chris> cannot.

Maybe you need better lawyers then.
-- 
Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095
<merlyn@stonehenge.com> <URL:http://www.stonehenge.com/merlyn/>
Smalltalk/Perl/Unix consulting, Technical writing, Comedy, etc. etc.
See http://methodsandmessages.posterous.com/ for Smalltalk discussion
Joshua Juran· Apr 14, 2011, 04:59 UTC · re: Chris Perkins · lore
On Apr 13, 2011, at 7:28 PM, Chris Perkins wrote:
Show 6 quoted lines
> You can't make commercial works based on GPL licensed software.   
> Without
> Git there is no Gitbox. End of story.
>
> I'm not a lawyer, were I then perhaps I'd know solidly one way or  
> other.

Or, you could consult a lawyer. Or you could see what Git authors and/ or the FSF think about it.

> But I will add this, some on our team would very much like to
> incorporate Git into one of our own upcoming commercial products.
I imagine some of your users would like that as well.
> Code-wise in the same manner as Gitbox has done.

As well as ProjectBuilder/Xcode. The same company that released their Objective-C compiler front end to GCC under the GPL, demonstrating Steve Jobs' willingness to comply with RMS' interpretation of the GPL, also created their own proprietary GUI front end to GCC tools. ProjectBuilder/Xcode has existed for over two decades, and to my knowledge no objection has been lodged. Clearly, there is a critical difference between linking and invoking.

> But we aren't going to
> do this, because the GPL license for Git clearly states that we  
> cannot.

Then you may lose some of your users to competitors who more accurately interpret the GPL and are clear what rights they've been granted.

Josh
Martin Langhoff· Apr 14, 2011, 13:55 UTC · re: Chris Perkins · lore
On Wed, Apr 13, 2011 at 9:58 PM, Chris Perkins <cperkins@medialab.com> wrote:
Show 8 quoted lines
> Let's look at this at a slighty different way. Let's say someone writes
> a GUI wrapper for Git, bundles it with Git, and then offers for sale a
> new proprietary SVC system. They list off all the wonderful features
> that it has.  On the back page of their website is a small 'Licenses'
> disclosure and the source code to Git comes with the download buried in
> a subdirectory.  None of the users realize the software is using Git.
>
> Is that a violation of the GPL? I would say that it absolutely is.

It absolutely is not. Lots of companies do this, and it is perfectly kosher -- either bundle the src somewhere or offer a link to download the source somewhere.

While IANAL, and specifically not _your_ lawyer, I have been in this field for >10 years, and studied law @ masters level on software licensing. You are reading the GPL wrong, and you're not aware of widespread industry practices around it.

Anyone who is curious about this gitbox thing, and interested in *facts* instead of fiction, could advance our knowledge with a simple procedure:

 - Download the "free" version (or payfor the paid version!). It's a
zipfile, no need to hurt any Macs.
 - See if it includes the src or a link to download the src -- it will
probably be in a corner of the documentation or license. Maybe there's
an offer to provide the src in a different way, but a download link is
the usual trick.
 - Does the link work? Can you effectively get the src?
 - Does the src match the binaries you got?
cheers,
m
-- 
 martin.langhoff@gmail.com
 martin@laptop.org -- Software Architect - OLPC
 - ask interesting questions
 - don't get distracted with shiny stuff  - working code first
 - http://wiki.laptop.org/go/User:Martinlanghoff
Tim Smith· Apr 15, 2011, 19:21 UTC · re: Chris Perkins · lore
When GPLv2 talks about works "based on" another work, they mean works that are "derivative works" under copyright law. This is mentioned explicitly in section 0.
GPLv2 also uses the term "derived from", which it does not define and is not a term of copyright law.
Copyright law gives the copyright owner certain exclusive rights. No one else is allowed to do those things without permission from the copyright owner. The GPLv2 (and most other free software licenses) are designed to give you that permission. They serve strictly to remove restrictions, not to add them.
Contrast to a typical commercial software EULA, which might grant to you some permissions, but also will try to stop you from doing things that you are normally allowed to do. For instance, copyright law places no limit on the number of backup copies you can make of software you purchase. All that it requires (at least in the US) is that if you transfer ownership of your copy of the software to someone else you either destroy all your backups, or transfer them with the software. The typical EULA will make you agree to only keep one backup copy.
The FSF is quite clear that they intend the GPLv2 to not be a EULA. It only extends rights to you, it does not take any away. Accordingly, when trying to decide what an undefined term like "derived from" means in the context of GPLv2, you should look to copyright law. This makes it clear that they are using "derived" from to mean the same thing that copyright law means by a "derivative work".
Gitbox is not a derivative work of Git. The only thing Gitbox is doing that requires permission from the Git copyright owners is distributing an unmodified copy of Git with Gitbox. As long as Gitbox obeys the GPL by making the corresponding Git source available in a way allowed under GPLv2, they have permission. End of story.
They tried to clear up some of this confusing in GPLv3:
> To “modify” a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a “modified version” of the earlier work or a work “based on” the earlier work.
-- 
--Tim Smith
Victor Engmark· Apr 14, 2011, 14:15 UTC · lore
On 04/14/2011 03:55 PM, Martin Langhoff wrote:
Show 34 quoted lines
> On Wed, Apr 13, 2011 at 9:58 PM, Chris Perkins <cperkins@medialab.com> wrote:
>> Let's look at this at a slighty different way. Let's say someone writes
>> a GUI wrapper for Git, bundles it with Git, and then offers for sale a
>> new proprietary SVC system. They list off all the wonderful features
>> that it has.  On the back page of their website is a small 'Licenses'
>> disclosure and the source code to Git comes with the download buried in
>> a subdirectory.  None of the users realize the software is using Git.
>>
>> Is that a violation of the GPL? I would say that it absolutely is.
> 
> It absolutely is not. Lots of companies do this, and it is perfectly
> kosher -- either bundle the src somewhere or offer a link to download
> the source somewhere.
> 
> While IANAL, and specifically not _your_ lawyer, I have been in this
> field for >10 years, and studied law @ masters level on software
> licensing. You are reading the GPL wrong, and you're not aware of
> widespread industry practices around it.
> 
> Anyone who is curious about this gitbox thing, and interested in
> *facts* instead of fiction, could advance our knowledge with a simple
> procedure:
> 
>  - Download the "free" version (or payfor the paid version!). It's a
> zipfile, no need to hurt any Macs.
> 
>  - See if it includes the src or a link to download the src -- it will
> probably be in a corner of the documentation or license. Maybe there's
> an offer to provide the src in a different way, but a download link is
> the usual trick.
> 
>  - Does the link work? Can you effectively get the src?
> 
>  - Does the src match the binaries you got?

Excellent answer; it would be great to know in detail what would be an effective (and efficient, if possible) procedure for validating GPL compliance. Something like a cartoon guide to the GPL for developers and/or users. I don't even know if my own GPL'ed projects are within the letter of the law here.

-- 
Victor
Martin Langhoff· Apr 14, 2011, 14:52 UTC · re: Victor Engmark · lore

On Thu, Apr 14, 2011 at 10:15 AM, Victor Engmark <victor.engmark@terreactive.ch> wrote:

> Excellent answer; it would be great to know in detail what would be an
> effective (and efficient, if possible) procedure for validating GPL
> compliance.

Glad you find it useful. There are some interesting FAQs in FSF's website. And http://gpl-violations.org/faq/sourcecode-faq.html

> Something like a cartoon guide

Both why the lucky stiff and Hunter Thompson would be candidates if they were still around.

m
-- 
 martin.langhoff@gmail.com
 martin@laptop.org -- Software Architect - OLPC
 - ask interesting questions
 - don't get distracted with shiny stuff  - working code first
 - http://wiki.laptop.org/go/User:Martinlanghoff

← back to recent threads