[0] https://help.github.com/articles/github-terms-of-service/#f-... Section F.1: "By setting your repositories to be viewed publicly, you agree to allow others to view and fork your repositories."
This license seems to directly contradict GitHub's Terms of Service. It says:
> [...] you are hereby granted a non-exclusive, worldwide, royalty-free copyright license to (1) use and copy the Software; and (2) reproduce and distribute the Software as part of your own software ("Your Software"), provided Your Software does not consist solely of the Software; and (3) modify the Software for your own internal use. Facebook reserves all rights not expressly granted to you in this license agreement.
Where as GitHub's Terms of Service state:
> By setting your repositories to be viewed publicly, you agree to allow others to view and fork your repositories.
It seems impossible for me to fork this software without violating Facebook's license. To fork it on GitHub would require that I make the repo public (meaning I would be distributing the Software as "My Software" even though it consists solely of the Software). And any commits I made to the forked repo would violate their license because I am only licensed to modify the Software for my own "internal use".
"reproduce and distribute the Software as part of your own software ("Your Software"), provided Your Software does not consist solely of the Software;"
Seems like a clear abuse of GitHub's goodwill towards real open-source projects, though. Luckily, it looks like they're going to change the license: https://github.com/facebookincubator/Keyframes/issues/24
The TL;DR is: You can't grant more rights than you have or can sublicense, no matter what the TOS does.
The same is true of most property. You can't gain an interest greater than the one the person who gave it to you had.
Otherwise, you'd be able to create greater title out of thin air (IE a guy with a life interest can't grant you a fee simple)
Imagine instead github's TOS said "by uploading, you grant the right to use the software under the BSD license". Bob, who has no rights at all, uploads your commercial software. Is it suddenly BSD licensed? No, because Bob didn't have the right to grant "the right to use the software under the BSD license". Even if Github made Bob sign the contract with his blood, it doesn't give away any rights Bob doesn't own.
Here's the truth table version. Note: We assume the validity and bindingness of the TOS, which would certainly be a serious issue in any litigation.
A has necessary rights to grant right to fork. A uploads thing to github with license that prevents forks.
end result -> You probably have right to fork.
A has does not have necessary rights to grant right to fork. A uploads thing to github with license that prevents forks.
end result -> You probably do not have right to fork. Any TOS violation is a separate contractual issue.
A has necessary rights to grant right to fork. A uploads thing to github with license that is silent on forks.
end result -> You probably have right to fork.
A does not have necessary rights to grant right to fork. A uploads thing to github with license that is silent on forks.
end result -> gray area. You probably do not have right to fork. You may or may not be able to argue an implicit license.
Note that this gets even more complex if A is a member of a corporation, as you have actual and apparent authority issues.