Nous sommes le Ven 27 Juin, 2025 00:11
Supprimer les cookies

Page 1 sur 21, 2 Suivant... entre licence libre et logiciel propriétaire

Image Libérer les logiciels et tout autre contenu, comment adopter une Licence Libre ? (GNU GPL, Art Libre et Creative Commons).
Un forum en collaboration directe avec le site Veni Vidi Libri.

Jeu 30 Mars, 2006 22:32

Salut à tous,

... le texte est long mais c'est pour moi très important ! ! ! D'avance, un grand Merci à vous tous. :D

Je suis jeune créateur d'entreprise et souhaite développer un logiciel propriétaire (dans un 1er temps) qui sera adressé à des professionnels et des entreprises. Pour ce faire je compte utiliser des logiciels de développement dit "libres". Mes questions sont les suivantes ; sachant que je souhaite utiliser différents logiciels sous différentes licences :
- logiciel de programmation (Python) : licence GPL
- logiciel de base de donnée (PostgreSQL) : Licence BSD
- logiciel "environnement graphique et biblio" (Gnome & GTK+) : licence GPL & LGP

1. :?: Doit être sous licence GPL, tout nouveau logiciel qui a été créé en modifiant le code source d'un logiciel lui même sous licence GPL. Mais, est ce de même pour un logiciel que l'on a créé à l'aide d'un logiciel sous licence GPL et ayant une toute autre fonction que ce dernier ? En fait, le logiciel créé n'est ni une évolution, ni une modification du logiciel sous licence GPL mais une création de toutes pièces réalisée par son intermédiaire.
Concrètement, si j'utilise le langage Python (GPL) pour crée un logiciel, celui ci doit il être sous cette même licence ?

2. :?: Si j'intègre dans mon logiciel propriétaire, des fonctionnalités ou des outils mineures (n'ayant aucun rapport direct avec la finalité de mon logiciel) de logiciels sous licence GPL, le logiciel que je crée doit il être obligatoirement être sous cette licence ? Ou seulement le code source des fonctionnalités ou outils que j'ai intégrés ? En somme, y a t il contamination de la licence GPL au logiciel qui a été créé, même si, je me répète, la finalité du produit n'est aucunement en rapport avec les fonctions ou outils qui ont été intégrés ; ce n'est donc pas une évolution du logiciel sous licence GPL.
Concrètement, si j'intègre une extension de firefox (GPL) dans mon logiciel, ce dernier doit il être entièrement sous licence GPL.

3. :?: Peut on intégrer une telle fonctionnalité ou outils, dont nous avons modifié le code source, dans un logiciel propriétaire ; le terme « modification » est il légiféré, au sens où celle ci peut aller d'une virgule à la refonte entière du code ?
Je suis tout à fait enclin à livrer le code source des fonctionnalités ou outils que j'ai fait évolué, mais pas (pour l'instant) le code source de mon logiciel.

4. :?: Dernière question : si j'utilise des logiciels sous licence GPL, LGPL, BSD (par exemple) que je fusionne et modifie pour créer un nouveau logiciel, laquelle prédomine ? Ou, chacune de ces licences portent seulement sur le code source qu'elle protégeait auparavant ?

nb : mon but est, une fois le logiciel "lancé" et mes frais de début d'activité remboursés, de le mettre sous licence libre. C'est un logiciel qui s'adressera à un secteur professionnel encore inexploité (ceux sont des professionnels qui ne sont pas encore équipés, informatiquement parlant). Ma crainte est que mon idée, en somme le code source de mon logiciel, soit repris par des entreprises informatiques qui occupent un secteur proche, d'où ma volonté de faire un logiciel propriétaire dans un 1er temps, puis de le mettre en licence "libre". Mais je me trompe peut être ??? :?:

Je tiens à tous vous remercier d'avoir prêté attention à mes longueees =) interrogations.
Bonne soirée à tous, encore merci et @+
Garulfo :wink:
Garulfo

Messages : 9
Géo : Toulouse

Jeu 30 Mars, 2006 23:50

Bonsoir,

Commençons déjà par quelques termes :

Copyleft : notion qui comprends les 4 libertés du logiciel libre (utilisation, modification, diffusion et copie), et qui comprend également le partage à l'identique de la licence originale. La notion de partage à l'identique est parfois appelé viralité ou contaminance, ce n'est qu'une partie de la notion de copyleft.

Les licences copyleft sont la GPL, la LGPL, Apache, CeCILL, MPL, CC-by-SA par exemple.

La licence BSD n'est pas une licence copyleft : tu peux modifier le code et le redistribuer sous une autre licence, ou sous format propriétaire.

La licence BSD originale n'est pas compatible avec la licence GPL, à l'inverse de la licence BSD modifiée.

Garulfo a écrit:1. :?: Doit être sous licence GPL, tout nouveau logiciel qui a été créé en modifiant le code source d'un logiciel lui même sous licence GPL. Mais, est ce de même pour un logiciel que l'on a créé à l'aide d'un logiciel sous licence GPL et ayant une toute autre fonction que ce dernier ? En fait, le logiciel créé n'est ni une évolution, ni une modification du logiciel sous licence GPL mais une création de toutes pièces réalisée par son intermédiaire.
Concrètement, si j'utilise le langage Python (GPL) pour crée un logiciel, celui ci doit il être sous cette même licence ?


