Faire un don ! | | style | statistiques | contactez-nous | plan | lettre d'information

: Publication de la licence « GNU Affero General Public Licence Version 3 »

Posté par Thomas Petazzoni (page perso, ). Modéré le 20 novembre 2007.
Après la version 3 des licences GPL et LGPL publiées le 29 juin 2007, la Free Software Foundation vient de publier aujourd'hui la licence GNU Affero General Public License version 3.

Il s'agit d'une nouvelle licence. Basée sur la version 3 de la licence GPL, elle contient une clause supplémentaire qui permet aux utilisateurs qui interagissent avec le logiciel licencié au travers d'un réseau de recevoir le code source correspondant. Comme l'indique le communiqué, « en publiant cette licence, la FSF souhaite encourager les communautés de développeurs et d'utilisateurs qui travaillent sur des logiciels libres orientés vers le réseau ».

« De nombreux programmeurs choisissent la GNU GPL pour cultiver un développement communautaire, et le fait que de nombreuses modifications développées par les utilisateurs ne soient jamais distribuées peut être décourageant pour les développeurs. La GNU AGPL répond à cette attente. La FSF recommande à tous de considérer l'utilisation de la GNU AGPL pour tout logiciel qui sera communément utilisé au travers d'un réseau. »

Il est intéressant de noter que la compatibilité entre les licences AGPL et GPL a été prévue. Les programmeurs qui souhaitent utiliser la licence AGPL pour leurs travaux peuvent réutiliser le code des nombreuses bibliothèques ou code source disponible sous licence GPLv3.

En ce qui concerne l'adoption des licences GPLv3 et LGPLv3, un site recense les projets ayant effectué la migration. À ce jour, le site recense 1162 projets passés sous GPLv3 et 95 projets sous LGPLv3 (pour 6065 projets sous GPLv2 et 118 sous LGPLv2).

> Lire la dépêche (112 commentaires, moyenne: 2,4).  

Vous avez demandé le commentaire #883902.

Mise en oeuvre

Posté par anw () le 20/11/2007 à 12:25. (lien). Évalué à 3.

Concrètement, je vois mal comment cette licence peut être appliquable à une application web du style CMS, système de forums ou d'e-commerce.
Ce genre d'applications nécessite généralement d'éditer des fichiers de configuration, de personnaliser des templates... Ces modifications aussi minimes soient-elles devront être rendues publiques.
Ne faudrait-il pas trouver un juste milieu entre la modification du coeur de l'application, et sa personnalisation/intégration ?

...your modified version must prominently offer all users interacting with it [...] an opportunity to receive the Corresponding Source of your version by providing access to the Corresponding Source from a network server[...]

