BoomSmurf schreef op maandag 02 oktober 2006 @ 14:51:Welke rechten/plichten heb je als je een GPL'd command line tool wil gebruiken in een (gratis, maar niet OSS, en als het dat wel zo worden al zeker niet GPL) ander programma? Gebruik is puur dat tooltje aanroepen met wat parameters en de output parsen. Moet mijn eigen programma dan ook GPL zijn?
Nee; je gebruikt het GPL'ed programma immers alleen om data mee te verwerken. Zie ook de GPL FAQ:
If a program released under the GPL uses plug-ins, what are the requirements for the licenses of a plug-in.
It depends on how the program invokes its plug-ins. If the program uses fork and exec to invoke plug-ins, then the plug-ins are separate programs, so the license for the main program makes no requirements for them.
Dat is hier van toepassing (en verschilt wezenlijk van het gebruik van libraries/DLLs).
Verder, als ik dat tooltje mee wil distribueren moet ik ook de source er van beschikbaar maken, toch?
Ja, als je een binary versie van een GPL programma distribueert moet je in het algemeen ook de broncode beschikbaar maken. Dat betekent ook dat je het op verzoek per post moet leveren. In de praktijk zal zo'n verzoek natuurlijk zelden voorkomen als de broncode elders beschikbaar is.
@Sendy: volgens mij is jouw interpretatie verkeerd. De GPL maakt onderscheid tussen het gebruik van een programma (waar geen restricties op plaatsvinden) en het linken van programma's zo dat ze één geheel vormen (waarbij alle onderdelen aan de GPL moeten voldoen). Als je een programma gebruikt zonder ermee te linken, is de GPL niet van toepassing op jouw programma. Zie ook de FAQ:
What constitutes combining two parts into one program? This is a legal question, which ultimately judges will decide. We believe that a proper criterion depends both on the mechanism of communication (exec, pipes, rpc, function calls within a shared address space, etc.) and the semantics of the communication (what kinds of information are interchanged).
If the modules are included in the same executable file, they are definitely combined in one program. If modules are designed to run linked together in a shared address space, that almost surely means combining them into one program.
By contrast, pipes, sockets and command-line arguments are communication mechanisms normally used between two separate programs. So when they are used for communication, the modules normally are separate programs. But if the semantics of the communication are intimate enough, exchanging complex internal data structures, that too could be a basis to consider the two parts as combined into a larger program.
Dit stemt overeen met de tekst die ik hierboven al aanhaalde, en maakt het vrij duidelijk dat in het scenario wat Boomsmurf omschrijft er twee aparte programma's zijn, één GPL'ed programma en één ander programma wat helemaal niets met de GPL te maken heeft.
Gegevens die een GPL programma uitvoert zijn met nadruk niet beschermd (denk aan dingen als executables van GCC, of plaatjes gemaakt met GIMP of GraphViz); die mag je vrij gebruiken zoals je maar wil, dus ook in een proprietary applicatie.
Nee, het maakt niet uit wie wat aanroept. Het gaat om de vraag of de programma's op zichzelf staande programma's zijn, of niet: "[..] in many cases you can distribute the GPL-covered software alongside your proprietary system. To do this validly, you must make sure that the free and non-free programs communicate at arms length, that they are not combined in a way that would make them effectively a single program."
Het hele concept van 'aanroepen' komt in de licentie niet voor.
[
Voor 52% gewijzigd door
Soultaker op 02-10-2006 15:43
]