Un logiciel sous libre copyleft comme la licence GPL devra toujours être sous la licence originale, quelle que soit la modification apportée.

En ce qui concerne l'utilisation d'un logiciel, ou d'un langage sous licence copyleft, pour la création d'un nouveau logiciel, la notion de copyleft ne s'applique pas. Tu utilises un langage pour créer un programme. Tu ne partages pas son code. Le langage n'est utile qu'à l'écriture du programme, non à son interprétation.

Enfin, le langage Python n'est pas sous licence GPL mais sous licence Python :) Fait attention à cette licence (si tu l'utilises, ou que tu utilises un code sous cette licence) certaines versions de celles-ci sont incompatibles avec la licence GPL.

Garulfo a écrit:2. :?: Si j'intègre dans mon logiciel propriétaire, des fonctionnalités ou des outils mineures (n'ayant aucun rapport direct avec la finalité de mon logiciel) de logiciels sous licence GPL, le logiciel que je crée doit il être obligatoirement être sous cette licence ? Ou seulement le code source des fonctionnalités ou outils que j'ai intégrés ? En somme, y a t il contamination de la licence GPL au logiciel qui a été créé, même si, je me répète, la finalité du produit n'est aucunement en rapport avec les fonctions ou outils qui ont été intégrés ; ce n'est donc pas une évolution du logiciel sous licence GPL.
Concrètement, si j'intègre une extension de firefox (GPL) dans mon logiciel, ce dernier doit il être entièrement sous licence GPL.


Si tu intègres du code à un logiciel sous licence copyleft , le nouveau soft (dérivé, ou fork du précédent) devra être placé sous la même licence originale.

Que le but soit identique ou totalement différent pour ton logiciel en regard du logiciel original n'est d'aucun rapport. Tu utilises une "brique" pour construire un édifice. Si cette brique est placée sous licence copyleft, ton édifice devra être sous la licence de cette brique. Et ce d'où provienne cette brique.

Cela dit, il faut différencier ce que vient faire cette brique dans cet édifice, où se trouve-t-elle, et ce que fait ton programme avec cette brique.

Si ton programme est une sorte d'extensions pour Firefox, mais qu'il ne se base sur rien, tu es libre de mettre la licence que tu souhaites (nombre d'extensions pour FireFox ne sont pas libres, et cela dit en passant FireFox n'est pas sous GPL, mais sous MPL).

Ton code ne doit pas influer sur le code originel, doit être complètement en dehors du code code originel, les 2 portions pouvant être complètement différenciées.
Le cas de l'extensions de Firefox est bien trouvé : une extension ne fonctionne que grâce à FireFox, et FireFox n'a pas besoin d'extension pour tourner. Dans ce cas présent, l'extension peut être propiétaire ou non. Maxthon fait la même chose. Il utilise le moteur IE, mais ne le modifie pas.

On appelle ceci une surcouche.

Si tu intègres une extension à ton programme, et que ton programme sans cette extension ne peut tourner, il te faut faire attention à sa licence. Si cette extension est utilisée de la même manière qu'elle reste donc une extension, pouvant être ou non ajoutée à ton projet, au gré de l'utilisateur, ton programme n'aura pas à tenir compte de cette licence.

Garulfo a écrit:3. :?: Peut on intégrer une telle fonctionnalité ou outils, dont nous avons modifié le code source, dans un logiciel propriétaire ; le terme « modification » est il légiféré, au sens où celle ci peut aller d'une virgule à la refonte entière du code ?
Je suis tout à fait enclin à livrer le code source des fonctionnalités ou outils que j'ai fait évolué, mais pas (pour l'instant) le code source de mon logiciel.


Toute modification qu'elle quelle soit, aussi minime soit-elle est une modification. Une virgule peut être considérée comme une modification. Si tu codes en python, tu comprendras bien ça : modifies un seul caractère dans ton code Pyhton, ajoute la moindre virgule dans ce code : le résultat en sera modifié, non ? Donc, la moindre modification dans le code, virgule ou espace est considéré comme une modification.

La modification du code dans un programme propriétaire est interdite. Tu peux apporter une modification à l'ensemble du programme par exemple si tu ne modifie pas le programme en lui-même. Toujours pareil, considérons le programme original comme une brique. Tu peux ajouter une autre brique en parallèle, mais tu ne peux pas modifier cette brique. Tu peux utiliser du ciment pour lier les deux briques, et placer cette nouvelle brique sous licence LGPL par exemple, ou en tant que licence propriétaire. Mais tu ne dois pas diffuser l'ensemble des deux briques : tu ne peux diffuser que ta brique. L'autre brique, si elle est sous licence propréiaitaire, ne peut être diffusée sans son accord explicite.


Garulfo a écrit:4. :?: Dernière question : si j'utilise des logiciels sous licence GPL, LGPL, BSD (par exemple) que je fusionne et modifie pour créer un nouveau logiciel, laquelle prédomine ? Ou, chacune de ces licences portent seulement sur le code source qu'elle protégeait auparavant ?


