Investigación sobre el Movimiento del Software Libre Aclaraciones Preliminares bajo la licencia GNU Significa que un trabajo pueda estar a disposición de quién lo desee. Esta licencia permite que cualquier persona tome este escrito y lo redistribuya o lo modifique libremente. En la actualidad, mucha gente asocia este término con el de delincuente informático pero son especialistas programadores o que tienen mucho interés y conocimientos en lo que respecta a la informática. Pero que bajo ningún concepto utilizan sus habilidades para efectuar daños a terceros. Objetivos y Alcances del movimiento del Software Libre. Surgió principalmente en los ámbitos académicos, pero que gracias a Internet, ha logrado proliferar a través del mundo. A esta altura de las circunstancias, la mayoría de la gente ha oído hablar de GNU/Linux, es solo la punta del iceberg. Debajo de él, se encuentran miles de proyectos..Para comenzar, nos remontaremos a los finales de la década del sesenta cuando el software era libre para todos.. Uno de los casos más emblemáticos de todos los tiempos: el sistema operativo Unix. La etapa de colaboración entre Berkley y AT&T y los conflictos posteriores. Al llegar a la década del ochenta, se expondrá el nacimiento del proyecto GNU. Richard Stallman comienza a desarrollar un conjunto de herramientas, e intenta crear un sistema operativo totalmente libre2. Nace la Free Software Foundation (Fundación para el Software Libre). Se comentarán las ventajas y desventajas de cada una, se dedicará una sección entera a presentar el modelo alternativo al software libre, conocido como Open Source. Se expondrán los aportes de Eric Raymond y se estudiará uno de sus escritos más famosos y comentados: “La catedral y el bazar”. Se estudiarán. Apache, Samba, Openoffice y WINE..A su vez, se analizará la posición que ocupa actualmente el software libre en nuestro país y se presentarán distintos casos de proyectos de software libre. 2. UNIX Historia del sistema operativo UNIX Creado en 1969 en los laboratorios Bell de AT&T por Ken Thompson, UNIX nació como un experimento de la empresa para ayudar a controlar la nueva generación de redes telefónicas Bell ya había participado junto con el M.I.T. y General Electric en el desarrollo del sistema MULTICS3. Thompson La primera versión de UNIX, llamada UNICS El trabajo de Thompson impresionó a sus colegas de los laboratorios Bell de tal forma que pronto se le unió Dennis Ritchie y más tarde todo el departamento. En noviembre del '73 Ritchie y Thompson presentaron el primer artículo sobre UNIX, en el simposio sobre los principios de los sistemas operativos en la Universidad de Purdue. Este artículo estimuló a muchas universidades a pedir a los laboratorios Bell una copia de UNIX.
Bell, AT&T, no tuvo objeción en otorgar licencias de uso de UNIX a las universidades a un bajo costo. Algo muy importante es que AT&T también distribuyó el código fuente de UNIX, fomentando así el desarrollo adicional y las innovaciones. La versión que se convirtió en el primer estándar del mundo académico fue la Versión 6. UNIX de Berkley fue el profesor Fabry de la Universidad de California, Berkley quedó inmediatamente interesado en obtener una copia para experimentar en los laboratorios de Berkley. En enero del '74 se instaló Unix en una computadora PDP11/ 455. Los primeros problemas que surgieron con el sistema fueron corregidos de manera remota por el mismísimo Ken Thompson. Este fue el comienzo de la relación de cooperación entre Berkley y los laboratorios Bell. En los comienzos de 1977, Bill Joy organizó la `Berkley Software Distribution' (BSD). Esta primera distribución incluía el sistema Pascal y un editor de textos llamado 'ED'. Para mediados del '78 salió la segunda versión(2BSD). La misma incluía grandes mejoras al Pascal, También contaba con un nuevo editor de textos, el ahora famoso 'vi'. La última versión de UNIX, de los laboratorios Bell fue 32/V6. De ahí en más el desarrollo de UNIX pasó a USL7. Este grupo lanzó primero el System III y luego el System V. Al comercializarse UNIX, el personal de los laboratorios Bell no pudo continuar encargándose de las investigaciones que estaban llevando a cabo en las distintas universidades. Fue así que Berkley tomó el rol dado que fue uno de los primeros participantes en la evolución del UNIX. Hasta la versión 4.3BSD, todos los usuarios debían obtener primero una licencia para el código fuente de AT&T. Esto se debía a que los sistemas BSD nunca fueron lanzados por Berkley en su forma binaria/ejecutable. Las distribuciones siempre contenían el código fuente completo de cada parte del sistema. La historia de los sistemas UNIX y del sistema BSD en particular mostró el poder de que los usuarios dispongan del código fuente. En vez de utilizar el sistema de forma pasiva, los usuarios trabajan activamente corrigiendo errores, mejorando el desempeño, la funcionalidad y eventualmente incorporando nuevas características. Los incrementos constante en los costos de las licencias para el código fuente de AT&T se transformaron en prohibitivos. El código originado por Berkley para redes y las aplicaciones de soporte fueron lanzadas en junio de 1989 bajo el nombre de `Networking Release 1`. Este fue el primer código libremente distribuido lanzado por Berkley. Cualquiera podía distribuir el código sin pagar regalías a Berkley. Los únicos requerimientos eran que los avisos de copyright del código fuente debían dejarse intactos.. En junio de 1991, el grupo lanzó el 'Networking Release 2'. Esta versión incluía casi por completo una versión operativa de UNIX. Networking Release 2 era casi una versión completa de UNIX. Lo que faltaba para transformarlo en un sistema completamente funcional eran seis archivos. Networking Release 2 fue lanzado sin estos seis archivos pero seis meses más tarde (enero del '92) ya estaban listos. Richard Stallman y su Proyecto GNU Sin dudas Richard Mathew Stallman es la persona más importante dentro del movimiento del software libre. Nacido en el año 1953 en Nueva York, A los 18 años, ingresó en el
laboratorio de inteligencia artificial del MIT. En esa época el software se compartía sin ningún problema. De esta forma, Stallman se vio obligado a tomar una decisión: Me pregunté: ¿ habrá algún programa o programas que yo pueda escribir, de tal manera de otra vez hacer posible una comunidad? La respuesta era clara: lo primero que necesitaba era un sistema operativo... El nombre GNU se eligió siguiendo una tradición hacker, como acrónimo recursivo para GNU's Not Unix.' El anuncio inicial Este documento fechado el 27 de septiembre de 1983 fue enviado a dos grupos de noticias con el asunto: "Nueva implementación de UNIX". En este breve correo electrónico Stallman comienza a explicar su proyecto: 'Voy a escribir un sistema... compatible con UNIX llamado GNU... y lo distribuiré libre"14 A su vez explica las similitudes y diferencias de su GNU con UNIX: "GNU tendrá la capacidad de correr programas UNIX, pero no será idéntico a UNIX. Haremos todas las mejoras que son convenientes, basados en nuestra experiencia con otros sistemas operativos' Luego hace una presentación de su persona y pasa a explicar las razones por las que escribirá GNU. Stallman califica a su emprendimiento como una ayuda a la humanidad y demuestra su intención de contratar personal. Poco tiempo después esa idea se hizo realidad al fundar la Fundación para el Software Libre (F.S.F.). Unos meses después de que este anuncio fuera realizado, ya en el año 1984, Stallman publica una nueva versión de su editor de textos EMACS (GNU EMACS) como software libre.. El GNU EMACS fue lanzado bajo una licencia llamada GNU EMACS License. La misma fue la antecesora de la GNU GPL. Como gran diferencia puede indicarse que la licencia del GNU EMACS requería que los cambios efectuados al código fuente se entregasen al autor (en este caso a Stallman) . A medida que el interés por el uso de GNU EMACS crecía, otras personas se involucraron en el proyecto GNU. Entonces nació la Fundación para el Software Libre (FSF). Esta organización de caridad libre de impuestos fue ideada para fomentar el desarrollo de software libre. El Manifiesto GNU El manifiesto comienza explicando el motivo del nacimiento del proyecto GNU. Su creador comenta que ya cuenta con voluntarios ayudándolo e invita a otros programadores a sumarse. Luego se encarga de describir las aplicaciones que ya poseen. Entre ellas se destacan: 1. Editor de textos GNU EMACS (creado por él mismo). 2. Un shell casi terminado. (hoy conocido como BASH) 3. Un nuevo compilador portable de C que se ha compilado a sí mismo y será liberado este año. (se refiere al gcc y al año 1985). 4. Existe un núcleo inicial pero requiere de muchas características más para emular UNIX. 5. Usaremos el sistema gratuito y portable de ventanas XWindow. De toda esta enumeración de aplicaciones, la que le trajo más dolores de cabeza a Stallman en particular y a su proyecto en general fue el núcleo o kernel del sistema operativo. . Luego prosigue esgrimiendo las razones por las cuales escribirá GNU.
Nuevamente reitera lo expresado en el anuncio inicial, y agrega que ha renunciado a su trabajo en el laboratorio de IA para que el MIT no posea ninguna excusa legal que le prohíba distribuir GNU libremente. Indica que GNU, será compatible con UNIX dado que es un buen sistema portable pero además porque es el más utilizado16. De esta manera al ser compatible, las utilidades UNIX podrían ejecutarse en GNU. Y el otro motivo importante es que no sería difícil el cambio al nuevo sistema operativo para los usuarios de UNIX. El segundo punto importante es cuando Stallman explica como estará disponible GNU: 'GNU no es de dominio público. Todos tendrán permiso para modificar y redistribuir GNU, pero a ningún distribuidor se le permitirá restringir su redistribución posterior. Esto es decir, modificaciones propietarias no estarán permitidas'. Con estas palabras queda definida la intención de Stallman de proteger su software con una licencia que asegure que los programas sean libres y que continúen siéndolo. Años después creó la licencia GPL, Más adelante Stallman escribe sobre los beneficios que le brindará GNU a los usuarios de computadoras. 'Los códigos completos del sistema estarán disponibles para todos. El avance del Proyecto Stallman comenzó a sumar adeptos a su proyecto GNU. La Free Software Foundation, era la entidad madre que se encargaba de administrar el trabajo de los voluntarios. Los ingresos por ventas del GNU EMACS ayudaban a mantener la fundación. En 1990 Stallman fue galardonado con una beca de investigación de 240.000 dólares, por la fundación MacArthur. Estas becas conocidas como 'genius grants', se entregan anualmente a personas de gran talento. Uno de los hitos clave dentro del desarrollo del proyecto GNU, es la creación de la licencia GPL. Fue un gran éxito para Stallman y su gente lograr darle un marco legal. Antes de la GPL, había un vacío legal ya que la FSF no tenía un instrumento jurídico que le permitiese proteger de la manera que ellos deseaban al software de su propiedad. A partir de esta licencia (año '89) surge el concepto de 'copyleft'. La idea de Stallman y por ende la FSF era que el software puede considerarse libre si cumple con las siguientes cuatro libertades: Libertad 0 : Libertad de ejecutar el programa para cualquier finalidad. Libertad 1 : Libertad de estudiar como funciona el programa y adaptarlo a las propias necesidades. Libertad 2 : Libertad de distribuir copias para ayudar a un tercero. Libertad 3 : Libertad de mejorar el programa y publicar las propias mejoras, para que se beneficie de ellas toda la comunidad. La libertad 0 la entregan todos los programas en general. Por eso es que realmente las libertades 1, 2 y 3 son las que distinguen al software libre del resto. La libertad 1 es la que implica ayudarse a uno mismo modificando el software para que satisfaga las necesidades propias. Esto puede ser reparando algún error, agregándole funcionalidad o portándolo a otra arquitectura de computadora. La libertad 2 es la que apunta a la distribución de copias de software. Stallman dice 'En la actualidad nos hacen creer que ayudar a un amigo es moralmente
equivalente a atacar un barco. Te llaman pirata'. La libertad 3 apunta a la posibilidad de armar comunidades de desarrollo de software libre. La idea es trabajar juntos para avanzar el conocimiento humano. Es la libertad de modificar el software y que haya gente que coincida con esa modificación. Para cumplirse las libertades 1 y 3 se debe tener acceso al código fuente. En año ´97 Eric Raymond publica su texto “La catedral y el bazar”, dando nacimiento al movimiento “Open Source”. A la larga este término se vuelve más conocido y utilizado que el de software libre. Polémicas y Enfrentamientos Lo que realmente quería Stallman era que el software no cuadre dentro de la ley de patentes de Estados Unidos. quienes muchas veces son voluntarios. Este hecho desencadenó el lanzamiento por parte de Red Hat del proyecto GNOME, como alternativa totalmente libre frente a KDE. Hoy en día KDE y GNOME se incluyen en la mayoría de las distribuciones de GNU/Linux Consideraciones Finales A Richar Stallman hay que reconocerle varios logros. El más importante la creación del sistema GNU y la creación de la licencia GNU GPL, ya que la idea fue suya. También son destacables sus logros en el campo del desarrollo de software: – GNU C Compiler (GCC) : 30 arquitecturas diferentes y 7 lenguajes soportados. – GNU Debugger (GDB) : debugger que sigue siendo utilizado. – GNU Emacs : editor de textos extensible. Licencias Introducción Las condiciones de las licencias de software libre son el resultado de un compromiso entre varios objetivos hasta cierto punto contrapuestos. Entre ellos: – Garantizar algunas libertades básicas a los usuarios. – Asegurar algunas condiciones impuestas por los autores. – Procurar que los trabajos derivados sean también software. Los autores pueden elegir proteger su software con distintas licencias según el grado con que quieran cumplir cada uno de estos objetivos, y los detalles que quiera asegurar. Dominio Público Un programa de dominio público es aquel en el que el autor ha renunciado a los derechos. No vienen con licencia;el programa no tiene propietario y puede usarse como se desee. Cualquiera puede relicenciar un programa de dominio público. GNU – GLP Defienden esta postura indicando que la misma infecta a los programas con el virus de libertad, ya que un programa que está protegido por la GLP no puede transformarse en software propietario. El Copyleft reserva los derechos de un programa y luego le añade
los términos de distribución. Se aplica a cualquier programa que contenga un aviso del titular del derecho de autor. Actos – – – –
permitidos Distribuir copias de software libre, modificarlo y redistribuirlo. Cobrar por transferir una copia. Ofrecer garantía a cambio de un canon. No publicar las modificaciones mientras se use de forma privada.
Actos NO permitidos – Imponer nuevas restrinciones a la licencia, así como copiar, modificar, sublicenciar o distribuir el programa de una manera distinta de la utilizada por la licencia. Detalles importantes – No se ofrece garantía sobre el funcionamiento correcto del software. – Si se modifica y restribuye, se debe expresar que es una modificación del original. – Con el término programa se refiere también a cualquier trabajo basado en el programa. – Un trabajo no basado en el programa no implica que el otro trabajo deba ser lanzado bajo la GPL. – No se debe incluir el código fuente del sistema operativo donde se utiliza el programa. – Nadie está obligado a aceptar licencia, sino se firma. – Las traducciones de la GLP son consideradas versiones no oficiales, pero si permite que publiquen sus versiones modificadas. GNU LGPL Esta licencia se le aplica a unos paquetes llamados bibliotecas. En la licencia se aclara que pueden usarlo cualquier pero sugiere que se utilice la GPL y que solo se recurra a la LGPL en casos estratégicos. La LGPL se ha creado para permitir que se enlaza estas bibliotecas con programas no libres. Cuando un programa se enlaza con una biblioteca la combinación de ambos se considera un trabajo derivado de la biblioteca original .La LGPL se usa generalmente cuando una biblioteca libre hace la misma tarea que otras no libres. Hay que prestación atención entre un trabajo basado en una biblioteca que contiene códigos derivados de la biblioteca y un trabajo que usa la biblioteca que encuadra en el derecho de autor. Detalles importantes: – Permite copiar y/o distribuir copias de la biblioteca. – Se puede modificar la biblioteca o una porción de ella y formar un trabajo – Una biblioteca licenciada bajo LGPL puede convertirse en GPL en cualquier momento – El programa binario/ejecutable queda cubierto por la LGPL . Estos aspectos diferencian a la LGPL de la GPL .Los detalles descritos para la GPL se
aplican también a la LGPL. LICENCIA ESTILO BSD Han sido importantes y muy utilizadas .Su origen se remontan a las raíces del movimiento Esta licencia fue la primera que se ideó para distribuir software libre de las entradas BSD. Estas entradas fueron la forma en que CSRG distribuía su trabajo alrededor del sistema operativo UNIX. En la actualidad se sigue utilizando como licencia para varios proyectos los más importantes: -Los sistemas operativos FreeBSD, NetBSD y OpenBSD. -El servidor web Apache -El sistema de bases de datos PostgreSQL La cláusula de la discordia La misma figuraba en las antiguas versiones de la licencia. El problema es que mucha gente reemplazaba en la licencia Universidad de California por su nombre o el de sus instituciones. Removieron la cláusula hasta que la Universidad de California aceptó que era necesario quitar la licencia. Éste tipo de cláusulas es ideal para promover el uso del código como un cuerpo de referencia. Puede argumentarse que esta licencia asegura “verdadero” software libre, en el sentido de que el usuario tiene libertad limitada con respecto al software y que puede decidir, incluso, redistribuirlo como no libre. NPL & MPL Fue creada por Netscape cuando lanzó como Código Fuente Abierto a su producto Netscape Navigator. Actualmente esta versión se conoce como Mozilla. Fue la primera licencia que trató de algunos puntos que no fueron tenidos en cuenta en BSD y GNU. Antes de abrir su código fuente al público, Netscape publicó una versión beta de su licencia. Éste código fuente fue liberado originalmente bajo la NPL y todas las modificaciones deben lanzarse bajo la misma licencia. Si se desarrollan nuevos módulos del código, pueden lanzarse bajo la licencia MPL. Detalles importantes de la MPL – Los cambios deben volver al proyecto. – Cualquier individuo que contribuya al código del proyecto debe renunciar a cualquier derecho de patentamiento del código fuente. Licencia del MIT Sistema X Windows. Otorga permiso, libre de cargo, de trabajar con el mismo sin restrinciones a los derechos de uso, copia, modificación, publicación, distribución, sublicenciar y la venta de copias. La licencia no permite que se use el nombre del Consorcio X para realizar publicidad alguna sin expresa autorización del mismo.