Apple violating git LGPL?

2014-08-06 Thread Robert P Fischer
Hello,

I ran git on my newly-set-up OS X Mavericks machine, and get:

$ git
 Agreeing to the Xcode/iOS license requires admin privileges,
please re-run as root via sudo.

Running 'git --verision' gives the same result.  This seems
problematic in a few ways, and I am wondering if the git community is
interested in addressing it:

1. Why do I have to agree to Apple's licensing terms to use an LGPL
program?  Is this appropriate?  Is it allowed under the LGPL?

2. This is a significant problem for me, because I'm using a work
machine and do not have admin access.

3. The version of git I ran is clearly NOT a plain vanilla official
git, it is a derivative work.  Has Apple provided the source code of
the special version that I just ran?  If not, that would seem to be a
violation of the LGPL.

Thanks,
Bob

--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Apple violating git LGPL?

2014-08-06 Thread Charles Bailey
On Wed, Aug 06, 2014 at 02:10:08PM -0400, Robert P Fischer wrote:
 
 3. The version of git I ran is clearly NOT a plain vanilla official
 git, it is a derivative work.  Has Apple provided the source code of
 the special version that I just ran?  If not, that would seem to be a
 violation of the LGPL.

I found the source code of Apple's Git builds here:

http://www.opensource.apple.com/source/Git/

Mine happens to be Git-48. I'm not sure how to tell what version you
have if it is prompting you to accept a licence first.

Charles.
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Apple violating git LGPL?

2014-08-06 Thread Jeff King
On Wed, Aug 06, 2014 at 02:10:08PM -0400, Robert P Fischer wrote:

 I ran git on my newly-set-up OS X Mavericks machine, and get:
 
 $ git
  Agreeing to the Xcode/iOS license requires admin privileges,
 please re-run as root via sudo.
 
 Running 'git --verision' gives the same result.  This seems
 problematic in a few ways, and I am wondering if the git community is
 interested in addressing it:
 
 1. Why do I have to agree to Apple's licensing terms to use an LGPL
 program?  Is this appropriate?  Is it allowed under the LGPL?

You are not running the real git at all here; Apple ships stubs for
several commands, including git, that are distributed with XCode. When
you run the program, it prompts you to install XCode, which then
actually downloads and installs git, replacing the stub.

You can download XCode separately, of course, but you would still need
to agree to the license. You can download git separately and not need to
bother (though I do not know offhand how to download Apple's git, or
whether they provide a script to replace the stubs).

Also, minor nit, but git is GPL, not LGPL.

 2. This is a significant problem for me, because I'm using a work
 machine and do not have admin access.

You can always download and install git yourself. There's no need to use
the XCode version. However, XCode is the simplest way to get a compiler
on the machine, AFAIK (I do not use OS X myself).

 3. The version of git I ran is clearly NOT a plain vanilla official
 git, it is a derivative work.  Has Apple provided the source code of
 the special version that I just ran?  If not, that would seem to be a
 violation of the LGPL.

You didn't run a derivative git. You ran their stub.

As it happens, though, they _do_ modify the git that they distribute. I
know at least that they bake-in the osxkeychain helper config in away
that the user cannot turn off. There may be more changes, but I haven't
done a full diff. And they do provide the source:

  https://www.opensource.apple.com/source/Git/

-Peff
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Apple violating git LGPL?

2014-08-06 Thread Bruce Ferrell

On 08/06/2014 11:43 AM, Jeff King wrote:

snippage here 8 8
As it happens, though, they _do_ modify the git that they distribute. I know at least that they bake-in the osxkeychain helper config in away that the user cannot turn off. There 
may be more changes, but I haven't done a full diff. And they do provide the source: https://www.opensource.apple.com/source/Git/

Is that a plugin?  if not what about proprietary plugins? How are they affected 
by the license is this case?
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Apple violating git LGPL?

2014-08-06 Thread Tony
 Also, minor nit, but git is GPL, not LGPL.

But Apple put a LGPL license in side the folder. See:
https://www.opensource.apple.com/source/Git/Git-48/src/git/LGPL-2.1
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Apple violating git LGPL?

2014-08-06 Thread Jeff King
On Wed, Aug 06, 2014 at 01:23:00PM -0700, Tony wrote:

  Also, minor nit, but git is GPL, not LGPL.
 
 But Apple put a LGPL license in side the folder. See:
 https://www.opensource.apple.com/source/Git/Git-48/src/git/LGPL-2.1

Interesting. It starts with:

  While most of this project is under the GPL (see COPYING), the xdiff/
  library and some libc code from compat/ are licensed under the GNU
  LGPL, version 2.1 or (at your option) any later version and some other
  files are under other licenses.  Check the individual files to be
  sure.

which makes sense.

-Peff
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Apple violating git LGPL?

2014-08-06 Thread Jeff King
On Wed, Aug 06, 2014 at 12:53:56PM -0700, Bruce Ferrell wrote:

 On 08/06/2014 11:43 AM, Jeff King wrote:
 
 snippage here 8 8
 As it happens, though, they _do_ modify the git that they distribute. I
 know at least that they bake-in the osxkeychain helper config in away that
 the user cannot turn off. There may be more changes, but I haven't done a
 full diff. And they do provide the source:
 https://www.opensource.apple.com/source/Git/

 Is that a plugin?  if not what about proprietary plugins? How are they
 affected by the license is this case?

I don't know exactly what you mean by plugin here.

osxkeychain is a separate program found in git's contrib directory.  You
point git at it by setting your credential.helper config to
osxkeychain. However, in the Apple version, they have hardcoded that
config into the git binary, and you can't turn it off (you can add
additional helpers, but you can't undo the keychain helper). So I don't
think there is any licensing question about what they have done[1].

I do not know offhand of any proprietary credential helpers.  They do
interact with git over a pipe, and their primary function is to feed
data to git. My understanding is that there are some people who believe
that makes them derivative works of git (i.e., that talking RPC over a
pipe to avoid linking does not get around the GPL), but there are others
who would consider them separate programs.

-Peff

[1] Whether what they have done is smart is another matter. I looked at
the diff Apple's Git-48 and v1.8.5.2 (on which it seems to be
based).  There aren't a huge number of changes, but some of them
baffle me. Why bake-in credential.helper when you can set it in
/etc/gitconfig? Why default core.trustctime to false when you can
set it via /etc/gitconfig?  Etc. I wish they would work with the
configurability tools that we already provide, and if those are not
sufficient, work with us to make git more configurable. But AFAIK
whoever is responsible for those changes has never participated on
the mailing list.
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html