Là se joue la question de la compatibilité des licences. Dans les trois licences que tu cites, les 3 sont compatibles (enfin, si la version de la licence BSD est la licence modifiée), tu peux diffuser le nouveau logiciel créé sous licence LGPL, (mais tu devras livrer à l'intérieur de tes sources les 3 licences). Tu peux également placer le tout sous la triple licence.

Plus d'informations sur la compatibilité des licences ici.

garulfo a écrit:nb : mon but est, une fois le logiciel "lancé" et mes frais de début d'activité remboursés, de le mettre sous licence libre. C'est un logiciel qui s'adressera à un secteur professionnel encore inexploité (ceux sont des professionnels qui ne sont pas encore équipés, informatiquement parlant). Ma crainte est que mon idée, en somme le code source de mon logiciel, soit repris par des entreprises informatiques qui occupent un secteur proche, d'où ma volonté de faire un logiciel propriétaire dans un 1er temps, puis de le mettre en licence "libre". Mais je me trompe peut être ??? :?:


Pour t'éclaire un peu sur ton projet, tu peux réfléchir à comment présenter le logiciel à tes éventuels clients : si c'est du clé en mains que tu veux faire, sans aucun accompagnement (je veux dire, le logiciel est livré tel quel), la licence propriétaire est effectivement à envisager...

Mais tu peux justement envisager une autre approche de la question : livrer le logiciel en licence libre, et développe le produit spécifiquement aux besoins du clients (nouvelles extensions, fonctionnalités), tu accompagnes le client jusqu'au bout afin de personnaliser l'offre au maximum.
Si ces fonctionnalités semblent améliorer le produit final, et être applicables à l'ensemble de tes clients, songer ensuite peut-être à les intégrer toujours en libre.

Nombreuses sont aujourd'hui les sociétés de services qui proposent uniquement du logiciel libre et qui ne fournissent que la prestation de suivi, installation, développement propre. Il faut voir si ton logiciel s'y prète, et si tu es prêt à l'envisager sous cet angle.

J'espère avoir été assez clair, si tu as d'autres questions, j'essaierais d'y répondre plus clairement.

Tolosano
Tolosano

Messages : 1940
Géo : Toulouse

Jeu 06 Avr, 2006 10:58

Bien le bonjour sur Toulouse :D ,

Tout d'abord merci beaucoup pour tes réponses claires et riches d'enseignement. :wink:
Ma rédaction étant longue, prend le temps qu'il te faudra pour y répondre, en plusieurs fois s'il le faut.

J'ai pris un peu de recul par rapport aux informations q tu m'as fournies. Si je résume les principaux points q tu as avancés :
1. si on utilise un logiciel sous licence copyleft (ex : Python, PostgreSQL, GTK+) afin de créer de toute pièce un nouveau logiciel, que l'on génère respectivement du code, une base de donnée ou une interface graphique,... nous avons toute liberté du choix de la licence (Propriétaire, Libre,...).

2. si on intègre du code ("une brique") d'un logiciel sous licence copyleft, la contamination ne vaut q lorsque le code utilisé est indispensable au fonctionnement du logiciel crée (même si on utilise 3 lignes de code sur un total de plusieurs milliers). Je n'ai pas tout à fait saisie ceci :

Ton code ne doit pas influer sur le code originel

La « brique » ne doit pas modifier, de quelques manière q ce soit, les données du code originel. N'est ce pas?

:idea: Avant de te poser de nouvelles questions je tiens à t'exposer succinctement mon projet (en terme de licence) :
- Créer un logiciel propriétaire "clef en main" adressé à des professionnels travaillant seuls ou en partenariat (clients les plus importants ; peu ou pas de développement spécifique)
- Proposer à des entreprises du secteur publique ou privé d'adapter ce logiciel à leurs besoins spécifiques (minorité des clients ; développement spécifique nécessaire, tout du moins paramétrages complexes)
- Développer un réseau d'utilisateurs qui participeraient à l'évolution de ce logiciel par la création de nouvelles fonctionnalités sous licence libre "copyleft".
- Open Office & ThunderBird seront des compléments (non nécessaires) à ce logiciel

:?: Cette solution, de mélanger licence propriétaire et libre, m'est venue après la lecture de ton post. Je ne suis pas encore arrêté. Y a t il un moyen d'imposer q ces extensions soient sous licence libre "copyleft" ? Ce pour 2 choses :
Que les extensions crées ne puissent être sous licence propriétaire ce qui va à l'encontre de la ''philosophie'' du projet & que la diffusion de ses extensions ne puissent être payante (c'est un corollaire). Mais cela est peut être aussi un avantage ?

:?: Lorsqu'un client demande un développement spécifique, à qui appartient le code développé ? A celui qui l'a pensée ou à celui qui l'a réalisée ? Est ce différent suivant la licence du logiciel originel ?

Nombreuses sont aujourd'hui les sociétés de services qui proposent uniquement du logiciel libre et qui ne fournissent que la prestation de suivi, installation, développement propre. Il faut voir si ton logiciel s'y prête, et si tu es prêt à l'envisager sous cet angle

Tes arguments pour la licence libre sont intéressants, mais je ne vois pas (encore) les avantages à ne pas être propriétaire de son logiciel lorsque l'on en est l'auteur. Mon équipe informatique est réduite, et ma crainte est q d'autres q "nous" puissent commercialiser ce logiciel. Des entreprises informatiques importantes existent dans un secteur d'activité proche de celui des professionnels auxquels ce logiciel sera adressé. Nous seront donc beaucoup moins réactifs dans le développement et dans les services q nous proposerons. D'autant plus si le logiciel est libre et sachant q les "clients cibles" n'ont pas, à priori, des goûts prononcés pour le développement informatique. Bien q mon souhait soit toujours, à moyen terme, q ce logiciel soit dans le domaine du libre, à court terme j'hésite encore. :?: Mais peut être je passe à côté de certaines choses ?

