La controversia sobre el nombre GNU/Linux es una controversia sobre si los sistemas operativos que utilizan el software GNU y el núcleo Linux deben denominarse sistemas "GNU/Linux" o "Linux". [1]
Los defensores del término Linux argumentan que es mucho más comúnmente utilizado por el público y los medios de comunicación [2] [3] y que sirve como un término genérico para sistemas que combinan ese núcleo con software de múltiples otras fuentes, [4] mientras que los defensores del término GNU/Linux señalan que GNU solo sería un nombre igualmente bueno para las variantes de GNU que combinan el software del sistema operativo GNU con software de otras fuentes. [5]
El término GNU/Linux es promovido por la Free Software Foundation (FSF) y su fundador Richard Stallman . [6] Su razonamiento es que el proyecto GNU fue el principal contribuyente no solo de muchos de los componentes del sistema operativo utilizados en el desarrollo posterior de los sistemas "Linux" modernos, sino también de la filosofía de software libre asociada . [1] [7] Varias distribuciones de sistemas operativos que contienen el núcleo Linux usan el nombre que prefiere la FSF, como Debian , [8] Trisquel [9] y Parabola GNU/Linux-libre . [10] Otros afirman que GNU/Linux es un nombre útil para hacer una distinción entre esas y las distribuciones de Linux como Android y Alpine Linux .
En 1983, Richard Stallman , fundador de la Free Software Foundation , expuso los planes de un sistema operativo completo tipo Unix , llamado GNU , compuesto enteramente de software libre . En septiembre de ese año, Stallman publicó un manifiesto en el Dr. Dobb's Journal detallando públicamente su nuevo proyecto, esbozando su visión del software libre . [11] [12] El trabajo de desarrollo del software comenzó en enero de 1984. Para 1991, las partes de nivel medio del sistema operativo GNU estaban casi completas, y el nivel superior podía ser suministrado por el X Window System , pero el nivel inferior ( núcleo , controladores de dispositivos, utilidades a nivel de sistema y daemons ) todavía estaba en su mayor parte faltante.
El núcleo desarrollado oficialmente por GNU se llamó GNU Hurd . Hurd siguió un ambicioso diseño de micronúcleo , que resultó inesperadamente difícil de implementar en un principio. Sin embargo, en 1991, Linus Torvalds lanzó de forma independiente la primera versión del núcleo Linux. Los primeros desarrolladores de Linux portaron el código GNU, incluido el compilador C de GNU , para ejecutarlo con Linux, mientras que la comunidad de software libre adoptó el uso del núcleo Linux como el núcleo faltante para el sistema operativo GNU. Este trabajo llenó los vacíos restantes para proporcionar un sistema operativo completamente libre. [7]
En los años siguientes surgieron varias sugerencias para nombrar sistemas operativos que utilizaran el núcleo Linux y los componentes GNU. En 1992, la distribución Linux Yggdrasil adoptó el nombre "Linux/GNU/ X ". En discusiones en Usenet y listas de correo, se pueden encontrar usos de "GNU/Linux" ya en 1992, [13] y de "GNU+Linux" ya en 1993. [14] El proyecto Debian , que en un tiempo estuvo patrocinado por la Free Software Foundation , cambió a llamar a su producto "Debian GNU/Linux" a principios de 1994. [3] [15] [16] [17] Este cambio se produjo tras una petición de Richard Stallman (que inicialmente propuso "LiGNUx", pero sugirió "GNU/Linux" en su lugar después de escuchar quejas sobre la incomodidad del término anterior). [18] El Boletín de GNU de junio de 1994 describió a "Linux" como un " sistema Unix libre para máquinas 386 " (con "muchas de las utilidades y bibliotecas" de GNU), [19] pero el Boletín de enero de 1995 cambió al término "GNU/Linux" en su lugar. [20]
Los esfuerzos de Stallman y la FSF para incluir "GNU" en el nombre comenzaron alrededor de 1994, pero se dice que fueron principalmente a través de comunicaciones privadas (como la solicitud a Debian mencionada anteriormente) hasta 1996. [21] [22] En mayo de 1996, Stallman lanzó Emacs 19.31 con el objetivo del sistema Autoconf "linux" cambiado a "lignux" (poco después cambiado a "linux-gnu" en emacs 19.32), [23] [7] e incluyó un ensayo "Linux y el sistema GNU" [24] sugiriendo que la gente use los términos "sistema GNU basado en Linux" (o "sistema GNU/Linux" o "Lignux" para abreviar). Más tarde usó "GNU/Linux" exclusivamente, y el ensayo fue reemplazado por el ensayo de Stallman de 1997, "Linux y el sistema GNU". [6]
Los sistemas operativos de software libre y de código abierto modernos están compuestos por software de muchos autores diferentes, incluidos los desarrolladores del núcleo Linux, el proyecto GNU y otros proveedores como los que están detrás del sistema X Window . Las distribuciones de escritorio y basadas en servidor utilizan software GNU como la biblioteca C de GNU (glibc), GNU Core Utilities (coreutils), GNU Compiler Collection , GNU Binutils , GNU gzip , GNU tar , GNU gettext , GNU grep , GNU awk , GNU sed , GNU Findutils , gnupg , libgcrypt , gnutls , GRUB , GNU readline , GNU ncurses y el shell Bash .
En un análisis de 2002 del código fuente de Red Hat Linux 7.1, una distribución típica de Linux , se descubrió que el tamaño total de los paquetes del proyecto GNU era mucho mayor que el del núcleo Linux. [25] Más tarde, un análisis de 2011 del repositorio principal de versiones "Natty" de la distribución Ubuntu descubrió que entre el 8% y el 13% del mismo consistía en componentes GNU (el rango depende de si GNOME se considera parte de GNU), mientras que solo el 6% lo ocupa el núcleo Linux (el 9% cuando se incluyen sus dependencias directas). [26] Determinar exactamente qué constituye el "sistema operativo" per se es un tema de continuo debate. [1]
Por otro lado, algunos sistemas integrados , como los dispositivos portátiles y los teléfonos inteligentes (como el Android de Google ), los gateways residenciales (routers) y los dispositivos de Voz sobre IP , están diseñados teniendo en cuenta la eficiencia del espacio y utilizan un núcleo Linux con pocos o ningún componente de GNU, debido a problemas percibidos relacionados con la hinchazón y el rendimiento impedido. [27] Es probable que un sistema que ejecute μClinux sustituya uClibc por glibc y BusyBox por coreutils. El sistema operativo Android basado en Linux de Google no utiliza ningún componente o biblioteca GNU, sino que utiliza la propia biblioteca Bionic C basada en BSD de Google en lugar de glibc. La FSF está de acuerdo en que "GNU/Linux" no es un nombre apropiado para estos sistemas. [28] [29] [30]
También hay sistemas que utilizan un espacio de usuario GNU y/o una biblioteca C sobre un núcleo que no es Linux, por ejemplo Debian GNU/Hurd (espacio de usuario GNU sobre el núcleo GNU) [31] o Debian GNU/kFreeBSD (que utiliza el coreutils de GNU y la biblioteca C con el núcleo de FreeBSD ). [32]
La FSF justifica el nombre "GNU/Linux" principalmente sobre la base de que el proyecto GNU estaba desarrollando específicamente un sistema completo, del cual argumentan que el núcleo Linux llenó uno de los vacíos finales; [33] la gran cantidad de componentes GNU y código fuente GNU utilizados en tales sistemas es un argumento secundario:
Así que si tuviéramos que elegir un nombre para el sistema en función de quién escribió los programas que lo componen, la opción más apropiada sería GNU . Pero no creemos que esa sea la forma correcta de considerar la cuestión. El Proyecto GNU no fue, no es, un proyecto para desarrollar paquetes de software específicos. [...] Muchas personas han hecho contribuciones importantes al software libre del sistema, y todas merecen reconocimiento. Pero la razón por la que es un sistema integrado (y no sólo una colección de programas útiles) es porque el Proyecto GNU se propuso convertirlo en uno. Hicimos una lista de los programas necesarios para hacer un sistema libre completo, y sistemáticamente escribimos, o encontramos gente para escribir, todo lo que figuraba en la lista.
—Richard Stallman [33]
Otros argumentos incluyen que el nombre "GNU/Linux" reconoce el papel que el movimiento del software libre jugó en la construcción de comunidades modernas de software libre y de código abierto , [28] que el proyecto GNU jugó un papel más importante en el desarrollo de paquetes y software para GNU/Linux o distribuciones Linux , [6] [7] y que el uso de la palabra "Linux" para referirse al núcleo Linux, el sistema operativo y distribuciones completas de software conduce a confusión sobre las diferencias entre los tres. Debido a esta confusión, las amenazas legales y las campañas de relaciones públicas aparentemente dirigidas contra el núcleo, como las lanzadas por el Grupo SCO o la Institución Alexis de Tocqueville (AdTI), han sido malinterpretadas por muchos comentaristas que asumen que todo el sistema operativo está en la mira. SCO y AdTI incluso han sido acusados de explotar deliberadamente esta confusión. [34] [35] [36]
En cuanto a las sugerencias de que los esfuerzos por cambiar el nombre surgen del egoísmo o del resentimiento personal, Stallman ha respondido que su interés no es darse crédito a sí mismo sino al Proyecto GNU: "Algunas personas piensan que es porque quiero alimentar mi ego. Por supuesto, no les estoy pidiendo que lo llamen 'Stallmanix'". [37] En respuesta a otra sugerencia común de que muchas personas han contribuido al sistema y que un nombre corto no puede darles crédito a todos, la FSF ha argumentado que esto no puede justificar llamar al sistema "Linux", ya que creen que la contribución del proyecto GNU fue en última instancia mayor que la del núcleo Linux en estos sistemas relacionados. [7] [26]
En 2010, Stallman afirmó que el nombramiento no es simplemente una cuestión de dar la misma mención al Proyecto GNU, diciendo que debido a que el sistema es más ampliamente conocido como "Linux", la gente tiende a "pensar que es todo Linux, que todo fue iniciado por el Sr. Torvalds en 1991, y piensan que todo proviene de su visión de la vida, y ese es el problema realmente grave". [38]
Ariadne Conill , desarrolladora y directora de seguridad de Alpine Linux , ha declarado que, en su opinión, GNU/Linux es el nombre correcto para referirse a distribuciones de Linux que se basan en glibc y GNU coreutils , como Debian y Fedora Linux . Esto se puede contrastar con otras distribuciones de Linux que se basan en bionic ( Android ) y musl (Alpine). [39]
Los defensores de denominar a los sistemas operativos "Linux" afirman que "Linux" se utiliza con mucha más frecuencia que "GNU/Linux". [2] [3]
Eric S. Raymond escribe (en la entrada "Linux" del Archivo de jerga ):
Algunas personas objetan que el nombre "Linux" debería utilizarse para referirse únicamente al núcleo, no al sistema operativo en su totalidad. Esta afirmación es una representación de una disputa territorial subyacente; quienes insisten en el término GNU/Linux quieren que la FSF se lleve la mayor parte del crédito por Linux porque [Stallman] y sus amigos escribieron muchas de sus herramientas a nivel de usuario. Ni esta teoría ni el término GNU/Linux han obtenido una aceptación que supere a la de una minoría.
Cuando a Linus Torvalds le preguntaron en el documental Revolution OS si el nombre "GNU/Linux" estaba justificado, respondió:
Bueno, creo que está justificado, pero está justificado si realmente haces una distribución GNU de Linux... de la misma manera que creo que "Red Hat Linux" está bien, o "SUSE Linux" o "Debian Linux", porque si realmente haces tu propia distribución de Linux, puedes nombrar la cosa, pero llamar a Linux en general "GNU Linux" creo que es simplemente ridículo. [40] [41]
Un comentario anterior de Torvalds sobre la controversia del nombre fue:
Umm, esta discusión ha durado bastante, muchas gracias. En realidad no importa cómo llame la gente a Linux, siempre que se le dé crédito a quien lo merece (de ambas partes). Personalmente, seguiré llamándolo "Linux", ...
La gente de GNU intentó llamarlo GNU/Linux, y eso está bien. Ciertamente no es un nombre peor que "Linux Pro" o "Red Hat Linux" o "Slackware Linux"...
Lignux es sólo un nombre divertido. Creo que Linux/GNU o GNU/Linux es un poco más "profesional"... [42]
El nombre "GNU/Linux", particularmente cuando se utiliza la pronunciación preferida de Stallman, ha sido criticado por su torpeza y verbosidad percibidas, [43] [44] un factor que Torvalds ha citado como la caída de sistemas operativos como 386BSD . [45]
El Linux Journal especuló que la defensa por parte de Stallman del nombre combinado surge de la frustración de que "Linus obtuvo la gloria por lo que [Stallman] quería hacer". [46]
Otros han sugerido que, independientemente de los méritos, la persistencia de Stallman en lo que a veces parece una causa perdida hace que él y GNU queden mal. Por ejemplo, Larry McVoy (autor de BitKeeper , que alguna vez se utilizó para gestionar el desarrollo del núcleo de Linux) opinó que "reclamar el crédito sólo hace que uno parezca tonto y codicioso". [47]
Muchos usuarios y proveedores que prefieren el nombre "Linux", como Jim Gettys , uno de los desarrolladores originales del X Window System , señalan la inclusión de herramientas que no son GNU ni kernel, como KDE , LibreOffice y Firefox , en sistemas operativos de usuario final basados en el kernel Linux:
Hay mucha gente en este autobús; no oigo ningún clamor de apoyo que diga que GNU es más esencial que muchos de los otros componentes; no se puede quitar una rueda y terminar con un vehículo funcional, o un motor, o los asientos. Les recomiendo que se alegren de que tengamos un autobús. [48]
La característica común compartida del núcleo es lo que define la pertenencia de un sistema a la familia Linux; las diferentes aplicaciones OSS que pueden interactuar con el núcleo común son lo que diferencia las distribuciones Linux .
La idea de RMS (que he escuchado de primera mano) es que los sistemas Linux deberían considerarse sistemas GNU con Linux como núcleo.
El código total del proyecto GNU es mucho mayor que el tamaño del núcleo Linux. Por lo tanto, al comparar el esfuerzo total aportado, es ciertamente justificable llamar a todo el sistema
GNU/Linux
y no sólo
a Linux
.
la demanda Caldera v IBM
de SCO
es vaga y confusa en cuanto a si las acusaciones involucran al núcleo Linux, al sistema operativo GNU/Linux, a las distribuciones Linux, a las aplicaciones Linux o a lo que sea.
La SCO ha utilizado "Linux" para referirse a "todo el software libre" o "todo el software libre que constituye un sistema operativo tipo UNIX". Esta confusión, contra la que la Free Software Foundation advirtió en el pasado, se demuestra aquí que tiene las consecuencias engañosas que la Fundación ha predicho a menudo.
En particular, Stallman criticó el informe [
Ken Brown
/AdTI] por capitalizar la confusión común entre el núcleo Linux, que según Stallman "Linus realmente escribió", con el sistema operativo GNU completo y el software asociado, que puede usarse y generalmente se usa con el núcleo Linux.
No. Eso es todo. El nombre genial, claro. Trabajamos muy duro para crear un nombre que atrajera a la mayoría de la gente, y ciertamente valió la pena: miles de personas usan Linux sólo para poder decir "¿OS/2? Jaja. Yo tengo Linux. Qué nombre tan genial". 386BSD cometió el error de poner muchos números y abreviaturas raras en el nombre, y está ahuyentando a mucha gente sólo porque suena demasiado técnico.
Tal vez RMS esté frustrado porque Linus obtuvo la gloria por lo que RMS quería hacer.