Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gitfast is GPL #4413

Closed
apjanke opened this issue Sep 28, 2015 · 3 comments
Closed

gitfast is GPL #4413

apjanke opened this issue Sep 28, 2015 · 3 comments
Labels
Area: core Issue or PR related to core parts of the project

Comments

@apjanke
Copy link
Contributor

apjanke commented Sep 28, 2015

Some of the code in the gitfast plugin is GPL (GNU Public License).

git-prompt.sh

# Copyright (C) 2006,2007 Shawn O. Pearce <spearce@spearce.org>
# Distributed under the GNU General Public License, version 2.0.

git-completion.bash

# Copyright (C) 2006,2007 Shawn O. Pearce <spearce@spearce.org>
# Conceptually based on gitcompletion (http://gitweb.hawaga.org.uk/).
# Distributed under the GNU General Public License, version 2.0.

_git

# Copyright (c) 2012-2013 Felipe Contreras <felipe.contreras@gmail.com>

This is incompatible with the MIT License that Oh My Zsh is licensed under. Looks like this code should be pulled, or we should add a mechanism and doco about including code using other licenses.

Most of the stuff in gitfast appears to simply be a copy of the completion code shipped with the git distribution itself. (E.g. in my Homebrew-managed git, similar files are installed to /usr/local/share/zsh/site-functions.) You could probably change the plugin to load it from the git installation on the local machine instead of carrying the code around in OMZ, which would fix the licensing issue.

@mcornella mcornella mentioned this issue Sep 24, 2018
1 task
@mcornella mcornella added the Area: core Issue or PR related to core parts of the project label May 5, 2019
@felipec
Copy link
Contributor

felipec commented Jun 6, 2019

I'm the author of the _git script from Git anyway, and I don't have any problem with using an MIT license.

The other two are a problem.

The git-completion.bash script isn't actually needed, we could use whatever is installed in /usr/share/bash-completion. I'm fine with deleting it. I only put it in gitfast so we could have the latest that is actually tested.

But git-prompt.sh is trickier, because there is no standardized way of distributing such scripts. If this is a big deal we could ask the main authors if the file could be relicensed. I'm the main author, but there's at least one other.

@robbyrussell
Copy link
Member

I'm going to "close" this for now as I will wait until one of the authors asks us to no longer distribute it. If someone has a good idea on how to sort this out, I'd welcome advice!

@apjanke
Copy link
Contributor Author

apjanke commented Oct 8, 2023

That sounds reasonable.

I think my original concern here may have been overblown anyway. The GPL is incompatible with the MIT license in general, but in the specific way OMZ is using it, it may be fine? OMZ is shipped as source and not binary, and all the source for it and its components is available. So you're complying with the GPL's "must supply source code" part, and I dunno if this counts as "linking" code in a way that would require the rest of the code to be GPL-licensed per the GPL's "viral" mechanism. Might only be an issue if someone wants to further redistribute OMZ as a packaged binary? Question for a lawyer, not me.

My guess is it's 99% likely you'll never hear about this problem again. I'd still lean toward putting a one-line "some of the code redistributed with OMZ is under other Open Source licenses; see it for details" notice in the README's "License" section, for full disclosure.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: core Issue or PR related to core parts of the project
Projects
Archived in project
Development

No branches or pull requests

4 participants