:?: Quelques précisions sur Python :
- lorsque tu dis qu'il y a parfois incompatibilité entre la licence Python et celle GPL, y a t il des cas précis ? (je n'ai pas trouvé ces informations sur le site officiel).
- Est ce q lorsque l'on transforme "des lignes de code Python" en un ".exe", la licence s'applique de la même manière ?

:?: Dernière chose :
Si je souhaite utiliser non une extension déjà développée mais son idée originale (je reprendrai l'exemple d'une extension FireFox) ; 2 Hypothèses :
- Cette extension est sous licence propriétaire : je suis dans l'obligation de demander à l'auteur son autorisation pour utiliser ou l'intégrer & s'il y a accord, il y a généralement une contre partie, le plus souvent financière.
- Cette extension est sous licence libre copyleft : Quelles doivent être mes démarches auprès de l'auteur ? & mes obligations ?

En l'occurrence, il me faudra récrire cette extension totalement en Python avec certaines modifications ; une des conséquences est qu'elle ne sera plus utilisable sous FireFox, ce qui est problématique. Quand bien même, je serais heureux de pouvoir livrer le fruit de mon travail à la communauté du libre. En même temps, je m'interdis tout plagiat et je souhaiterai pouvoir utiliser un dérivé d'une extension existante tout en apportant ma contribution au monde libre ; Y a t il un moyen de concilier légalement ces 2 aspirations ?

J'en finis ici :!: Oufff
Encore merci pour ta lecture patiente. :D
Au plaisir de te lire, à bientôt et @ +
Garulfo
Garulfo

Messages : 9
Géo : Toulouse

Jeu 06 Avr, 2006 13:27

C'est un plaisir, Toulousain :D

Maintenant qu'on a peu dégrossi la chose, et ce pour être clair et précis, utilisons les termes définis par la licence CeCILL (valables pour les licences Copyleft)

Module: désigne un ensemble de fichiers sources y compris leur documentation qui permet de réaliser des fonctionnalités ou services supplémentaires à ceux fournis par le Logiciel.

Module Externe: désigne tout Module, non dérivé du Logiciel, tel que ce Module et le Logiciel s'exécutent dans des espaces d'adressages différents, l'un appelant l'autre au moment de leur exécution.

Module Interne: désigne tout Module lié au Logiciel de telle sorte qu'ils s'exécutent dans le même espace d'adressage.


Garulfo a écrit:1. si on utilise un logiciel sous licence copyleft (ex : Python, PostgreSQL, GTK+) afin de créer de toute pièce un nouveau logiciel, que l'on génère respectivement du code, une base de donnée ou une interface graphique,... nous avons toute liberté du choix de la licence (Propriétaire, Libre,...).

Exact, tu les utilises pour programmer. Il s'agit d'une utilisation logique d'un langage. On va dire qu'en développant ton propre logiciel grâce à ces langages, tu crées un module externe à ceux-ci.

Garulfo a écrit:2. si on intègre du code ("une brique") d'un logiciel sous licence copyleft, la contamination ne vaut q lorsque le code utilisé est indispensable au fonctionnement du logiciel crée (même si on utilise 3 lignes de code sur un total de plusieurs milliers).

Le copyleft ne s'applique qu'en cas de "Module Interne". Il faut être capable de démontrer que le module développé n'est pas un module interne, qu'il n'y est pas de code commun entre ceux-ci, que tu ne fais appel au module externe que par des fonctions "basiques".

Garulfo a écrit:Je n'ai pas tout à fait saisie ceci :

Ton code ne doit pas influer sur le code originel

La « brique » ne doit pas modifier, de quelques manière q ce soit, les données du code originel. N'est ce pas?

Pour être libre du choix de ta licence, il faut que la brique ne soit pas modifiée, et qu'elle ne soit pas une partie intégrante de ton logiciel. La communication entre ton programme et cette brique ne doit pas être autre que "basique".

Garulfo a écrit::idea: Avant de te poser de nouvelles questions je tiens à t'exposer succinctement mon projet (en terme de licence) :
- Créer un logiciel propriétaire "clef en main" adressé à des professionnels travaillant seuls ou en partenariat (clients les plus importants ; peu ou pas de développement spécifique)
- Proposer à des entreprises du secteur publique ou privé d'adapter ce logiciel à leurs besoins spécifiques (minorité des clients ; développement spécifique nécessaire, tout du moins paramétrages complexes)
- Développer un réseau d'utilisateurs qui participeraient à l'évolution de ce logiciel par la création de nouvelles fonctionnalités sous licence libre "copyleft".
- Open Office & ThunderBird seront des compléments (non nécessaires) à ce logiciel

:?: Cette solution, de mélanger licence propriétaire et libre, m'est venue après la lecture de ton post. Je ne suis pas encore arrêté. Y a t il un moyen d'imposer q ces extensions soient sous licence libre "copyleft" ? Ce pour 2 choses :
Que les extensions crées ne puissent être sous licence propriétaire ce qui va à l'encontre de la ''philosophie'' du projet & que la diffusion de ses extensions ne puissent être payante (c'est un corollaire). Mais cela est peut être aussi un avantage ?

