[Traduit de l'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 quand vous nous enverrez 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 consciencieusement. Quand vous aurez fini, veuillez l'envoyer par courriel à <gnueval@gnu.org> (en texte brut).

GNU n'est pas une simple collection de programmes utiles, mais un système d'exploitation unifié, entièrement constitué de logiciel libre. Donc, 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-ils 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.

Ceci a entre autres pour conséquence qu'en règle générale nous n'acceptons pas de nouveau logiciel faisant double emploi de manière significative avec un paquet GNU existant. En tant que système cohérent, il est meilleur pour GNU d'avoir un paquet pour une tâche donnée, et des gens du domaine concerné pour y contribuer et l'améliorer en travaillant ensemble, plutôt que de nombreux paquets faisant chacun une partie de la tâche, développés indépendamment les uns des autres. De même, un petit programme est souvent mieux à sa place comme partie d'un paquet existant que comme nouveau paquet indépendant (en fait, GNU possède actuellement un grand nombre de ces paquets redondants, en général pour des raisons historiques ; cela n'infirme pas le principe général).

Une autre conséquence de ce principe est que devenir 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 de ce projet.

Aussi, outre le questionnaire, veuillez lire les procédures de GNU décrites dans les Informations à l'usage des 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 avez publié un logiciel libre mais ne souhaitez pas remplir le questionnaire, ou satisfaire aux conditions des paquets GNU officiels, nous vous encourageons à inscrire 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 les responsabilités d'un mainteneur de paquet 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.

En général, le projet GNU choisit initialement comme mainteneurs les développeurs ou les personnes qui souhaitent prendre cette responsabilité au nom du projet GNU. S'ils démissionnent – nous espérons que cela n'arrivera pas – nous cherchons d'autres mainteneurs. Le programme reste un paquet GNU à moins que (ou jusqu'à ce que) le projet GNU décide de le déclasser.

En tant que logiciel GNU, le programme se trouve normalement sur ftp.gnu.org (bien qu'à la place nous puissions référencer le site FTP de votre choix dans la mesure où il permet à tout le monde de se connecter de partout).

Cela veut dire que le site web officiel du programme doit être www.gnu.org, plus précisément /software/NOM_DU_PROGRAMME. Chaque fois que vous donnez l'URL de la page d'accueil du paquet, vous donnez cette adresse. Vous pouvez en revanche 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 si possible utiliser Guile comme langage 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, version 3 ou ultérieure.

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.

Cette courte liste de conseils aux mainteneurs de GNU donne une aperçu peut-être utile de quelques tâches à effectuer lorsque votre paquet fera partie de GNU.

Vous trouverez plus de détails dans les documents suivants :

Veuillez lire ces essais, qui expliquent les idées de base de GNU et du logiciel libre :

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 recommend 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/

** Accessibility:
    Please discuss any accessibility issues
    with your package, such as use of relevant APIs.

** Security:
    Please discuss any possible security issues with your package:
    cryptographic algorithms being used, sensitive data being stored,
    possible elevation of privileges, etc.

* 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@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.


Notes de traduction
  1.   Traduction possible : GNUisance-en-chef.
  2.   Le questionnaire n'a pas été traduit car il doit être rempli en anglais.