Aller au menu du forum Aller au contenu du forum Aller à la recherche dans le forum
Logo Khaganat
Menu principal

Gestion des licences des assets

Zatalyz

Non, je ne relance pas la question du choix des licences, on a trouvé, on y reste.

Par contre, nous allons avoir un souci pour gérer la paternité. Nos assets (modèles 3d, textures, éléments graphiques de l'interface, illustrations etc) sont pour le moment dans 3 cas de figure :
-  hérités de Ryzom, là, c'est facile, CC-BY-SA ... wait, à qui on attribue ? Nevrax ? Ryzom ? Ryzom Core ? Winchgate ? Autre ?
- Quelques trucs que j'ai modifié (très peu), attribué à Khaganat
- Une production plus importante mais encore pas trop grosse venant de YannK et déjà, là on complexifie, car il s'appuie sur des sources variées (mais encore limitées) , comme listé sur la page des crédits .

Problème : lister les crédits comme ça en vrac n'est pas correct. Dès maintenant, on ne sais pas, par exemple, que ce qui est emprunté à David Revoy a servi à faire l'écran de sélection des personnages, et je suis incapable de retrouver quelle image chez David Revoy a été utilisée. Ça ne va pas aller en s'améliorant.


La conversation d'hier soir, qui reprends ça :
Spoiler for Hiden:

[22:47:12] Zatalyz: J'ai répondu à un graphiste qui cherchait un projet libre (on verra bien s'il vient), et du coup, je retombe sur ces licences
[22:47:30] Lyne: Et ? Il me semble que ça n'a pas trop changé, ça...
[22:47:52] Zatalyz: je pense qu'il faudrait trouver un moyen de faire une bibliothèque, un index... je ne sais pas comment, mais qui permet de suivre la paternité
[22:48:12] Zatalyz: genre "arma.3ds = ryzom core"
[22:48:27] Lyne: Dans les assets ? Ou partout ?
[22:48:34] Zatalyz: pour les assets surtout
[22:48:55] Zatalyz: les textes... heu... ptet plus facile à retrouver, mais c'est peut-etre aussi pertinent
[22:49:16] Zatalyz: le truc c'est que si quelqu'un veut reprendre un de nos assets il sache à qui l'attribuer proprement
[22:49:38] Zatalyz: et pour nous, cela permettra de bien vérifier les licences des différents morceaux quand on nous fait une proposition
[22:49:43] deed: bah il y a sur git c'est separer
[22:49:44] Glorf: c'est toujours la faute de deed, donc dans le doute on crédite tout à lyne ?
[22:49:59] Lyne: Sauf les trucs qui plantent. Dans ce cas, on crédite à Siela :-°
[22:50:24] deed: et les dons à "Deed fondation" toujours :)
[22:50:37] Zatalyz: git et ce qui n'est pas code... hem
[22:50:47] Zatalyz: et puis, c'est pas parce qu'on push qu'on en est l'auteur
[22:50:57] deed: je parle des assets
[22:51:07] Zatalyz: j'ai pushé des trucs de linkmauve ou de daeldir, par exemple... j'aurais pas pu coder ça ^^
[22:51:13] deed: il y a les assets ryzomcore et khanat de separer
[22:51:31] SIELA1915: ra les ra, j'ai entendu mon nom? :P
[22:51:33] Lyne: Les artworks, c'est dans Git ? Ou dans la Mediateki ?
[22:51:48] deed: du moins ceux brut
[22:51:56] Zatalyz: est-ce que ce qui est emprunté à David Revoy ou viscious speed est indiqué dans les dépôts, deed ?
[22:52:30] Zatalyz: je suis relativement sûre que non... yannk pourra nous dire, c'est lui qui a utilisé des sources externes :)
[22:52:34] deed: euh non car c'est dans la partie du client qui est tous melangé
[22:52:58] Zatalyz: voilà, donc... c'est pas bon
[22:53:15] Zatalyz: enfin, c'est pas trop grave, vu nos licences, mais c'est quand même pas correct :)
[22:53:25] Lyne: Oui :s
[22:53:25] deed: il y a que khanat data client qui est melangé mais il va disparaitre avec la pipeline
[22:53:40] Zatalyz: Il faut qu'on réfléchisse à comment gérer ça
[22:53:57] Zatalyz: pour le moment on a peu de sources différentes, ça sera pas trop long à remettre d'applomb
[22:54:09] yannk: ce n'est pas indiqué dans les dépôts, Zatalyz je confirme. Vicious Speed est en CC0 sur certainsd assets, ça ne pose aucun souci
[22:54:18] Zatalyz: mais faut pas attendre les contributeurs pour y penser, sinon ça va être le bazar
[22:54:29] yannk: Et pour David, il est cité sur le site, mais je ne sais pas comment indexer ça dans une base d'assets
[22:56:16] Zatalyz: je pense que l'idée, c'est peut-être de lister tous les assets, puis de faire une fiche pour chacun en précisant quel élément viens d'où
[22:56:29] Zatalyz: en fait, ça va demander une base de donnée bien pensée ><
[22:57:09] Zatalyz: je ne suis pas très douée pour structurer ce genre d'information, si vous voyez comment décrire ça, ensuite j'imagine que faire la BDD ne sera pas trop complexe
[22:58:02] yannk: je n'ai vu aucun projet où ça ne soit pas la misère avec des fichiers de licence un peu partout :/
[22:58:03] * Lyne laisse les Maj se creuser le balai
[22:58:42] Zatalyz: tssss tsss c'est pas une question de maj à ce stade
[22:58:52] Zatalyz: c'est une question d'organisation et d'analyse
[22:59:39] Zatalyz: donc, on a besoin de personnes ayant un haut potentiel de pinaillage :P
[23:00:58] Zatalyz: il est un peu tard pour ça ce soir, mais j'aimerais bien qu'on trouve comment faire dans les jours qui viennent
[23:01:11] Glorf: un fichier LICENCE
[23:01:16] Glorf: "please ask on IRC/XMPP thanks"
[23:02:12] Zatalyz: =_="
[23:02:52] yannk: Rigole, c'est souvent des indications de ce genre
[23:03:09] yannk: Je ne sais plus où j'ai vu un fichier .txt par répertoire avec la licence du fichier du répertoire
[23:03:10] Glorf: je suyis presqsue sérieux
[23:03:23] Glorf: pas besoin de faire en amont du travail qui ne sera pas nécessairement utile :)
[23:03:29] Zatalyz: je préfère essayer de faire les choses bien...
[23:04:09] Zatalyz: parce que par exemple.. pouvez-vous me dire les assets qui empruntent un truc à Michal Ahedov actuellement ?
[23:04:21] Glorf: facile !
[23:04:36] Glorf: yannk: peux tu me dire  les assets qui empruntent un truc à Michal Ahedov actuellement ?
[23:05:53] Zatalyz: et une fois que yannk ne sera plus là ? (déjà, là, faut qu'il réponde...)
[23:06:08] Glorf: je grep sur IRC les fois où il a répondu :D
[23:06:25] yannk: Actuellement rien, Glorf. Il m'a aidé à comprendre des choses pour les illustrations mais je n'ai rien gardé
[23:06:36] * yannk a gagné quoi ?
[23:06:55] yannk: Après, je cite parfois des gars qui publient en CC0 pour les remercier (genre nobbiax)
[23:07:24] Glorf: sinon ya la solution gnu
[23:08:38] Glorf: (filer tout au projet/l'asso qui gère)
[23:08:44] Glorf: tous les droits*
[23:08:57] Lyne: C'est un peu le cas pour ce qu'on crée. Mais il y a ce qu'on emprunte
[23:09:01] Zatalyz: heu oui mais ça, ça marche quand on pique pas les assets des autres projets
[23:09:06] yannk: Oui, c'est là qu'est l'os, hélas
[23:09:36] yannk: Sur ce, je vous souhaite une bonne nuit à toutes, rêvez grande et belle, à demain les ra :)
[23:09:40] Lyne: Beaux rêves YannK
[23:09:43] Glorf: tu peux demander aux gens de double licencer m'enfin :/
[23:09:48] Zatalyz: faut que j'aille dormir, c'est mon heure (largement, en fait), on verra ça une autre fois ^^
[23:09:54] Lyne: Beaux rêves Zat
[23:10:13] Glorf: nenuit !
[23:10:13] Zatalyz: Glorf, on demande rien à David Revoy ou 0.AD, on se contente de leur prendre les trucs sous licence compatible ^^
[23:10:19] Zatalyz: rêvez bien :)