Le choix de la licence Copyleft garantit que tout travail dérivé sur ton œuvre, ou la redistribution de celui-ci devra être sous la licence originale.
Je ne voies pas personnellement l'intérêt d'aller payer un logiciel si celui-ci est disponible gratuitement autre part sur Internet ;)
En ce qui concerne les extensions qui pourraient être développées, rien n'oblige à fournir celles-ci sous telle ou telle autre licence, gratuite ou non. Et ce, que ce soit une licence libre et même propriétaire (dans la très grande majorité des cas).

Garulfo a écrit: :?: Lorsqu'un client demande un développement spécifique, à qui appartient le code développé ? A celui qui l'a pensée ou à celui qui l'a réalisée ? Est ce différent suivant la licence du logiciel originel ?

Tout dépend du contrat que tu passes avec le client, ainsi que de la licence choisie ;)
Là, il faut savoir être carré pour éviter les malentendus. Il faut spécifier par écrit (donc dans le contrat) que tout travail développé pour le client par tes soins - ou ceux de tes collaborateurs - sont ta propriété. Si la licence est de type copyleft, seule se joue la paternité du code. Si la licence est de type propriétaire, le client n'aura, vraisemblablement, pas le droit de modifier. Le cas de développement de modules externes est donc le principal point à négocier.

Garulfo a écrit:
Nombreuses sont aujourd'hui les sociétés de services qui proposent uniquement du logiciel libre et qui ne fournissent que la prestation de suivi, installation, développement propre. Il faut voir si ton logiciel s'y prête, et si tu es prêt à l'envisager sous cet angle

Tes arguments pour la licence libre sont intéressants, mais je ne vois pas (encore) les avantages à ne pas être propriétaire de son logiciel lorsque l'on en est l'auteur. Mon équipe informatique est réduite, et ma crainte est q d'autres q "nous" puissent commercialiser ce logiciel. Des entreprises informatiques importantes existent dans un secteur d'activité proche de celui des professionnels auxquels ce logiciel sera adressé. Nous seront donc beaucoup moins réactifs dans le développement et dans les services q nous proposerons. D'autant plus si le logiciel est libre et sachant q les "clients cibles" n'ont pas, à priori, des goûts prononcés pour le développement informatique. Bien q mon souhait soit toujours, à moyen terme, q ce logiciel soit dans le domaine du libre, à court terme j'hésite encore. :?: Mais peut être je passe à côté de certaines choses ?

Quel que soit le type de licence choisie, il est bon de savoir que tu en restes l'auteur et le propriétaire.
Le fait de placer un logiciel sous licence Copyleft n'enlève rien à tes droits d'auteurs. Tu es reconnu comme son propriétaire, détenteur des droits patrimoniaux.
La commercialisation de ton logiciel par tes concurrents est tout à fait possible si tu choisis de le mettre sous libre. Ton programme est protégé par les droits d'auteurs.

Le problème qui peut se poser est effectivement celui de la mise en place d'un tel système, d'un suivi client efficace, si tes moyens humains sont limités, comparés à tes concurrents.

Une solution que je vois est de proposer un "partenariat" avec tes concurrents afin de limiter leur dominance en terme humains. Ainsi leur proposer une formation à ton outil. Tu pourrais ainsi tirer avantage de leurs expériences, et glaner un peu de fonds pour combler le manque à gagner de la diffusion de ton soft par leurs propres moyens.
Cela est envisageable dans la mesure où tout nouveau logiciel proposé doit avoir fait ses preuves, et demande un temps important d'analyse, avant de pouvoir être prooposé aux clients et de savoir comment le modifier.

Au Point du vue client, tu as une arme par rapport aux concurrents : tu es l'auteur du logiciel, tu es donc le meilleur contact possible pour améliorer efficacement le logiciel. Une entreprise cherche en priorité l'efficité et la sécurité, tu es à même de les apporter par rapport à tes concurrents.

Autre possibilité, choisir une licence te permettant de conjuguer au mieux utilisation porfessionnelle et personnelle : par exemple, la licence MySQL est une licence libre, pour utilisation d'un programme sous GPL. Pour l'utilisation professionnelle, ou l'utilisation de MySQL dans un programme fermé, l'acquisition d'une licence est nécessaire.

Garulfo a écrit: :?: Quelques précisions sur Python :
- lorsque tu dis qu'il y a parfois incompatibilité entre la licence Python et celle GPL, y a t il des cas précis ? (je n'ai pas trouvé ces informations sur le site officiel).

Les licences de Python, jusqu'à la version 1.6a2 et 2.0.1, 2.1.1 et suivantes sont compatibles avec la licence GPL.
Ceci est noté sur le site GNU.
Cela n'a d'influence que si utilises la licence Python pour ton programme, pas pour coder.
Garulfo a écrit:- Est ce q lorsque l'on transforme "des lignes de code Python" en un ".exe", la licence s'applique de la même manière ?

Si tu ne fais qu'utiliser le langage de programmation, aucune influence. Cela n'influe que si tu choisis de distribuer une brique ou programme sous licence Python.

