6 ms·
This implementation is freely licenced enough that the BSDs and others that don't use Git for license reasons could use it. It would be interesting to see an a
by avar 9y ago
This implementation is freely licenced enough that the BSDs and others that don't use Git for license reasons could use it.
It would be interesting to see an alternative implementation like this get enough feature parity that projects like the BSDs could migrate and still be protocol and worktree compatible so most users could continue using the GPL2 implementation.
Edit: Seems people here are unaware that the BSDs treat GPL software like cooties, see e.g. [1]. They wouldn't start using source control that gave them less freedom than SVN, an with CVS there's the expectation that OpenCVS might get finished.
1. https://wiki.freebsd.org/GPLinBase https://wiki.freebsd.org/GPLinBase
- k__ 9y agoWhat's the problem with using GPL software if you don't want to change it?
- yorwba 9y agoAFAIK, software for the BSDs is usually maintained in-tree, and patched to integrate with the rest of the distribution. I don't think including GPL-licensed software would be compatible with the BSD license of the overall project. That doesn't mean you can't use anything GPL, just that it can't become part of the system.
- _delirium 9y agoAll the BSDs have traditionally included GPL'd software in the base system, so I don't think many people share this view (it's a possible interpretation of the GPL, but not a common one). As one major example: every BSD until recently included gcc in-tree, and OpenBSD and NetBSD still do.
- loeg 9y agoFreeBSD sees this as a necessary evil and aims to move to zero GPL code in base, eventually (when ports GCC works well enough for 2nd tier architectures and Clang/ias / elftoolchain works well enough for 1st tier architectures).
- user5994461 9y agoYou can't use GPL code in non GPL software.
- perlgeek 9y agoI thought you can't link to GPL Software in non-GPL software? Shipping an unmodified copy of git and calling it should be fine even in proprietary code, no?
- marcoperaza 9y agoThis is an open question. The GPL itself does not define what constitutes a derivative work. The FSF does, however, promote the view that linking does create a derivative work, while simply calling an external binary in usual cases does not. But that can't function as a hard rule. Because I could just make a wrapper binary that handles all of the scenarios I need a GPL'd library for, and then call my wrapper executable from my proprietary code.
- jahewson 9y ago> Because I could just make a wrapper binary that handles all of the scenarios I need a GPL'd library for, and then call my wrapper executable from my proprietary code. Yes, you can literally do this. It's not a derived work because your code is entirely independent of the GPL'd code and the GPL can't possibly cover code that you wrote independently. Simply interacting with some external GPL'd program does not expose your code to any GPL requirements.
- marcoperaza 9y agoYou can't just work around the GPL by placing a command-line interface as a shim between your code and the function call interface of the GPL'd library. I'm talking about a contrived binary that just calls library functions, forwarding command line parameters to the arguments of that function as necessary.
- toast0 9y agoWho says they don't want to change it? Integration with OpenBSD pledge or FreeBSD capsicum could be useful.
- gribbly 9y agoHmmm... in what way does Git being GPL/LGPL cause licence problems for the BSDs ?
- teamhappy 9y agoI guess you'd want to be able to include it in your distribution. FreeBSD for example includes svn (or svnlite or whatever) so you can fetch/update the source and do a buildkernel or buildworld without having to install any ports.
- gribbly 9y agoBut you can include Git in the distribution, it's a self-contained program, it's license won't affect anything else it ships alongside with.
- teamhappy 9y ago> The FreeBSD Project aims to produce a complete, > BSD-licensed operating system allowing consumers of the > system to produce derivative products without constraint > or further license obligations. https://www.freebsd.org/internal/software-license.html https://www.freebsd.org/internal/software-license.html Also https://www.openbsd.org/goals.html https://www.openbsd.org/goals.html and https://www.netbsd.org/about/redistribution.html#why-berkeley https://www.netbsd.org/about/redistribution.html#why-berkele...
- gribbly 9y agoOk, so it's license philosophy rather than any actual license legality problematics, I can understand that.
- michaelmrose 9y agoIf someone wanted to produce a FreeBSD derivative would they really need to be able to ship a modified version of git?
- rjsw 9y agoThere isn't one single reason for avoiding use of GPL software that is true for all BSD variants. Requiring OCaml in the base operating system could equally be a reason to avoid this, whatever licence is used.
- throwawayjava 9y ago> Requiring OCaml in the base operating system I'm not sure I understand this concern in the majority use cases. Why would you need an OCaml compiler installed?
- messe 9y agoThe base system is usually capable of compiling itself. If the source for your base system is stored on a remote git repository, and your implementation of git in your base system is written in OCaml, you're going to have to use an OCaml compiler to recompile it.
- int_19h 9y agoBut you don't need source control to compile the base. You only need it to retrieve the base sources - and even then only when you want to get the latest, since the installer comes with a tarball of /usr/src.
- doozy 9y agoUnfortunately OCaml itself has its own weird licensing issues being distributed under a combination of the QPL and GNU licenses. Every few years I take a look at it, notice the license and move on. There's no reason whatsoever for a language not to have an implementation under a permissive license.
- Drup 9y agoThe QPL is not used anymore. The OCaml compiler is GPL, the OCaml standard library is LGPL with the OCaml linking exception and the license of produced binaries is whatever the author wants. If you still have issues with that .. I would really like an explanation.
- xfer 9y agoPeople just want reasons to complain about languages, see also: racket, when they have nothing to complain about they pick the license.
- moron4hire 9y agoNo, there's no reason to avoid the GPL for languages, because you aren't building a derivative work of the language itself, so it's licensing has no bearing on your software.
- steinuil 9y agoThat's not entirely true; GCC (and almost every other GPL-licensed compiler) has a specific exception for its runtime libraries that lets you distribute their compiled version under any license [1]. But for example, Ada Core's GNAT is licensed under GPL but doesn't have that exception, which makes the binaries it outputs be licensed under the GPL as well, to make you buy the Pro version of the compiler. https://www.gnu.org/licenses/gcc-exception-faq.html https://www.gnu.org/licenses/gcc-exception-faq.html
- deleted 9y ago[deleted]
- SwellJoe 9y ago"with CVS there's the expectation that OpenCVS might get finished." Good lord. Surely, no one is working on reimplementing CVS in 2017? The CVS repository (https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin/cvs/ https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin/cvs/) seems to actually have quite a bit of recent activity, so it seems to be a serious project that someone intends to deploy in the real world. There are a handful of things that the OpenBSD project does that I feel are quixotic (continuing to use CVS for everything, in general, is one of them), but this one takes the cake. CVS was good when compared to what came before (and in some regards even compared to Subversion), but there's no comparison with git (or any of the modern DVCS, really).
- loeg 9y agoIt might be easier to just write a permissively licensed 'gitlite' that can checkout sources (and maybe even update a clean tree). That is the potential solution I've heard discussed in BSD land.