L'original de cette page est en anglais.
Évaluation des logiciels GNU
Faire don d'un logiciel à GNU
Si vous voulez offrir au projet GNU un logiciel que vous avez écrit, merci beaucoup ! Vous trouverez sur cette page un questionnaire à remplir pour soumettre votre paquet. Ces renseignements nous permettrons de l'évaluer dans les meilleurs délais.
Prenez votre temps pour remplir ce questionnaire. Nous l'avons écrit en texte préformaté pour que vous puissiez le copier sur votre système et le remplir à loisir. Quand vous aurez fini, veuillez l'envoyer par courriel à <gnueval-input@gnu.org> (en texte brut).
Si vous ne pouvez pas répondre à toutes les questions, ou que le programme ne répond pas à toutes les conditions mentionnées, ne vous en faites pas. Cela ne veut pas dire que nous le rejetterons sans examen. Il est courant qu'un programme soit examiné avant d'être tout à fait prêt. Si c'est à la base un bon programme, mais que certaines choses manquent, nous vous signalerons simplement ce qui doit être ajouté. Nous pouvons aussi évaluer le programme à une étape précoce de son développement ; dans ce cas, nous souhaiterons peut-être juger de votre capacité à terminer le programme, sur la base de vos travaux précédents.
GNU n'est pas une simple collection de programmes utiles. Nous avons débuté le projet GNU avec un objectif précis : créer un système d'exploitation libre, le système GNU. Pour garder au système GNU sa cohérence technique, nous nous assurons que ses composants s'adaptent bien les uns aux autres. Aussi les évaluateurs jugent les programmes sur la manière dont ils s'intègrent dans le système GNU, aussi bien techniquement que philosophiquement, ainsi que sur leur qualité, leur utilité, et autres caractéristiques souhaitables. C'est Richard Stallman, le Chief GNUisance,1 qui prend la décision finale d'accepter ou non la contribution, sur la base du rapport d'évaluation.
Ainsi, devenir un mainteneur GNU est un processus relativement formel, puisque l'affiliation au projet GNU en tant que mainteneur signifie que vous devez accepter de travailler (dans les limites de la maintenance) à la défense du logiciel libre, mission du projet GNU.
Aussi, outre le questionnaire, veuillez lire les procédures de GNU dans les renseignements pour les mainteneurs de logiciels GNU, ainsi que les standards de programmation GNU. Un résumé des procédures principales est donné plus loin, mais nous vous prions de regarder également les documents complets.
Si vous ne souhaitez pas remplir le questionnaire, ou satisfaire aux conditions des paquets GNU officiels, nous vous encourageons à soumettre tout de même votre programme au répertoire du logiciel libre. Nous voulons que ce répertoire couvre tous les logiciels libres publiés.
Merci encore de vous intéresser à GNU.
Que signifie pour un programme « être un paquet GNU » ?
Voici, expliqué par rms, ce que signifie pour un programme « être un paquet GNU », et quelles sont d'une manière générale les responsabilités d'un mainteneur GNU.
Faire d'un programme un logiciel GNU veut dire que son développeur et le projet GNU conviennent que « le programme fait partie du projet GNU, qu'il est diffusé sous l'égide de GNU » – et l'indiquent dans le programme.
Cela veut dire que, normalement, vous mettez le programme sur
ftp.gnu.org.
Cela veut dire que le site officiel du programme doit être
www.gnu.org, plus précisément
/software/NOM_DU_PROGRAMME. Toutes les fois que vous donnez
l'URL de la page d'accueil du paquet, vous donnez cette adresse. Vous
pouvez par contre utiliser un autre site pour des sujets secondaires (par
exemple pour les pages destinées aux personnes qui aident au développement
du programme) et pour la gestion de bases de données. (Nous pouvons
exceptionnellement mettre les pages web ailleurs s'il y a vraiment une
raison impérieuse.)
Cela veut dire que les développeurs s'engagent à veiller au bon fonctionnement de leur programme avec le reste du système GNU – et inversement, que le projet GNU encouragera les autres mainteneurs à veiller à la compatibilité de leurs programmes avec lui.
Que veut dire au juste qu'un programme fonctionne bien avec les autres ? C'est surtout affaire de pratique et cela dépend de ce que fait le programme. Mais il y a quelques principes généraux. Certaines parties des standards de programmation GNU affectent directement la cohérence du système complet. Entre autres les standards de configuration et de compilation, et les standards des options de ligne de commande. Il est important de faire en sorte que tous les programmes GNU suivent ces standards, là où ils s'appliquent.
Autre standard GNU important : les programmes GNU doivent comporter une documentation en format Texinfo. C'est le format standard de la documentation GNU, et il peut être converti automatiquement en divers autres formats. Vous pouvez utiliser DocBook ou tout autre format adéquat pour les sources de la documentation, tant que la conversion automatique en Texinfo donne de bons résultats.
Si un programme GNU veut pouvoir accepter des extensions, il doit utiliser GUILE comme langage d'extension – c'est le paquet GNU d'extension. Pour certains programmes, il est justifié de faire autrement, mais, s'il vous plaît, utilisez GUILE si c'est faisable.
Un programme GNU doit utiliser la dernière version de la licence recommandée par le projet GNU – pas n'importe quelle licence de logiciel libre. Pour la plupart des paquets, cela veut dire utiliser la GNU GPL.
Un programme GNU ne doit pas recommander l'utilisation d'un logiciel non libre, quel qu'il soit, et il ne doit pas renvoyer l'utilisateur à une quelconque documentation non libre pour un logiciel libre. La campagne en faveur d'une documentation libre pour les logiciels libres est une priorité du projet GNU ; nous devons montrer que nous prenons ce sujet au sérieux, et ne pas fragiliser notre position en recommandant de la documentation qui ne soit pas libre.
Il y a de temps en temps des problèmes de terminologie qui sont importants pour le succès global du projet GNU. Aussi, nous attendons des mainteneurs de programmes GNU qu'ils emploient la terminologie correcte. Par exemple, les fichiers de documentation et les commentaires d'un programme doivent parler de systèmes GNU/Linux, plutôt que d'appeler le système complet « Linux ». De même ils doivent utiliser l'expression « logiciel libre » plutôt que « open source ». Puisqu'un programme GNU est distribué sous les auspices de GNU, il ne doit en aucune manière contredire les positions du projet GNU.
Il n'est pas nécessaire de transférer le copyright d'un programme à la FSF pour que ce soit un logiciel GNU ; c'est une question à part. Si vous voulez transférer le copyright à la FSF, la FSF fera respecter la GPL si quelqu'un l'enfreint ; si vous gardez le copyright, ce sera votre choix de la faire respecter ou non.
En tant que mainteneur GNU du paquet, veuillez vous arranger pour rester en contact avec le projet GNU. Si nous rencontrons un problème relatif au paquet, nous avons besoin de vous en parler, et de discuter avec vous de la solution à y apporter. Quelquefois nous devrons vous demander de travailler avec d'autres mainteneurs à la solution d'un problème qui touche l'utilisation de plusieurs paquets à la fois. Il est probable que cela n'arrivera pas plus d'une fois par an mais, s'il vous plaît, arrangez-vous pour qu'on puisse vous contacter si cela se produit.
Enfin, si vous décidez de cesser votre activité de mainteneur à un moment quelconque, veuillez nous en informer.
Questionnaire pour faire don d'un logiciel à GNU2
* General Information
** Do you agree to follow GNU policies?
If your program is accepted to be part of the GNU system, it means
that you become a GNU maintainer, which in turn means that you will
need to follow GNU policies in regards to that GNU program.
(Summarized above, see maintainers document for full descriptions.)
** Package name and version:
** Author Full Name <Email>:
** URL to package home page (if any):
** URL to source tarball:
Please make a release tarball for purposes of evaluation, whether
or not you publicly release it. If you don't have
anywhere to upload it, send it as an attachment.
** Brief description of the package:
* Code
** Dependencies:
Please list the package's dependencies (source language, libraries, etc.).
** Configuration, building, installation:
It might or might not use Autoconf/Automake, but it must meet GNU
standards. Even packages that do not require compilation
must follow these standards, so installers have a uniform way to
define target directories, etc. Please see:
http://www.gnu.org/prep/standards/html_node/Configuration.html
http://www.gnu.org/prep/standards/html_node/Makefile-Conventions.html
** Documentation:
We require using Texinfo (http://www.gnu.org/software/texinfo/)
for documentation, and writing both reference and tutorial
information in the same manual. Please see
http://www.gnu.org/prep/standards/html_node/GNU-Manuals.html
** Internationalization:
If your package has any user-visible strings, please make them
translatable to other languages using GNU Gettext:
http://www.gnu.org/software/gettext/
* Licensing:
Both the software itself *and all dependencies* (third-party
libraries, etc.) must be free software in order to be included in
GNU. In general, official GNU software should be released under the
GNU GPL version 3 or any later version, and GNU documentation should
be released under the GNU FDL version 1.3 or any later version.
Please see http://www.gnu.org/philosophy/license-list.html for a
practical guide to which licenses are free (for GNU's purposes) and
which are not. Please give specific url's to any licenses involved
that are not listed on that page.
* Similar free software projects:
Please explain what motivated you to write your package, and search
at least the Free Software Directory (http://www.gnu.org/directory/)
for projects similar to yours. If any exist, please also explain
what the principal differences are.
* Any other information, comments, or questions:
Comme dit plus haut, veuillez renvoyer le questionnaire à <gnueval-input@gnu.org> quand vous aurez fini de le remplir.
Autres manières d'aider le projet GNU
Il y a beaucoup d'autres manières d'aider GNU, certaines qui requièrent des compétences techniques, d'autres non.