Il nous faut donc un moyen de gérer les attributions correctement ; mettre des fichiers licences à côté de chaque truc dans les assets, ça va pas être lisible et vite lourd. Je propose l'alternative suivante : réaliser une base de donnée, dans laquelle il sera plus facile de faire des recherches (lister tous les assets qui empruntent un truc à tel artiste, par exemple) et de noter des informations (lien vers la source, quel morceau utilisé pour quoi, etc). Je ne suis pas fan des bases de données, le fait que je le propose n'est pas anodin : pour une fois, c'est sans doute la bonne façon de procéder. La base de donnée en question sera synchronisée dans le git des assets (avec un fichier php à la con pour la voir, pour ceux qui ont besoin ; on fera une interface plus propre sur le site, lié à la bibliothèque, avec prévisualisation des assets etc).

Il est important de définir ce qu'il faut lister pour chaque asset. Je pense que la base, c'est le fichier tel qu'il est dans les dépôts (fichier blender, tga, etc).
- Nom du fichier (par exemple texture.tga ou pendo.blend)
- Fichiers liés : facultatif, c'est plus pour la gestion des assets : savoir si le fichier en appelle d'autres ou est appellé par d'autre (cas des textures avec les modèles 3d)
- Date de création
- Dates de modifications (ça c'est listé via git... mais parfois utile pour retrouver quand tel morceau a été ajouté) (facultatif)
- sources :
  - auteur
  - nom du fichier d'origine
  - adresse si existante du fichier d'origine (facultatif ? parfois c'est plus dispo, ou pas en ligne)
  - licence du fichier d'origine
  - Comment la source est utilisée dans l'asset (facultatif)

