doc/es_ES.ISO8859-1/articles/contributing/article.xml
2013-11-13 07:52:45 +00:00

596 lines
26 KiB
XML

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook XML V5.0-Based Extension//EN"
"http://www.FreeBSD.org/XML/share/xml/freebsd50.dtd">
<article xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:lang="es">
<info><title>Contribuir a FreeBSD</title>
<abstract>
<para>En éste artículo se describen las diferentes
maneras en las que una persona o entidad pueden ayudar al
Proyecto FreeBSD.</para>
&trans.es.bazcar;
</abstract>
<authorgroup>
<author><personname><firstname>Jordan</firstname><surname>Hubbard</surname></personname><contrib>Enviado por </contrib></author>
</authorgroup>
<pubdate>$FreeBSD$</pubdate>
<releaseinfo>$FreeBSD$</releaseinfo>
</info>
<indexterm><primary>contributing</primary></indexterm>
<para>?Quiere ayudar a mejorar FreeBSD? ¡Eso es
genial! FreeBSD <emphasis>depende</emphasis> del esfuerzo de
base de usuarios y usuarias para sobrevivir. Su ayuda no
sólamente muy apreciada sino que es <emphasis>vital
</emphasis> para el contínuo crecimiento de FreeBSD.</para>
<para>Contrariamente a lo que pudiera usted creer, no hace falta ser
un brujo de la programación o un amigo íntimo del
core team de FreeBSD para su trabajo sea aceptado. El desarrollo
de FreeBSD está al cargo de un gran grupo internacional de
voluntarios y voluntarias en contínuo crecimiento, de muy
diversas edades y expertos en distintos campos del
conocimiento. Siempre hay más trabajo por hacer que gente
disponible para hacerlo y una mano más siempre es
bienvenida.</para>
<para>El proyecto FreeBSD tiene el compromiso de mantener un
sistema operativo completo, no simplemente un kernel o unas
cuantas aplicaciones sueltas. Por lo tanto nuestra lista de
<filename>TAREAS PENDIENTES</filename> (<quote>TODO</quote>)
incluye una vasta lista de tareas: desde documentación,
prueba de versiones preliminares hasta el desarrollo del sistema
de instalación y el desarrollo del kernel en aspectos
altamente especializados. Casi con total seguridad puede usted
ayudar al proyecto sea cual sea su preparación y el
área en la que disponga de experiencia o
interés.</para>
<para>Invitamos a las empresas que tienen proyectos relacionados
con FreeBSD a que se pongan en contacto con nosotros. ?Necesitan
una extensión concreta para hacer que su producto funcione?
Estaremos encantados de escuchar sus peticiones (suponiendo que no sean
demasiado esotéricas). ?Su proyecto es interesante y/o
beneficioso para su empresa y para FreeBSD?
¡Háganoslo saber! Podemos trabajar conjuntamente en
algunos aspectos del mismo. El mundo del software libre está
cambiando muchas de las normas establecidas sobre cómo el software
debería ser desarrollado, vendido y mantenido así que
le rogamos encarecidamente que al menos le dé un segundo
vistazo.</para>
<sect1 xml:id="contrib-what">
<title>Qué es lo que hace falta</title>
<para>La siguiente lista de tareas y subproyectos representa
de algún modo la amalgama de listas de <filename>TAREAS
PENDIENTES</filename> y peticiones de usuarios.</para>
<sect2 xml:id="non-programmer-tasks">
<title>Tareas en Curso para No Programadores</title>
<para>Una gran parte de quienes trabajan en FreeBSD no
son programadores. El Proyecto incluye escritores de
documentación, diseñadores y técnicos de
soporte. Los únicos requisitos necesarios son poner
algo de su tiempo y ganas de aprender.</para>
<orderedlist>
<listitem>
<para>Lea cuidadosamente las FAQ y el Handbook cada cierto
tiempo. Si algo está mal explicado, desfasado o
sencillamente completamente equivocado háganoslo
saber. Aún mejor, envíenos la
corrección (no es difícil aprender SGML pero
no hay problema si lo envía en ASCII).</para>
</listitem>
<listitem>
<para>Ayude a traducir la documentación de FreeBSD a
su lengua materna. Si ya existe documentación en su
idioma puede ayudar a traducir otros documentos o a mantener
al día los que ya existan. Antes de nada consulte <link xlink:href="../../books/fdp-primer/translations.html">Translations
FAQ</link> en el <quote>FreeBSD Documentation Project
Primer</quote>. El hecho de traducir
<emphasis>algo</emphasis> no implica la obligación
de traducir <emphasis>todo</emphasis>: al ser una tarea
voluntaria puede usted traducir tanto o tan poco como
prefiera. Cuando alguien empieza a traducir casi siempre
hay alguien que se une. Si sólo tiene tiempo o
ganas para traducir una parte de la documentación
por favor, traduzca las instrucciones de instalación.</para>
</listitem>
<listitem>
<para>Lea la &a.questions; y el &ng.misc;
de vez en cuando (o incluso regularmente). Compartir sus
conocimientos mientras ayuda a la gente a resolver sus
problemas puede ser muy gratificante. ¡Puede ser que
incluso aprenda usted también algo nuevo! Esos foros
pueden ser también un importante foco de ideas para
nuevas cosas en las que trabajar.</para>
</listitem>
</orderedlist>
</sect2>
<sect2 xml:id="ongoing-programmer-tasks">
<title>Tareas en Curso para Programadores</title>
<para>La mayoría de las tareas aquí expuestas
requieren una considerable cantidad de tiempo o un conocimiento
profundo del kernel de FreeBSD o ambas cosas. Existen, sin embargo,
multitud de tareas muy útiles que son ideales para
<quote>hackers de fin de semana</quote>.</para>
<orderedlist>
<listitem>
<para>Si utiliza FreeBSD-CURRENT y tiene una buena
conexión con Internet existe una máquina
llamada <systemitem class="fqdomainname">current.FreeBSD.org</systemitem> que genera
diariamente (en teoría, la frecuencia puede variar)
una distribución completa.
Intente instalar la última versión
desde ella e informe de cualquier anomalía en el
proceso.</para>
</listitem>
<listitem>
<para>Lea la &a.bugs;. Puede encontrar algún
problema sobre el que hacer un comentario constructivo o
sobre el que probar parches. Puede incluso intentar
arreglarlo usted.</para>
</listitem>
<listitem>
<para>Si sabe de alguna corrección que ha sido
aplicada con éxito a -CURRENT pero que aún
no haya sido incluída en -STABLE tras un
período de tiempo razonable (por lo general un par
de semanas) envíe al committer responsable un
(educado) mensaje recordándoselo.</para>
</listitem>
<listitem>
<para>Mueva software de terceras partes a
<filename>src/contrib</filename> en el árbol de
fuentes.</para>
</listitem>
<listitem>
<para>Asegúrese de que el código de
<filename>src/contrib</filename> está
actualizado.</para>
</listitem>
<listitem>
<para>Compile el árbol de fuentes (o sólo una
parte del mismo) con una cantidad extra de <quote>warnings
</quote> activadas y depúrelas.</para>
</listitem>
<listitem>
<para>Corrija <quote>warnings</quote> en los ports
en los que aparecen cosas en desuso como
<function>gets()</function> o que incluyen
<filename>malloc.h</filename>.</para>
</listitem>
<listitem>
<para>Si ha enviado algún port envíe sus
parches a los autores originales: le hará la
vida más fácil cuando liberen la siguiente
versión.</para>
</listitem>
<listitem>
<para>Consiga copias de estándares formales como
POSIX. Hay enlaces relacionados con esos estándares
en el sitio web del <link xlink:href="http://www.FreeBSD.org/projects/c99/index.html">FreeBSD
C99 &amp; Posix Standards Conformance Project</link>.
Compare el funcionamiento interno de FreeBSD con el que
exije el estándar. Si hay diferencias, en especial
en algún rincón sutil y oscuro de la
especificación, envíe un PR (<quote>Problem
Report</quote>). Si es capaz de aventurar una solución
incluya un parche en el PR. Si cree que el estándar es
incorrecto póngase en contacto con los responsables del
mismo para que tengan en cuenta su propuesta.</para>
</listitem>
<listitem>
<para>¡Sugiera nuevas tareas para ésta
lista!</para>
</listitem>
</orderedlist>
</sect2>
<sect2>
<title>Trabajo en la <quote>PR Database</quote></title>
<indexterm><primary>base de datos de informes de
problemas (PR)</primary></indexterm>
<para>La <link xlink:href="http://www.FreeBSD.org/cgi/query-pr-summary.cgi">lista
de PR de FreBSD</link> muestra los informes de problemas
activos así como las peticiones de mejoras
que han enviado los usuarios de FreeBSD. La <quote>PR
database</quote> incluye tanto problemas que han de ser
corregidos por programadores como por no programadores.
Busque entre los PR que están abiertos, puede haber
alguno que le interese. Algunos pueden ser tareas muy
sencillas que sólo necesiten una mirada adicional
para confirmar que la solución adjunta es la
adecuada. Otras, por el contrario, pueden llegar a ser
muchísimo más complejas o incluso no
incluír una solución.</para>
<para>Comience con un PR no haya sido aún
asignado. Si el PR ya ha sido asignado a alguien pero
cree que puede ayudar envíe un correo electrónico
a la persona responsable del PR y pregúntele si puede
colaborar (tal vez ya exista un parche listo para ser probado
o puedan contrastar ideas).</para>
</sect2>
</sect1>
<sect1 xml:id="contrib-how">
<title>Cómo Colaborar</title>
<para>Las colaboraciones al sistema generalmente pueden
catalogarse en las siguientes 5 categorías:</para>
<sect2 xml:id="contrib-general">
<title>Informes de Errores y Comentarios Generales</title>
<para>Las ideas o sugerencias de interés
técnico <emphasis>general</emphasis> deben
enviarse a &a.hackers;. En consecuencia, si le interesan
ese tipo de cuestiones (¡y no le importa recibir un
<emphasis>gran</emphasis> volumen de correo!) debería
suscribirse a la &a.hackers; enviando un correo electrónico
a &a.majordomo;. Consulte el <link xlink:href="../../books/handbook/eresources.html#ERESOURCES-MAIL">
FreeBSD Handbook</link> para más información sobre
ésta y otras listas de correo.</para>
<para>Si encuentra un error o quiere enviar un cambio concreto
por favor utilice el programa &man.send-pr.1; o su <link xlink:href="../../../../send-pr.html">equivalente en la
web</link> (N. del T.: El interfaz web de send-pr fué
desactivado a causa del <quote>spam</quote>). Trate de
rellenar todos los campos del informe de errores. A menos que
exceda de 65KB puede incluír los parches directamente en
el informe. Si es posible aplicar el parche al árbol de
fuentes no olvide incluír <literal>[PATCH]</literal> en
la sinópsis del informe. Cuando incluya parches
<emphasis>no</emphasis> <quote>copie y pegue</quote> ya que
las tabulaciones son transformadas en espacios, haciendo el
parche inútil. Considere la posibilidad de comprimir
los parches mediante &man.uuencode.1; si sobrepasan los
20KB.</para>
<para>Tras rellenar el informe debería recibir un mensaje
de confirmación junto con un número de
seguimiento. Conserve ese número por si en algún
momento pudiera añadir nueva información sobre el
problema enviando correo a
<email>FreeBSD-gnats-submit@FreeBSD.org</email>. Utilice el
número como asunto del mensaje (por ejemplo,
<literal>"Re: kern/3377"</literal>. Así debería
enviarse la información adicional sobre cualquier PR.</para>
<para>Si no recibe confirmación en un período de
tiempo razonable (entre 3 días y una semana, dependiendo
de su tipo de conexión) o si por alguna razón no
puede utilizar el comando &man.send-pr.1;, puede solicitar que
alguien lo haga por usted enviando un correo a &a.bugs;.</para>
<para>No olvide consultar <link xlink:href="../../articles/problem-reports/article.html">éste
<quote>article</quote></link> sobre cómo escribir buenos
informes de problemas.</para>
</sect2>
<sect2>
<title>Cambios en la Documentación</title>
<indexterm><primary>envíos de
documentación</primary></indexterm>
<para>Los cambios en la documentación son revisados por
la &a.doc;. Por favor, consulte <link xlink:href="../../books/fdp-primer/index.html">FreeBSD Documentation
Project Primer</link> para recibir instrucciones
detalladas. Envíe nuevos contenidos o cambios sobre
los ya existentes (¡incluso los pequeños son
bienvenidos!) mediante &man.send-pr.1; tal y como se detalla
en <link linkend="contrib-general">Informes de Error y Comentarios
Generales</link>.</para>
</sect2>
<sect2>
<title>Cambios al Código Fuente ya Existente</title>
<indexterm><primary>FreeBSD-CURRENT</primary></indexterm>
<para>Añadir cambios o modificar el código fuente
existente es un tema delicado y depende mucho de hasta
qué punto esté usted al día sobre el
estado actual del desarrollo de FreeBSD. Hay una versión
en desarrollo permanente de FreeBSD conocida como
<quote>FreeBSD-CURRENT</quote>, disponible de muy diversas
formas para mayor comodidad de los desarrolladores que
están trabajando activamente en el
sistema. Consulte el <link xlink:href="../../books/handbook/current-stable.html">FreeBSD
Handbook</link>, donde se explica cómo obtener y
utilizar FreeBSD-CURRENT.</para>
<para>Si trabaja con versiones anticuadas de los fuentes
desafortunadamente significará que sus cambios
podrían con frecuencia resultar demasiado obsoletos
o demasiado divergentes para una fácil reintegración
dentro de FreeBSD. Ésta posibilidad puede minimizarse
suscribiéndose a la &a.announce; y a la &a.current;,
donde tienen lugar los debates sobre el estado actual del
sistema.</para>
<para>Asumiendo que puede manejarse con seguridad con unos fuentes
totalmente actualizados sobre los que aplicar sus cambios, el
siguiente paso es generar los <quote>diffs</quote> que enviará
al equipo de FreeBSD. Hágalo con el comando
&man.diff.1;.</para>
<para>El formato &man.diff.1; que preferimos para el envío
de parches es la salida unificada generada por <command>diff
-u</command>. Sin embargo, para parches que implican cambios
sustanciales en una región de código una salida
contextual de <quote>diff</quote> generada por <command>diff
-c</command> resultará más legible y en consecuencia
preferible.</para>
<indexterm>
<primary><command>diff</command></primary>
</indexterm>
<para>Por ejemplo:</para>
<para>
<screen>&prompt.user; <userinput>diff -c ficheroantíguo ficheronuevo</userinput></screen>
o
<screen>&prompt.user; <userinput>diff -c -r directorioantíguo directorionuevo</userinput></screen>
generarían un conjunto de <quote>diffs</quote> contextuales
de fichero fuente o la jerarquía de directorios.</para>
<para>Del mismo modo
<screen>&prompt.user; <userinput>diff -u ficheroantíguo ficheronuevo</userinput></screen>
o
<screen>&prompt.user; <userinput>diff -u -r directorioantíguo directorionuevo</userinput></screen>
nos darían el mismo resultado excepción hecha
del formato unificado de los <quote>diffs</quote>
resultantes.</para>
<para>Consulte la página man de &man.diff.1; para más
detalles.</para>
<para>Una vez que disponga de un conjunto de <quote>diffs
</quote> (que debería probar con el comando
&man.patch.1;) puede enviarlos para que sean incluídos en
FreeBSD. Utilice el programa &man.send-pr.1; tal y como se muestra
<link linkend="contrib-general">Informes de Errores y Comentarios
Generales</link>. ¡<emphasis>No</emphasis> se limite simplemente
a enviar sus <quote>diffs</quote> a la &a.hackers; o se
perderán! Agradecemos inmensamente su colaboración
(¡éste es un proyecto que funciona gracias al
trabajo desinteresado de mucha gente!). Estamos muy ocupados,
así que no podemos atender inmediatamente todos y cada uno
de los envíos recibidos, pero permanecerán en la
<quote>PR database</quote> hasta que lo hagamos. Etiquete sus
envíos incluyendo <literal>[PATCH]</literal> en la
sinópsis del informe.</para>
<indexterm>
<primary><command>uuencode</command></primary>
</indexterm>
<para>Si lo considera oportuno (ésto es, si ha
añadido borrado o renombrado ficheros)
empaquete sus cambios en un fichero <command>tar
</command> y ejecute el programa &man.uuencode.1;
sobre él. Puede usar también ficheros
creados con &man.shar.1;</para>
<para>Si su cambio puede tener un cariz potencialmente
delicado ésto es, no está seguro de bajo
qué tipo de <quote>licencia</quote> sería
su distribución ulterior o simplemente no está
listo para liberarlo sin una revisión exhaustiva,
debería enviarlo directamente a &a.core; en lugar de
usar &man.send-pr.1;. El &a.core; incluye un grupo de gente
mucho más pequeño que lleva a cabo la mayor
parte del trabajo diario en FreeBSD. Tenga en cuenta que
el &a.core; está <emphasis>muy ocupado</emphasis> y
por lo tanto sólo debería enviársele
correo cuando sea estrictamente necesario.</para>
<para>Consulte la páginas <quote>man</quote> de
&man.intro.9; y &man.style.9; para saber más acerca
del estilo de codificación requerido. Le
agradeceríamos mucho que al menos tuviera en cuenta
esa información antes de enviar código.</para>
</sect2>
<sect2>
<title>New Code or Major Value-Added Packages</title>
<para>En el caso de una contribución significativa o de
gran impacto, o si se trata de añadir una nueva
característica importante a FreeBSD, enviar ficheros
tar tratados con <quote>uuencode</quote> o por el contrario
ponerlos a disposición de otras personas en un sitio
web o FTP se convierte en algo prácticamente
imprescindible. Si no dispone de acceso a un sitio web o
FTP pregunte en la lista apropiada de FreeBSD para que
alguien se lo facilite.</para>
<para>Cuando se trabaja con un gran volumen de código
el espinoso tema de la <quote>licencia</quote> invariablemente
sale a la palestra. Las <quote>licencias</quote> admitidas
para la inclusión de código en FreeBSD
son:</para>
<orderedlist>
<listitem>
<indexterm><primary>La Licencia BSD</primary></indexterm>
<para>La licencia BSD. Ésta licencia es la preferida
a causa de su naturaleza carente de <quote>requerimientos
añadidos</quote> y su atractivo general para la
empresa. Lejos de buscar evitar el uso comercial, el
Proyecto FreeBSD recomienda vivamente la participación
de entidades comerciales que pudieran en casos determinados
dedicar parte de sus recursos a FreeBSD.</para>
</listitem>
<listitem>
<indexterm><primary>GPL</primary><see>GNU General Public License</see></indexterm>
<indexterm><primary>GNU General Public License</primary></indexterm>
<para>La GNU General Public License, o <quote>GPL</quote>.
Ésta licencia no es tan popular debido al esfuerzo
añadido que requiere de cualquiera que usara el
código con fines comerciales, pero dada la ingente
cantidad de código GPL que usamos habitualmente
(el compilador, el ensamblador, el procesador de texto,
etc) sería estúpido rechazar contribuciones
bajo ésta licencia. El código bajo licencia
GPL también se incluye bajo una parte diferenciada
del árbol, pudiendo ser
<filename>/sys/gnu</filename> o
<filename>/usr/src/gnu</filename>, y es por tanto
fácilmente identificable para quienes la licencia
GPL suponga un problema.</para>
</listitem>
</orderedlist>
<para>Todo lo que vaya bajo cualquier otro tipo de licencia
requiere que ésta deba ser cuidadosamente revisada
antes de que su inclusión en FreeBSD sea llevada a
consideración. Las aportaciones bajo licencias
comerciales particularmente restrictivas en vigor por lo
general son rechazadas aunque siempre se recomienda a los
autores que hagan públicamente accesible su trabajo
usando sus propios medios.</para>
<para>Para poner su trabajo bajo la licencia <quote>BSD</quote>
inserte el siguiente texto al principio de todos y cada uno
de los ficheros de código que quiera amparar bajo la
misma, reemplazando el texto entre
<literal>%%</literal> con la información
apropiada:</para>
<programlisting>Copyright (c) %%años_exactos%%
%%su_nombre%%, %%su_estado/país%% %%su_código_postal%%.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer as
the first lines of this file unmodified.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY %%su_nombre%% ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL %%su_nombre%% BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
&dollar;Id&dollar;</programlisting>
<para>Para su comodidad existe una copia de éste texto en
<filename>/usr/share/examples/etc/bsd-style-copyright</filename>.</para>
</sect2>
<sect2>
<title>Dinero, Hardware o Acceso a Internet</title>
<para>Estamos encantados de aceptar donaciones económicas
para ayudar a impulsar el Proyecto FreeBSD y, como en cualquier
proyecto mantenido por voluntarios, un poco puede hacer
mucho. También son muy importantes las donaciones de
hardware para ampliar nuestra lista de hardware soportado,
dado que normalmente andamos cortos de fondos con los que
comprar ese tipo de material.</para>
<sect3 xml:id="donations">
<title>Donación de Fondos</title>
<para>La Fundación FreeBSD es una fundación sin
ánimo de lucro y exenta de impuestos creada para
impulsar los objetivos del Proyecto FreeBSD. Como una entidad
501(c)3, la Fundación está
prácticamente exenta del pago del impuesto federal
de la renta de los EEUU así como del del Estado de
Colorado. Las donaciones a una entidad libre de impuestos
suelen ser deducibles en la declaración federal de
impuestos.</para>
<para>Las donaciones pueden enviarse mediante cheque a:
<address>
The FreeBSD Foundation
<street>7321 Brockway Dr.</street>
<city>Boulder</city>, <state>CO</state> <postcode>80303</postcode>
<country>USA</country>
</address>
</para>
<para>La Fundación FreeBSD puede también aceptar
donaciones via web mediante PayPal. Para hacer una
donación visite la página web <link xlink:href="http://www.freebsdfoundation.org">de la
Fundación</link>.</para>
<para>Puede encontrar más información sobre
la Fundación en <link xlink:href="http://people.FreeBSD.org/~jdp/foundation/announcement.html">The
FreeBSD Foundation -- an Introduction</link>. Puede enviar correo
electrónico a la Fundación a
<email>bod@FreeBSDFoundation.org</email>.</para>
</sect3>
<sect3>
<title>Donación de Hardware</title>
<indexterm><primary>donaciones</primary></indexterm>
<para>El Proyecto FreeBSD acepta encantado donaciones de
hardware que le resulte útil. Si desea donar
hardware por favor póngase en contacto con la <link xlink:href="http://www.FreeBSD.org/donations/">Donations Liaison
Office</link>.</para>
</sect3>
<sect3>
<title>Donación de Acceso a Internet</title>
<para>Nunca viene mal una nueva réplica para sitios
FTP, WWW o <command>cvsup</command>. Si desea ofrecer
alguno de esos servicios por favor consulte el siguiente
artículo <link xlink:href="../../articles/hubs/index.html">Mirroring FreeBSD</link>
para más información.</para>
</sect3>
</sect2>
</sect1>
<index/>
</article>