SOFTWARE LIBRE
La
definición de software libre estipula los criterios que se tienen que cumplir
para que un programa sea considerado libre. De vez en cuando modificamos esta
definición para clarificarla o para resolver problemas sobre cuestiones
delicadas. Más abajo en esta página, en la sección Historial, se puede consultar la lista de
modificaciones que afectan la definición de software libre.
«Software libre» es el software
que respeta la libertad de los usuarios y la comunidad. En grandes líneas,
significa que los usuarios tienen la libertad para ejecutar, copiar,
distribuir, estudiar, modificar y mejorar el software. Es decir, el
«software libre» es una cuestión de libertad, no de precio. Para entender el
concepto, piense en «libre» como en «libre expresión», no como en «barra
libre».
Promovemos estas libertades
porque todos merecen tenerlas. Con estas libertades, los usuarios (tanto
individualmente como en forma colectiva) controlan el programa y lo que este
hace. Cuando los usuarios no controlan el programa, decimos que dicho programa
«no es libre», o que es «privativo». Un programa que no es libre controla a los
usuarios, y el programador controla el programa, con lo cual el programa
resulta ser un instrumento de poder injusto.
Un programa es software libre si
los usuarios tienen las cuatro libertades esenciales:
§
La
libertad de ejecutar el programa para cualquier propósito (libertad 0).
§
La
libertad de estudiar cómo funciona el programa, y cambiarlo para que haga lo
que usted quiera (libertad 1). El acceso al código fuente es una condición
necesaria para ello.
§
La
libertad de redistribuir copias para ayudar a su prójimo (libertad 2).
§
La
libertad de distribuir copias de sus versiones modificadas a terceros (libertad
3). Esto le permite ofrecer a toda la comunidad la oportunidad de beneficiarse
de las modificaciones. El acceso al código fuente es una condición necesaria
para ello.
Un programa es software libre si
otorga a los usuarios todas estas libertades de manera adecuada. De lo
contrario no es libre. Existen diversos esquemas de distribución que no son
libres, y si bien podemos distinguirlos en base a cuánto les falta para llegar
a ser libres, nosotros los consideramos contrarios a la ética a todos por
igual.
En el resto de esta página
tratamos algunos puntos que aclaran qué es lo que hace que las libertades
específicas sean adecuadas o no.
La libertad para distribuir
(libertades 2 y 3) significa que usted tiene la libertad para redistribuir
copias con o sin modificaciones, ya sea gratuitamente o cobrando una tarifa por
la distribución, a cualquiera en cualquier parte. Ser libre de
hacer esto significa, entre otras cosas, que no tiene que pedir ni pagar ningún
permiso para hacerlo.
También debe tener la libertad de
hacer modificaciones y usarlas en privado para su propio trabajo o pasatiempo,
sin siquiera mencionar que existen. Si publica sus cambios, no debe estar
obligado a notificarlo a nadie en particular, ni de ninguna manera en
particular.
La libertad de ejecutar el
programa significa que cualquier tipo de persona u organización es libre de
usarlo en cualquier tipo de sistema de computación, para cualquier tipo de
trabajo y finalidad, sin que exista obligación alguna de comunicarlo al
programador ni a ninguna otra entidad específica. En esta libertad, lo que
importa es el propósito del usuario, no el del programador.
Usted como usuario es libre de ejecutar el programa para alcanzar sus
propósitos, y si lo distribuye a otra persona, también esa persona será libre
de ejecutarlo para lo que necesite; usted no tiene el derecho de imponerle sus
propios objetivos a la otra persona.
La libertad de redistribuir
copias debe incluir las formas binarias o ejecutables del programa, así como el
código fuente, tanto para las versiones modificadas como para las que no lo
estén. (Distribuir programas en forma de ejecutables es necesario para que los
sistemas operativos libres se puedan instalar fácilmente). Resulta aceptable si
no existe un modo de producir un formato binario o ejecutable para un programa
específico, dado que algunos lenguajes no incorporan esa característica, pero
debe tener la libertad de redistribuir dichos formatos si encontrara o
programara una forma de hacerlo.
Para que las libertades 1 y 3
(realizar cambios y publicar las versiones modificadas) tengan sentido, usted
debe tener acceso al código fuente del programa. Por consiguiente, el acceso al
código fuente es una condición necesaria para el software libre. El «código
fuente» ofuscado no es código fuente real y no cuenta como código fuente.
La libertad 1 incluye la libertad
de usar su versión modificada en lugar de la original. Si el programa se
entrega unido a un producto diseñado para ejecutar versiones modificadas por
terceros, pero rechaza ejecutar las suyas —práctica conocida como «tivoización» o «bloqueo», o (según la
terminología perversa de quienes lo practican) «arranque seguro»—, la libertad
1 se convierte en una ficción teórica más que una libertad práctica. Esto no es
suficiente. En otras palabras, estos binarios no son software libre, aun cuando
se hayan compilado a partir de un código fuente libre.
Una manera importante de
modificar el programa es agregándole subrutinas y módulos libres ya
disponibles. Si la licencia del programa específica que no se pueden añadir
módulos que ya existen y que están bajo una licencia apropiada, por ejemplo si
requiere que usted sea el titular del copyright del código que desea añadir,
entonces se trata de una licencia demasiado restrictiva como para considerarla
libre.
La libertad 3 incluye la libertad
de publicar sus versiones modificadas como software libre. Una licencia libre
también puede autorizar otras formas de publicación; en otras palabras, no
tiene que ser una licencia con copyleft. No obstante, una
licencia que requiera que las versiones modificadas no sean libres, no se puede
considerar libre.
Para que estas libertades sean
reales, deben ser permanentes e irrevocables siempre que usted no cometa ningún
error; si el programador del software tiene el poder de revocar la licencia, o
de añadir restricciones a las condiciones de uso en forma retroactiva, sin que
haya habido ninguna acción de parte del usuario que lo justifique, el software
no es libre.
Un ejemplo de un software libre, es el del sistema
operativo Linux que se identifica con el logo de un pingüino como lo veremos a
continuación:
0 Response to "SOFTWARE LIBRE"
Publicar un comentario