Est-ce que ça vous semble bon ? j'oublie un truc ?

Zatalyz

J'en profite pour préciser : mettre en place un processus d'attribution très formaté va faciliter la gestion des assets par la suite : on saura qui propose quoi, d'où ça viens, et donc si on peut ou non l'inclure dans nos assets, du point de vue légal. Pour l'aspect "accepte-ton les balais à paillettes", ça reste du domaine de la police des rêves et finalement des règles de modération de chaque serveur.

Cela aidera aussi les contributeurs : ils sauront mieux comment participer. Il faudra quand même qu'on fasse le point sur comment on gère les éléments genre brosses, pas toujours libres, utilisées pour faire des illustrations "libres" (le sont-elles, du coup ?). Je laisserais Yannk rédiger un article sur le wikhan sur les règles pour participer au niveau graphique afin de ne pas enfeindre le droit d'auteur, la profession regorge de mauvaises pratiques et il est de notre responsabilité de bien encadrer les choses, afin d'éviter un procès dans 20 ans de la part de Disney parce qu'une des bestioles crée a son poil qui vient d'un dessin animé.  :Oo:

Zatalyz

La conversation du soir sur le sujet :

Spoiler for Hiden:

‎[21:41:09] ‎yannk‎: On a discuté avec Zatalyz de la question des licences
‎[21:42:51] ‎yannk‎: On a besoin de pouvoir fixer les licences de chaque ressource graphique (chaque fichier en fait)
‎[21:43:48] ‎yannk‎: Mais demander à des graphistes de rédiger chaque fois un fichier normalisé, c'est aller droit dans le mur, je l'ai vu sur d'autres projets, les fichiers ne sont JAMAIS normalisés correctement
‎[21:43:58] ‎yannk‎: Ils sont donc pénibles à parcourir
‎[21:44:04] ‎Lyne‎: C'est quoi, un fichier normalisé ?
‎[21:44:12] ‎yannk‎: toujours organisé pareil, Lyne
‎[21:44:30] ‎yannk‎: Les mêmes infos, dans le même ordre, avec une organisation standardisée
‎[21:45:11] ‎linkmauve1‎: yannk, de quelles informations vous avez besoin, dans ce fichier ?
‎[21:45:11] ‎Glorf‎: (pas que des graphistes :P)
‎[21:45:17] ‎linkmauve1‎: Autre que les licences.
‎[21:45:36] ‎yannk‎: Il faut les sources
‎[21:45:53] ‎yannk‎: Dire d'où vient la source éventuellement (voire LES sources)
‎[21:46:11] ‎yannk‎: DOnc un script qui génère un fichier sidecar de même nom que le fichier graphique serait idéal
‎[21:46:18] ‎linkmauve1‎: yannk, je vois, effectivement c'est assez indispensable d'avoir ça.
‎[21:46:43] ‎yannk‎: SUrtout qu'on pourrait ensuite avoir un script qui gère tous les fichiers sidecar d'une arborescence comme une base de données pour interroger le contenu
‎[21:47:14] ‎yannk‎: VOus me voyez venir ? SI on fait le tout en python, ça fait encore un outil à brancher sur le site éventuellement, pour récupérer des infos
‎[21:47:28] ‎* Zatalyz retiens : encore du python
‎[21:47:36] ‎yannk‎: Et les fichiers sidecar pourraient être en JSON, facile à lire et très bien parsé en python
‎[21:47:55] ‎* yannk est persuadé que c'est le genre de lib qui pourrait intéresser pas mal de projets libristes
‎[21:48:47] ‎yannk‎: On pourrait avoir le script qui se cale avec git, qui voit quand des ajouts ont été faits et qui interroge le graphiste au moment du commit, par exemple, pour inclure les sidecars dedans
‎[21:49:05] ‎* yannk a fini et attend d'éventuelles questions
‎[21:49:16] ‎linkmauve1‎: Tellement que ça m'étonne que ça n'existe pas déjà ; Debian a son debian/copyright qui précise les licences de chaque fichier du projet notamment, mais il ne parle pas de sources autres, il suppose que le contenu du dépôt est la source elle-même.
‎[21:49:45] ‎Zatalyz‎: oui, si vous croisez un truc qui gère déjà ça, on prend
‎[21:50:01] ‎Zatalyz‎: c'est pas comme si le problème était propre à Khaganat ^^
‎[21:51:00] ‎* Lyne agite sa première main : J'ai une question en rapport !
‎[21:51:22] ‎Lyne‎: Sur le forum, vous parlez de brosses pas libres
‎[21:51:32] ‎Lyne‎: C'est quoi, ces brosses ? Et pourquoi ce qu'on fait avec ne serait pas libre ?
‎[21:51:49] ‎Zatalyz‎: ah, c'est un truc que j'ai mal compris
‎[21:52:10] ‎Zatalyz‎: pour faire un dessin sous krita, photoshop etc tu utilise des "brosses"
‎[21:52:17] ‎Zatalyz‎: ça donne une forme à ton pinceau
‎[21:52:41] ‎Zatalyz‎: problème : il y a beaucoup de bonnes brosses... sous copyright
‎[21:52:58] ‎* Lyne ne savait pas qu'il y avait tant de formes possibles pour un pinceau
‎[21:53:13] ‎Zatalyz‎: je me demandais comment ça influençais la licence de l'oeuvre finale, mais la réponse de yannk est "on s'en fout, tant que l'artiste repartage pas les brosses en question"
‎[21:53:29] ‎Zatalyz‎: un outil non libre peut créer une oeuvre libre
‎[21:53:55] ‎Zatalyz‎: plus concrètement : un dessin fait sous photoshop, avec des brosses non libres, peut ensuite être placée sous licence libre par son auteur
‎[21:54:27] ‎Zatalyz‎: le souci c'est s'il commence à faire des collages et que c'est identifiable, ou que ce qu'il dessine reprend des choses privatrics
‎[21:54:30] ‎linkmauve1‎: Ce n'est pas le cas des polices de caractères, t'en es 100% sûre pour les brosses ?
‎[21:54:46] ‎Zatalyz‎: non, je ne suis pas sûre à 100%
‎[21:54:58] ‎* Zatalyz laisse la parole à yannk
‎[21:55:06] ‎Lyne‎: Une police de caractère est identifiable. C'est même l'une de ses propriétés de base
‎[21:55:20] ‎yannk‎: Exactement, c'est le fait de créer une oeuvre originale qui prime
‎[21:55:39] ‎yannk‎: SI tu te contentes de faire une application de la forme de la brosse en noir sur blanc, ça risque d'être retoqué
‎[21:55:47] ‎yannk‎: Mais sinon il n'y a aucun problème
‎[21:55:57] ‎yannk‎: Tant que tu ne redistribues pas
‎[21:56:14] ‎yannk‎: La police, tu es obligé de la redistribuer
‎[21:56:35] ‎yannk‎: Pasla brosse, sa forme n'est pas incluse dans l'oeuvre finale (dans le fichier)
‎[21:57:18] ‎* yannk a fini