Garulfo a écrit:Si je souhaite utiliser non une extension déjà développée mais son idée originale (je reprendrai l'exemple d'une extension FireFox) ; 2 Hypothèses :
- Cette extension est sous licence propriétaire : je suis dans l'obligation de demander à l'auteur son autorisation pour utiliser ou l'intégrer & s'il y a accord, il y a généralement une contre partie, le plus souvent financière.

Pour avoir de meilleures informations, il faut se plonger dans la licence du programme concerné.
Il faut s'assurer de : utilisation, intégration et diffusion. La contre-partie est décidée par l'auteur.
Garulfo a écrit:- Cette extension est sous licence libre copyleft : Quelles doivent être mes démarches auprès de l'auteur ? & mes obligations ?

Libre : Les contraintes sont purement "éthiques". Imagine que ton soft soit placé sous licence libre. Demain, tu découvres qu'un autre logiciel utilises quelques parties de ton soft (et qui respecte la licence). Quelle sera ta réaction ? Applique simplement les mêmes actions que tu souhaiterais qui te soient rendues.
Tu utilises une partie de programme placée sous licence libre ? Informe l'auteur. Cela ne te prend pas plus de temps, et cela fait plaisir à l'auteur.

Garulfo a écrit:En l'occurrence, il me faudra récrire cette extension totalement en Python avec certaines modifications ; une des conséquences est qu'elle ne sera plus utilisable sous FireFox, ce qui est problématique. Quand bien même, je serais heureux de pouvoir livrer le fruit de mon travail à la communauté du libre. En même temps, je m'interdis tout plagiat et je souhaiterai pouvoir utiliser un dérivé d'une extension existante tout en apportant ma contribution au monde libre ; Y a t il un moyen de concilier légalement ces 2 aspirations ?

Je ne comprend pas bien ta question, en tout cas tes 2 aspirations...
"Je m'interdis tout plagiat" : tu fais référence à ce que tu fais, toi, en rapport avec l'existant, ou d'une copie possible par une autre personne ?

Tolosano
Tolosano

Messages : 1940
Géo : Toulouse

Jeu 06 Avr, 2006 19:27

Pfff, j'ai voulu répondre tout à l'heure, mais le forum était cassé : réponse perdue.

Donc j'essaie de résumer :

Tolosano a écrit:Maintenant qu'on a peu dégrossi la chose, et ce pour être clair et précis, utilisons les termes définis par la licence CeCILL (valables pour les licences Copyleft)


Hmmm, les termes de la CeCILL ne sont valables que pour la CeCILL, de même que les termes de la GPL ne sont valables que pour la GPL.

La CeCILL fait une distinction entre modules "internes" et "externes". Il faut bien remarquer que cette distinction repose sur la notion précise d'"espace adressage".
En clair cela veut dire que :
- toute bibliothèque au sens traditionnel, qu'elle soit liée statiquement ou dynamiquement, est un module interne, et donc soumise aux termes généraux de la CeCILL
- les "modules externes" sont des composants ou programmes indépendants avec lesquels le programme principal communique éventuellement par des moyens extérieurs, par exemple IPC (Inter-Process Communication : sockets Unix, pipes...), RPC (Remote Procedure Call : sockets TCP, XMLRPC...) ou bien de bêtes fichiers temporaires... En clair, les modules externes sont soit des programmes indépendants lancés au besoin, soit des démons, soit des composants COM/Corba/etc. lancés dans un processus indépendant (out-of-process).

Je répète aussi que cette distinction est celle de la CeCILL et pas d'une autre licence. L'interprétation communément acceptée de la façon dont la GPL s'applique rejoint plus ou moins, cette distinction, mais le texte de la GPL n'en dit rien. Par conséquent, si on appelle un "module externe" sous GPL, il vaut mieux s'enquérir auprès des auteurs du module de leur interprétation de l'application de la GPL : en particulier s'il s'agit d'un cas flou du type composant COM.

Tes arguments pour la licence libre sont intéressants, mais je ne vois pas (encore) les avantages à ne pas être propriétaire de son logiciel lorsque l'on en est l'auteur. Mon équipe informatique est réduite, et ma crainte est q d'autres q "nous" puissent commercialiser ce logiciel.


Tu continues à être "propriétaire" de ton code même si tu le places sous licence libre. Cependant ta crainte est très concrète.

Nous seront donc beaucoup moins réactifs dans le développement et dans les services q nous proposerons.


Au contraire, tu seras d'autant plus réactif si tu arrives à fédérer une communauté d'utilisateurs, même petite, qui jouera le jeu de l'échange et communiquera ouvertement sur ses problèmes, ses attentes... En développant de façon ouverte et transparente, tu peux avoir des remontées plus rapides que si tu adoptes un mode de développement propriétaire où la prochaine version est affinée en interne jusqu'à la sortie finale de la version stable.

Evidemment, ce n'est pas plus une recette miracle que n'importe quel autre modèle de développement. Il faut savoir évaluer l'adéquation du public et du produit avec un tel modèle de développement. Il faut aussi, coûte que coûte, garder une ligne claire et ne pas changer de mode de développement tous les deux mois, que l'on fasse du libre ou du propriétaire. Si tu choisis un mode de développement libre, il faut que tu t'engages sincèrement dans cette voie : faire "juste un essai pour voir" mènerait sûrement à l'échec si tu n'es pas motivé par l'expérience. Enfin, si tu n'as jamais pris part à une communauté de logiciels libres, il est utile d'observer comment celles-ci fonctionnent, pour ne pas être pris au dépourvu quand il s'agira concrètement de mettre en place les infrastructures de ta communauté.

