• I feel most people are fundamentally misunderstanding what forking means.

    Generally, forking means making a copy and modifying it.

    Github, however, seems to define “fork” as just making a copy.

    So, in fact there is no “TOS violation”. The license forbids making a copy and modifying it, while github requires that you allow making copies. There is no conflict between the two.

    Even if it were, just having a license that contradicts the github TOS is not a TOS violation (unless that is separately mentioned somewhere).

          • The TOS actually does not say you are granting users permissions to fork in the usually understood sense. The TOS gives you permission to copy, which Github calls “forking” even though it isn’t.

            • @sweng

              > you agree to allow others to view and “fork” your repositories

              How did you come to the conclusion that this does not grant the permissions to fork? It’s literally in the sentence. Where else did you find the definition of “forking”, if not here? This is what Github defines in the TOS, this is the label on the button in github UI, so clearly this is also what winamp means when they forbid “forking” and that means it’s against the TOS. There is no other “forking”.

              • I got it from the TOS:

                By setting your repositories to be viewed publicly, you agree to allow others to view and “fork” your repositories (this means that others may make their own copies of Content from your repositories in repositories they control).

                They explicitly define it as making copies. There is no mention of being allowed to modify said copy. Also note the quotes around “fork”, since it differs from the usual definition.

                E.g. wikpedia (https://en.m.wikipedia.org/wiki/Fork_(software_development) defines it thusly:

                In software engineering, a project fork happens when developers take a copy of source code from one software package and start independent development on it, creating a distinct and separate piece of software.

                (Emphasis mine)