YannK

Voilà le résultat possible de contenu du fichier à générer :

- Nom du fichier (par exemple texture.tga ou pendo.blend)
- Licence du fichier (avec un choix par défaut ?, celui de la licence habituelle ?)
- Créateur du fichier
- Fichiers liés : facultatif, c'est plus pour la gestion des assets : savoir si le fichier en appelle d'autres ou est appellé par d'autre (cas des textures avec les modèles 3d)
- Date de création
- Dates de modifications (ça c'est listé via git... mais parfois utile pour retrouver quand tel morceau a été ajouté) (facultatif)
- sources :
  - auteur
  - nom du fichier d'origine
  - adresse si existante du fichier d'origine (facultatif ? parfois c'est plus dispo, ou pas en ligne)
  - licence du fichier d'origine
  - Comment la source est utilisée dans l'asset (facultatif)

Zatalyz

Je reformule pour les gens un peu perdus (mais de toute façon c'est pas simple).

Chaque asset aura son fichier texte associé, avec le même nom et un suffixe précisant que c'est la licence. Par exemple pendo.blend (modèle 3d), et pendo.blend.license.

Ce fichier *.license" est du texte, mais formaté de façon spéciale (probalement json), ce qui fait que c'est lisible par un être humain sans logiciel spécial, pour qui récupère un asset ici et là, mais qu'un programme (en python, pour changer) peut "parser" ces fichiers, c'est à dire les parcourir, les analyser et rendre un truc utilisable à plus grande échelle. Ici, le parser permettrait entre autre de générer une base de donnée, qui facilitera la recherche de tous les contenus d'un auteur (par exemple) ou tous ceux sous une licence spécifique. À terme, cela permet aux contributeurs de télécharger en une fois tout ce qui est en CC0, ou basé sur du CC0, par exemple.

Autre grand intérêt de ce formatage spécial, on peut aussi faire un outil qui va générer le fichier semi-automatiquement, et dire au contributeur qui push un asset sur le dépôt "hey, c'est quoi la licence ? À qui t'a piqué la base ?".

Zatalyz

Je remonte le sujet vu qu'on cause un peu de ça...

Il faudrait rédiger une "charte de contribution" propre, précisant clairement que chaque contribution se place sous tel régime.
Citation de: AkebridJe dirais plutôt une sorte de charte de contribution indiquant en quelque sorte l'acceptation par avance de la licence et d'une évolution possible (sur une licence libre). En quelque sorte : que la charte garantisse que le contributeur change pas d'avis pour passer sous licence proprio une contribution sur laquelle on se base, mais également pour faciliter un changement de licence tant que celle-ci reste libre.

De mon côté, je pense que toutes les contributrices devraient signer à un moment un papier qui précise bien leur engagement, ou plutôt leur engagement en faveur du libre... Avec la possibilité de préciser "plus", comme Osquallo qui est dans une volonté de "faites ce que vous voulez" (et c'est pas le seul). Cette formalisation est un peu lourde, mais elle permettrait d'aborder dans le futur plusieurs cas de figures sans se retrouver bloqué :
- Si on a besoin de changer la licence (me demande pourquoi...) on aura un cadre via ce document, et le nom des contributrices (même si bon, pas sûr qu'on arrive à retrouver tout le monde pour autant)
- S'il arrive un malheur, ça évite que les ayant-droits nous embêtent, car il s'agirait, en droit français, d'une cession (non-exclusive) des droits patrimoniaux. En très gros.
- Ça permettra surtout que tout le monde agisse bien en connaissance de cause et que ses volontés soient respectées.

Nomys_Tempar

Pour info toutes les licences libres et ouvertes sont irrémédiable, c'est à dire que techniquement, une fois qu'une licence est collé à un fichier, l'auteur ne peut plus l'enlever du fichier. Par contre il peut cesser de le distribuer sous cette licence quand il veut. Ça veut dire que ceux qui l'auront télécharger avec la licence pourront toujours continuer à s'en servir sous cette licence.

Donc pas besoin de charte ou de quoi que se soit pour ça...
Mieux vaut mourir incompris que de passer sa vie à s'expliquer.

Licences Mentions légales Accueil du site Contact