(ah oui : n'oublie pas qu'il faut animer une communauté - de la même façon qu'on gère une relation client traditionnelle -; ne néglige pas ce poste, qui pourra utiliser 10 à 20% du temps de travail d'un ou plusieurs développeurs)

Note que si tu développes un logiciel libre sur un marché jusque là dominé par le propriétaire, et qu'il y a des administrations sur ce marché, l'argument du libre (formats ouverts, indépendance vis-à-vis du prestataire, pérennité des données...) peut porter pour faire financer ton projet ou gagner des marchés auprès de ces administrations. Là aussi c'est à toi d'évaluer la possibilité de telles opportunités, en fonction de ta connaissance du terrain (quitte à le tâter aussi un peu).

A lire si tu as le temps : Libérer les logiciels. Un petit exposé du B-A-BA social et culturel du logiciel libre pour les entreprises qui veulent en faire.

- Est ce q lorsque l'on transforme "des lignes de code Python" en un ".exe", la licence s'applique de la même manière ?


Aucun problème. La licence de Python n'est pas copyleft, donc inclure l'interpréteur et les bibliothèques standard Python dans un exécutable "tout-en-un" est possible quelle que soit la licence de ton code.
AntoineP

Messages : 1038

Jeu 06 Avr, 2006 20:18

AntoineP a écrit:Hmmm, les termes de la CeCILL ne sont valables que pour la CeCILL, de même que les termes de la GPL ne sont valables que pour la GPL.

La CeCILL fait une distinction entre modules "internes" et "externes". Il faut bien remarquer que cette distinction repose sur la notion précise d'"espace adressage".

Je suis bien d'accord, les termes varient entre les différentes licences, mais l'esprit reste schématiquement le même, et je trouve que pour simplifier le tout, la licence CeCILL est la plus claire sur ce point.

Voici ce que nous dit la GPL :
Quelle est la différence entre «mere aggregation» et «combining two modules into one program» ?
La «mere aggregation» de deux programmes consiste à les mettre côte-à-côte sur le même CD-ROM ou le même disque dur. Nous utilisons ce terme dans les cas où il s'agit de programmes distincts, pas des parties d'un même programme. Dans ce cas, si l'un des programmes est couvert par la GPL, cela n'a pas d'effet sur l'autre programme.

Combiner deux modules («combining two modules») signifie les connecter de telle sorte qu'ils constituent un seul programme plus important. Si l'une au moins des parties est couverte par la GPL, l'ensemble doit alors aussi être distribué sous GPL--si vous ne pouvez ou ne voulez pas le faire, vous n'êtes pas autorisé à les combiner.

Qu'est-ce qui constitue le fait de combiner deux parties en un seul programme? Il s'agit d'un problème juridique, qui sera tranché en dernier recours par un juge. Nous pensons qu'un critère adapté tient compte à la fois des modes de communication (exec, pipes, rpc, appel de fonctions au sein d'un espace de mémoire commun, etc.) et de la sémantique de cette communication (quels genres d'informations sont échangés).

Si les modules sont inclus dans un même fichier exécutable, ils sont indéniablement combinés dans un seul programme. Si les modules sont conçus pour être exécutés par édition de liens dans un même espace mémoire partagé, cela signifie presque à coup sûr une combinaison en un seul programme.

En revanche, les pipes, sockets et autres arguments de ligne de commande sont des mécanismes de communication utilisés normalement entre deux programmes séparés. Aussi, tant que ceux-ci servent à communiquer, les modules sont normalement des programmes séparés. Mais si la sémantique des échanges est assez 'intime', avec échange de structures de données internes complexes, cela pourrait également constituer une base suffisante pour considérer les deux éléments combinés comme un seul et même programme.

Source

Donc, oui, effectivement, il y a quelques variations entre la GPL et la CeCILL, mais le fond reste identique (à mon avis). Et la distinction faite par la CeCILL, qu'elle nomme module interne et externe me semble plus parlant, plus compréhensible.

Alors, à "valables pour les licences Copyleft", j'aurais peut-être dû ajouté à quelques variations près...

Tolosano
Tolosano

Messages : 1940
Géo : Toulouse

Jeu 06 Avr, 2006 21:49

Tolosano a écrit:Voici ce que nous dit la GPL :