Connaissez-vous des exemples de mécanismes permettant de transmettre le code source modifié ?

  • [^]Re: Mise en oeuvre

    Posté par Jean-Marc Liotier (Jabber id, page perso, ) le 20/11/2007 à 12:33. (lien). Évalué à 2.

    > Ce genre d'applications nécessite généralement d'éditer des
    > fichiers de configuration, de personnaliser des templates...
    > Ces modifications aussi minimes soient-elles devront être
    > rendues publiques.

    Il me semble que cette license va donner lieu à quelques discussions au sujet de la distinction entre configuration, personnalisation et modification.

    [^]Re: Mise en oeuvre

    Posté par ragoutoutou () le 20/11/2007 à 12:41. (lien). Évalué à 2.

    Tu ne dois pas fournir tes fichiers de configuration mais tes adaptations. Si par exemple tu écris un connecteur pour accéder à un backend, genre db, repository, ... tu dois pouvoir offrir tes modifications sous AGPL en même temps que le service... et si ton interface de connexion implique l'utilisation de librairies tierces non-agpl et non-gpl3 tant-pis, tu n'as pas le droit de les utiliser.

    Dans le cas donc d'un site web, tu peux te retrouver dans la situation où tu as le droit de modifier et d'adapter à tes besoins, mais pas d'utiliser, ou alors d'utiliser mais pas d'adapter à tes besoins.

    [^]Re: Mise en oeuvre

    Posté par Aldoo (Jabber id, ) le 21/11/2007 à 10:14. (lien). Évalué à 2.

    Ben, faudra juste que tu arrête de mettre tes mots de passe en clair dans tes fichiers php ! Non mais !

    • [^]Re: Mise en oeuvre

      Posté par anw () le 21/11/2007 à 11:03. (lien). Évalué à 2.

      Il faut bien mettre ces mots de passe quelque part (connexion BD). Très souvent, un fichier de conf se résume à du code qui initialise des variables. Or, tout code source modifié sur un serveur publique doit être redistribué... la licence ne fait pas la différence.
      Et quid des templates ? Qui va vouloir redistribuer ce qui fait l'identité de son site web ?

      • [^]Re: Mise en oeuvre

        Posté par Aldoo (Jabber id, ) le 21/11/2007 à 11:40. (lien). Évalué à 2.

        C'était de l'humour, bien sûr.

        Sinon, effectivement, il serait logique que les fichiers de la configuration particulière du serveur ne soient pas soumis à des clauses de type AGPL.

        Cela dit, si ce n'est pas dans l'intention des potentiels auteurs AGPL de soumettre les fichiers de conf à de telles clauses, en cas d'oubli éventuel, j'imagine qu'ils peuvent relicencer à la demande (en GPL ou en DWTFYWPL), si telle est leur intention.

        Et peut-être même que ce cas de figure est déjà explicite dans le texte de l'AGPL ?
        Sinon, ben tant pis, fallait pas utiliser ce soft !

        Bref, beaucoup de faux problèmes, je pense. Il ne faut pas oublier que la licence n'est qu'un contrat entre auteurs et utilisateurs. S'il n'y a pas de terrain d'entente entre les deux, ce n'est pas de la faute de l'AGPL.

        • [^]Re: Mise en oeuvre

          Posté par anw () le 21/11/2007 à 12:02. (lien). Évalué à 1.

          Désolé, je ne savais pas dans quel sens prendre ta remarque :)
          Il ne me semble pas que le cas de la configuration/personnalisation soit explicite dans le texte de l'AGPL ; ça me conforte dans l'idée que la licence est compliquée à mettre en oeuvre pour des applis web classiques.

        [+] [^]Re: Mise en oeuvre

        Posté par Mathieu Stumpf (Jabber id, page perso, ) le 21/11/2007 à 12:40. (lien). Évalué à -1.

        Bah c'est sûr que si tu t'enflamme sans même lire la licence :


        The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work.


        Je t'ai mis en gras ce que tu dois fournir. Tu dois fournir ce qui permet de générer le binaire, de l'installer et de l'exécuter.

        Tu n'as pas d'obligation de fournir l'identifiant et le mot de passe de ta base de donnée, puisqu'ils ne sont pas nécessaire pour faire tourner l'application (j'espère!).

        J'espère que tu es rassuré, et que la prochaine fois tu chercheras un peu avant de lancer des gros trolls imberbes (pour changer). Il y a quand même eu des brouillons que tout à chacun pouvait critiquer à souhait pendant des mois, et il y a eu d'autres personnes que toi pour soulever la même interrogation que la tienne, sans bien sûr prendre le soin de lire la licence avant.

        Je tiens à précisé que je ne suis pas impliqué dans l'élaboration de cette licence, que je ne la connaissais pas mieux que toi, mais qu'en suivant un des liens du journal j'ai rapidement pu trouver ceci :
        http://www.fsf.org/licensing/licenses/gpl-faq.html#AGPLv3Cor(...)

        J'ai donc lu, comme dit dans cette FAQ, la section 1, dont je t'ai copié un passage ci-dessus.

        Quand on veut savoir, on se renseigne. Maintenant si ton but c'est juste de baver sur une licence parcequ'elle moins décaïdeur aux dents longues complient, bah lache toi oui. :)

        • [^]Re: Mise en oeuvre

          Posté par anw () le 21/11/2007 à 13:09. (lien). Évalué à 3.

          Loin de moi l'idée de créer un troll, je pose cette question car j'envisage justement d'adopter la licence AGPL pour une appli web que je développe.

          J'ai parcouru la licence mais je ne suis pas spécialiste du domaine, alors je me renseigne.
          Ma question est bien plus générale que les mots de passe dans la configuration, je m'intérroge sur les limites de la personnalisation de l'appli, prévue et acceptée par l'auteur.

          [^]Re: Mise en oeuvre

          Posté par Guillaume Rossignol () le 22/11/2007 à 12:21. (lien). Évalué à 0.

          Tu n'as pas d'obligation de fournir l'identifiant et le mot de passe de ta base de donnée, puisqu'ils ne sont pas nécessaire pour faire tourner l'application (j'espère!).

          On en revient au problème des applications Web/PHP ou bien souvent, il y a un gros fichier de configuration qui regroupe tout sans lequel rien ne marche. (et où donc les subtilités de configuration sont bien necessaire au fonctionnement).

          • [^]Re: Mise en oeuvre

            Posté par Mathieu Stumpf (Jabber id, page perso, ) le 22/11/2007 à 12:55. (lien). Évalué à 1.

            Mais n'importe quoi! J'suis désolé mais soit tu sais pas de quoi tu parles, soit tu fais exprès de pas comprendre, dans les deux cas je me demande pourquoi je perds mon temps à te répondre.

            Dans ton fichier de conf tu as un moment un
            $login_db="";
            $pw_db="";

            Et bah si tu me files un fichier de conf ou tu auras bien sûr mis ces variables comme ci-dessus (chaînes vides), y a pas de problème.

            D'autant que dans les applis web dont tu parles, en général l'utilisateur, pour peu que ce soit un tant soit peut bien fait, n'édite jamais ce fichier de conf à la main. L'appli se charge de récupérer les infos nécessaire à l'installation et crée tout seul le fichier de conf. Pour éditer tu as aussi un panneau d'admin à la plupart de ces applis.

            Donc tu reviens avec ton problème imaginaire. Le fait qu'on puisse pas lier l'appli à du proprio, ça c'est exact, mais ce que tu racontes là, c'est de la bouse de vache. Et moi je marche dedans...