[License-review] For Approval: Scripting Free Software License, Version 1.3.6 (S-FSL v1.3.6)

Elmar Stellnberger estellnb at elstel.org
Tue Nov 12 13:09:32 UTC 2013


>
> "Derived works" in copyright (and OSD) corresponds roughly to:
> a) maybe certain "patches", but definitely NOT all;
> b) "branches", the way your text uses the term, likely.
  Yes, everything that is derived from an initial work is a derived work.

>
> Example: I write code that calls a function in the program, in one
> line; and it has 3000 other lines of code, entirely written by me. The
> 3000 lines are not a "derived work" of your program.
> Only, perhaps the whole work (let us accept I add more lines that
> modify your program or the line was registering a hook), once
> distributed together, will be or will not become a derivative work
> under copyright law. The whole work is the "branch".
about patches: A patch is something that was designed to apply changes 
upon something existing. It always mentions the file to be changed in 
the header. Consequently it clearly refers to another file.

about S-FSL: Well it says that if your 3000 lines would need S-FSL code 
to run then they would need to be licensed under S-FSL or any (other) 
OSS-license and it would need to be available free of charge to the 
public, too and thus be able to be used by the original authors. That is 
roughly the same as with GPL which does however use the term 'link 
against' rather than 'necessary to run'. The point about it is that you 
could not have written your 3000 lines of code without support of the 
S-FSL code. Very strictly speaking this could be considered a usage 
restriction; however my counter-argument against it is that GPL implies 
the same 'protection mechanism' in an even more constraining way upon 
compiled code.

about what a patch is: A patch is something that applies changes to a 
previously existing file. Technically you can create something that can 
be processed like a patch but refers to a previously non-existant file. 
I would not call that a "patch" though it is distributed in the same 
file format. As the non-existant file is not under S-FSL I do not see a 
problem in doing so. You would also not be infected by S-FSL if you 
bundle different patches into one patch file. i.e. Bundled patch files 
are considered as a set of patches one for each file. This diction 
appears very logically to me as you can separate the singleton patches 
out of a bundled patch file and they will still work as a patch.

about usage of patches: If you choose not to distribute your 3000 line 
function as patch for an existing S-FSL file then you are safe (and I 
would suggest you to do so). If you do then you express your implicit 
consent that the original authors and branch maintainers may use the 
result of the patch and the patch itself under S-FSL. I would thus 
consider it safe to use anything that is distributed as a patch for 
S-FSL code (and free of further copyright issues for the original authors).

So the discussion about patches is that there is in deed one patch for 
each file as this is the smallest independently usable unit. The 
discussion about derived works is that if my work needs to have existed 
previously in order for you to create your own work out of it then it 
can be considered a derived work as long as the preconditions do so 
pertain on things protected by copyright law (ideas, algorithms or 
technical patterns do not. ). You might have to ask a lawyer for an 
exact definition, though.





More information about the License-review mailing list