Ce n'est pas la GPL, c'est la FAQ de la GPL. Elle est certes très utile quant à l'interprétation conseillée (et dominante) des termes de la GPL, mais elle n'a pas valeur légale. Un auteur de logiciel sous GPL peut décider de favoriser une autre interprétation du texte officiel de la GPL (et même de mentionner cette interprétation dans la documentation / la mention de copyright du logiciel, ce qui permet sans ambiguïté à l'auteur de faire état de sa volonté).
AntoineP

Messages : 1038

Ven 07 Avr, 2006 12:39

AntoineP a écrit:
Tolosano a écrit:Voici ce que nous dit la GPL :


Ce n'est pas la GPL, c'est la FAQ de la GPL. Elle est certes très utile quant à l'interprétation conseillée (et dominante) des termes de la GPL, mais elle n'a pas valeur légale. Un auteur de logiciel sous GPL peut décider de favoriser une autre interprétation du texte officiel de la GPL (et même de mentionner cette interprétation dans la documentation / la mention de copyright du logiciel, ce qui permet sans ambiguïté à l'auteur de faire état de sa volonté).


Décidément, tu aimes jouer sur les mots ;)

Mais tu as raison, la précision est mère de toutes les vertus... C'est en ce sens que je préfère la licence CeCILL : elle définit clairement ce que sont modules internes et externes. En ce qui concerne la GPL, cette distinction est plus complexe, et même la FAQ ne permet pas d'offrir une très bonne compréhension de celle-ci.

Logiquement, la FAQ est là pour aider à mieux comprendre, à disséquer, et offrir une réponse claire. Évidemment, la FAQ n'est pas officielle, qui plus est j'ai utilisé la traduction française.

Tolosano
Tolosano

Messages : 1940
Géo : Toulouse

Mar 18 Avr, 2006 22:05

Merci pour vos réponses rapides et efficaces. Merci à vous deux. :D
Je suis pour ma part un peu plus lent :!: !

:!: 1.En réponse à ton incompréhension (Tolosano)... « mes 2 aspirations », j'explicite :
La reconnaissance de la paternité d'une oeuvre et du respect de celle-ci dans l'utilisation que l'on peut en faire est à mes yeux dès plus importante, que cette reconnaissance soit légiférée (copyright/copyleft) ou non (non protégée par le droit). Mon dilemme est que je souhaiterai m'inspirer et/ou améliorer certaines fonctionnalités que je trouve ingénieuses et pertinentes, tout en respectant la paternité de la création. Sachant que mon logiciel sera très probablement sous licence propriétaire et à des fins commerciales, je souhaiterai donner à l'auteur une contrepartie acceptable pour l'utilisation que je ferai de sa création. Lorsque tu me dis qu'un simple mot adressé à l'auteur peut suffire, je suis troublé. Mais tu as déjà répondu en partie à mon dilemme dans ton précédent post.

:!: 2.En aparté
Vos réponses quant aux avantages et inconvénients de chaque licence sont éclairantes. Je vous rejoins lorsque vous dite que la « licence libre », permet (potentiellement) de rassembler un nombre important de personnes afin de faire évoluer un programme selon ses désirs et ses besoins propres, avec une relative dynamique, et surtout, avec ce que chacun apporte d'imagination et d'ingéniosité (et c'est bien là pourquoi je suis adepte du « libre »). Certes « OUI ». Mais encore faut il que plusieurs conditions soient réunies (il me semble) :
Que la communauté d’utilisateurs soit assez importante pour :
espérer qu’un « certain nombre » souhaite s’investir dans un projet sous licence libre
que ce « certain nombre » possède de potentiels informaticiens ou passionnés qui puissent concrétisé ce projet
Personnellement, la clientèle que je vise est loin de réunir ces 2 conditions, a priori (on peut être surpris). Mon objectif, la 1e année, serait de vendre quelques dizaines de licences, tout au plus 50, ce qui signifie un nombre d'utilisateurs restreints. De plus, la clientèle visée n’a pas d'inclination particulière pour l’informatique. Ceux sont ces 2 points qui me font hésiter le plus dans le choix d'une licence libre.


:?: 3.« Cas d’école » ?
Une interrogation m'est venue en parcourant ce site : http://oooconv.free.fr/fontooo/fontooo_fr.html. Le fait qu’il ait été impossible d’inclure certaines polices libres dans le fichier d’installation de Open Office, ces même polices sont pourtant téléchargeables ultérieurement par les utilisateurs OOo. Leur licence respective sont libre, mais certainement incompatibles ? Tolosano, est ce un cas concret de ce tu m’as avancé sur l'incompatibilité de certaines licences libres ?
Dans le cas où on peut légalement télécharger un programme, une extension de celui ci, des données, une création, etc (tous libre et gratuit) & où l’on respecte la compatibilité de chaque licence : le lieux et l’appartenance du serveur ont ils une importance ? Concrètement, pour reprendre le cas d’OOo, les polices libres auraient elles pu être localisées sur le serveur d’OOo (avec ou sans l'accord de leur auteur), ou seulement sur le serveur q leur auteur à choisi ?

Au plaisir de vous lire :wink:
Bonne soirée à vous
Garulfo
Garulfo

Messages : 9
Géo : Toulouse

Mar 18 Avr, 2006 23:41

Garulfo a écrit:Sachant que mon logiciel sera très probablement sous licence propriétaire


Si c'est le cas l'affaire est classée, vu que Framasoft est un site dédié aux logiciels libres.

Personnellement, la clientèle que je vise est loin de réunir ces 2 conditions, a priori (on peut être surpris). Mon objectif, la 1e année, serait de vendre quelques dizaines de licences, tout au plus 50, ce qui signifie un nombre d'utilisateurs restreints.


Soyons clair : si tu fais du logiciel libre, il va être difficile de vendre des licences à tes utilisateurs. A moins que ces licences offrent des possibilités que la licence libre choisie ne permette pas (lesquelles ?).

Une interrogation m'est venue en parcourant ce site : http://oooconv.free.fr/fontooo/fontooo_fr.html


Hum... chez moi la page ne peut être chargée, ça boucle sur une page d'erreur.
Difficile de répondre à tes interrogations dans ces conditions...
AntoineP

Messages : 1038

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit