Je trouve qu'il est inutilement dupliqué pour l'avoir dans chaque fichier de code, mais je le vois sur la plupart des projets open source. Dois-je faire de même ou simplement inclure une seule licence en dehors du code?
Je trouve qu'il est inutilement dupliqué pour l'avoir dans chaque fichier de code, mais je le vois sur la plupart des projets open source. Dois-je faire de même ou simplement inclure une seule licence en dehors du code?
Réponses:
Un seul en dehors du code, s'il vous plaît! Je ne sais pas pour les autres, mais je déteste voir la même chose sur chaque fichier.
Je pense que je l'ai lu plusieurs fois, juste en le parcourant.
evidence for the legal situation
. Perhaps a lawyer can add a link to a court decision
.
CLUF n'est pas le bon terme ici, car les personnes qui consultent le code source ne sont généralement pas des utilisateurs finaux.
Légalement, cela ne fait aucune différence non plus; le droit d'auteur n'a pas besoin d'être déclaré explicitement.
Fondamentalement, tout ce que vous obtenez est un risque moindre pour les personnes violent accidentellement vos conditions de licence. Vous devrez décider à quel point cela est important pour vous.
Je dirais que le meilleur compromis est de mettre un en-tête très court contenant un lien (URL absolue ainsi que relative dans le projet) vers le texte complet de la licence dans chaque fichier de code source. De cette façon, quiconque se soucie de la licence sait où la trouver (idéalement, les personnes qui sont prêtes à payer des frais de licence massifs; vous voulez certainement que ces personnes puissent vous contacter!)
Non, vous n'êtes pas obligé de mettre la licence dans chaque fichier de code source.
Si vous regardez de plus près, la plupart des applications FOSS ne le font pas non plus. Ils mettent une déclaration de copyright en haut de chaque fichier et une courte phrase vous indiquant sous quelle licence le fichier se trouve et où vous pouvez trouver le texte intégral de la licence. Ils vous dirigent généralement vers le fichier COPYING ou LICENSE contenant le texte intégral de la licence et / ou vers un site Web contenant le texte intégral (au cas où le fichier COPYING ne serait plus là).
Comme Michael Borgwardt l'a dit dans ses réponses, légalement, vous n'êtes pas obligé de le faire. Mais il est conseillé pour le code source que vous avez l'intention de distribuer car les gens peuvent voir immédiatement qui détient le droit d'auteur et quelle est la licence.
Cela peut dépendre de la licence. La GPL fait la distinction entre preamble
etlicense
. Il indique clairement que le préambule (ennuyeux) doit faire partie du code :
Puis-je omettre le préambule de la GPL, ou les instructions sur la façon de l'utiliser sur vos propres programmes, pour économiser de l'espace?
Le préambule et les instructions font partie intégrante de la GNU GPL et ne peuvent être omis. En fait, la GPL est protégée par le droit d'auteur et sa licence ne permet que la copie textuelle de l'intégralité de la GPL. (Vous pouvez utiliser les termes légaux pour créer une autre licence, mais ce ne sera pas la GNU GPL.) (1)
Source: 1) http://www.gnu.org/licenses/gpl-faq.html#GPLOmitPreamble
Voir également http://softwarefreedom.org/resources/2012/ManagingCopyrightInformation.html
Un ebook gratuit d'ifrOSS explique et commente la GPL 2 en allemand. Il y en a un autre pour GPL 3
Pour une réponse bien fondée, vous devriez demander un avis juridique qui n'est pas disponible sur sx. Si vous ne trouvez pas d'avocat pour votre projet (open source), jetez un œil au réseau juridique de la FSFE .
[...] attach the following notices to the program.
- les avis suivants ne représentent qu'une petite partie de la licence complète. safest to attach them to the start of each source file
- le plus sûr mais pas obligatoire. each file should have at least the "copyright" line and a pointer to where the full notice is found.
- la seule exigence est la ligne de copyright avec un pointeur vers le reste. C'est bien de mettre la licence complète dans un fichier séparé.
Je pense que le raisonnement derrière la mise dans chaque dossier est juridique. Si l'accord se trouve dans chaque fichier, il n'y a aucune chance que quelqu'un tombe sur un morceau de code sans être exposé à la licence.
Ce n'est peut-être pas une bonne chose, mais tous les grands garçons l'utilisent, donc si c'est juste une douleur visuelle, je chercherais une meilleure raison pour ne pas faire de même.
Si vous utilisez la GPL, c'est plus un problème, mais si vous utilisez des licences du domaine public comme BSD ou MIT, je ne pense pas que vous vous souciez vraiment de ce que les gens font avec le code de toute façon. Je suppose que cela dépend de la rigueur de votre licence.
IANAL,
En supposant que vous parlez de licence, pas de CLUF, vous pouvez mettre la licence à l'extérieur. Cela se fait presque toujours avec des licences très longues telles que la GPL. Il serait idiot de mettre la licence GPL entière dans chaque fichier. Habituellement, vous auriez juste un type d'avis indiquant où vous pouvez trouver la licence réelle. C'est parfaitement légal. Cependant, avec des licences très courtes telles que BSD / Apache / MIT / peu importe, il est plus simple d'inclure simplement la licence dans chaque fichier, car l'avis indiquant où trouver la licence serait presque aussi long que la licence elle-même.
Cela dépend de ce que la licence dicte. La GPL, par exemple, vous demande de mettre un bref préavis dans chaque fichier source, d'inclure la licence entière quelque part dans votre distribution source et de rendre votre distribution source accessible à toute personne qui obtient une copie de la distribution binaire.
Si vous n'êtes pas d'accord avec cela et que c'est VOTRE code, vous êtes libre de choisir une licence plus agréable ou de créer la vôtre.
Si votre code doit être compilé pour que vous ne distribuiez qu'un binaire, cela n'a vraiment pas d'importance. Parce que lorsque vous créez un binaire, les commentaires sont supprimés avant le processus de compilation. Il importe uniquement que vous distribuiez le code source réel soit en open source, soit en open source. Cela est généralement important si vous distribuez une application dans un langage de script qui ne compile pas.
Vous n'en avez pas besoin pour la licence, un seul fichier externe fera l'affaire tant que les fichiers qu'il couvre sont clairs.
Cependant, pour le droit d' auteur, vous devriez avoir l'avis de droit d'auteur sur chaque morceau de texte.
Ce que je fais est de mettre un commentaire de deux lignes en haut du fichier, en indiquant le nom de mon entreprise, la date de la dernière révision et le nom de la licence dont dispose le fichier source, puis tout en bas du fichier une version courte du Licence.
Bien entendu, la licence complète (toutes en cas de licences multiples) est toujours incluse dans les répertoires du fichier source et de la version.