Volver
2025/04/09
9. Considerando la Decisión de Red Hat de Retener el Código Fuente
En su publicación de blog del 21 de junio de 2023, “
Fomentando la evolución de CentOS Stream“, Red Hat anunció que limitará la liberación del código fuente de Red Hat Enterprise Linux (RHEL) solo a clientes y socios.
Desde entonces, el tema ha sido cubierto por muchos sitios de noticias, y los proveedores y comunidades que desarrollan clones de RHEL, como Oracle, AlmaLinux y Rocky Linux, han reaccionado fuertemente ante ello.
¿Qué significa el anuncio de Red Hat? ¿Por qué ha causado una reacción tan fuerte? Para entenderlo, necesitas conocer la historia de Linux, cómo se desarrollan las distribuciones y qué licencias están involucradas.
Aquí, echaremos un vistazo simple a este reciente alboroto, incluyendo el significado del anuncio de Red Hat, las reacciones de otras empresas y predicciones sobre tendencias futuras.
Comprendiendo el anuncio de Red Hat
Para entender este anuncio, necesitas comprender CentOS Stream. Echemos un vistazo a este anuncio mientras presentamos CentOS Stream.
Anuncios de Red Hat/IBM relacionados con CentOS
Para entender el panorama general, retrocedamos y veamos la situación de CentOS.
- 2004: Primera versión de CentOS
- 2014: Red Hat adquiere CentOS
- 2019: IBM adquiere Red Hat
- 2020: El proyecto CentOS será descontinuado
- 2021: En respuesta a la descontinuación del desarrollo de CentOS, la comunidad lanza AlmaLinux y Rocky Linux
- 2023: El código fuente de RHEL estará disponible solo para clientes y socios
CentOS tiene una historia sorprendentemente larga, que se remonta a la versión 2.0 en 2004. En ese momento, había múltiples distribuciones compatibles con RHEL, y no estaba tan establecido como lo está hoy. En particular, Scientific Linux se utilizó durante muchos años y existió hasta 2020. Oracle Linux fue lanzado en 2006.
En 2014, Red Hat adquirió CentOS, que hasta entonces había sido un proyecto independiente. Había pros y contras en esto, pero recuerdo que hubo muchas voces que lo acogieron con agrado, especialmente porque el lanzamiento de CentOS estaba algo retrasado en ese momento.
En 2019, IBM adquirió Red Hat. Como todos saben, CentOS sufrirá una gran transformación a partir de este punto.
El fin de CentOS y la transición a CentOS Stream
El inicio del gran cambio fue el anuncio del fin del proyecto CentOS en 2020. Como se mencionó anteriormente en “Parte 8: Cambiando de CentOS a Oracle Linux“, el proyecto CentOS ha terminado y ha sido reemplazado por CentOS Stream (el soporte para CentOS 7 terminará el 30 de junio de 2024, y CentOS 8 ya ha finalizado).
La razón por la que causó tanto revuelo fue que CentOS Stream se posicionó como el upstream de RHEL.
Hasta ahora, CentOS era popular como una distribución gratuita compatible con RHEL. Sin embargo, con la llegada de CentOS Stream, ya no se puede llamar una distribución compatible con RHEL. Además, CentOS Stream utiliza un método de lanzamiento continuo. Por lo tanto, siempre se requiere estar actualizado, lo que dificulta su uso en entornos de producción.
Esto es lo que se conoce como el “shock de CentOS.”
El anuncio de Red Hat
Red Hat ha publicado los siguientes dos blogs respecto a la divulgación del código fuente:
- 2023/06/21 Fomentando la evolución de CentOS Stream
- 2023/06/26 El compromiso de Red Hat con el código abierto: Una respuesta a los cambios en git.centos.org
Primero, presentaremos las partes importantes de “Fomentando la evolución de CentOS Stream“. Dado que varios artículos de noticias lo explican en detalle, lo hemos abreviado aquí para priorizar la claridad sobre la precisión de la traducción.
A medida que la comunidad de CentOS Stream crece y el mundo del software empresarial aborda nuevas dinámicas, queremos enfocar más nuestra atención en CentOS Stream como la columna vertebral de la innovación en Linux empresarial. Estamos continuando nuestra inversión y aumentando nuestro compromiso con CentOS Stream.
A medida que la comunidad de CentOS Stream crece y el software empresarial adopta nuevas dinámicas, continuaremos invirtiendo y fortaleciendo nuestros esfuerzos en CentOS Stream.
Red Hat ha indicado su compromiso con CentOS Stream, y en el párrafo anterior, afirma que algunas personas dan la bienvenida a la rápida liberación de versiones upstream.
CentOS Stream ha surgido como una opción dinámica y progresista. Algunas personas podrían acogerlo con agrado. Sin embargo, es importante recordar que también hay una demanda downstream por ello, con plena compatibilidad con RHEL. Especialmente para uso empresarial, la estabilidad suele ser más importante que el cambio y el pensamiento progresista.
CentOS Stream será ahora el único repositorio para las liberaciones públicas del código fuente relacionado con RHEL. Para los clientes y socios de Red Hat, el código fuente seguirá disponible a través del Portal del Cliente de Red Hat.
CentOS Stream será el único repositorio para las liberaciones públicas del código fuente relacionado con RHEL de ahora en adelante, y los clientes y socios de Red Hat seguirán teniendo acceso al código fuente a través del Portal del Cliente de Red Hat.
El texto original también tiene esto en negrita. Es una forma indirecta de decir las cosas, pero en términos simples, está diciendo que “el código fuente de CentOS Stream se hará público, pero el código fuente de RHEL no se hará público.”
A continuación está “El compromiso de Red Hat con el código abierto: Una respuesta a los cambios en git.centos.org“.
Este es un resumen de la primera mitad del artículo. El texto original es largo, por lo que se ha omitido.
Red Hat adopta un modelo de desarrollo de código abierto, y el desarrollo de nuevas características, correcciones de errores, retroportación de parches y diversas pruebas incurren en muchos costos. Además, es una tarea ardua gestionar siempre de 3 a 4 versiones principales y retroportar parches a código que tiene de 5 a 10 años de antigüedad. Además, es necesario reflejar proyectos upstream como Fedora y el proyecto del Núcleo Linux.
Siento que gran parte de la ira por nuestra reciente decisión sobre las fuentes downstream proviene de aquellos que no quieren pagar por el tiempo, esfuerzo y recursos invertidos en RHEL o de aquellos que quieren reempaquetarlo para su propio beneficio. Esta demanda por el código de RHEL es deshonesta.
Me enfurece la deshonestidad de las distribuciones compatibles con RHEL que simplemente reconstruyen el código fuente de RHEL y no contribuyen a él.
Aquí hay una denuncia del uso gratuito.
El software de código abierto se ha desarrollado por varias razones. La mayor razón de su desarrollo es probablemente los beneficios para los usuarios, como el hecho de que puede usarse de forma gratuita o a bajo costo, y que no hay dependencia de un proveedor porque el código fuente está disponible públicamente. Sin embargo, también hay beneficios para los desarrolladores. La calidad mejora a medida que más usuarios reportan errores, el desarrollo avanza a medida que aumenta el número de miembros del desarrollo, y el número de usuarios aumenta a medida que la documentación y la información técnica se hacen disponibles en múltiples idiomas.
En los últimos años, el uso gratuito se ha convertido en un problema en nubes gigantes como Amazon Web Services. Redis, Elasticsearch, MongoDB y otros servicios han cambiado sus licencias en oposición al uso gratuito en nubes gigantes.
También proporcionamos suscripciones de Desarrollador de Red Hat sin costo y Red Hat Enterprise Linux (RHEL) para Infraestructura de Código Abierto. La suscripción de desarrollador proporciona RHEL sin costo a los desarrolladores y permite el uso hasta 16 sistemas, nuevamente, sin costo. Esto puede ser utilizado por individuos para su propio trabajo y por clientes de RHEL para el trabajo de sus empleados.
Ofrecemos Suscripciones de Desarrollador de Red Hat y Red Hat Enterprise Linux para Infraestructura de Código Abierto (servicios para la comunidad de desarrollo de código abierto) sin costo.
Aunque los términos de uso lo hacen bastante limitado, RHEL ofrece un programa gratuito para algunos usuarios.
¿Por qué recibió una reacción tan fuerte?
La causa de este alboroto es que “CentOS, que puede usarse gratis como compatible con RHEL, ya no existirá” y “el código fuente relacionado con RHEL, aparte de CentOS Stream, no se hará público”. Profundicemos un poco más en esto. Explicaremos cómo crear una distribución compatible con RHEL y el GPL.
Cómo crear una distribución compatible con RHEL
El diagrama a continuación muestra cómo crear una distribución compatible con RHEL. Las distribuciones compatibles con RHEL se desarrollaron basadas en el código fuente (SRPM) de RHEL o CentOS. Muchas distribuciones se basaron en CentOS, que está libre de restricciones de derechos de autor y es fácil de modificar.
El problema es cómo crearlo en el futuro. El código fuente de RHEL está limitado a usuarios específicos como clientes y socios. Solo CentOS Stream se ha convertido en un repositorio de código fuente accesible para todos. Sin embargo, CentOS Stream es el upstream de RHEL. Reconstruir el código fuente de CentOS Stream no lo hará compatible con RHEL.
GPL y el Acuerdo Empresarial de Red Hat
El núcleo Linux es un programa licenciado bajo GPL v2. Algunas personas podrían pensar que es extraño no liberar el código fuente porque Linux es GPL. Aquí hay una breve explicación del GPL y el Acuerdo Empresarial de Red Hat, que son importantes para entender la licencia de RHEL.
El GPL es una licencia muy poderosa con las siguientes características: Las cláusulas del GPL han sido traducidas al japonés por voluntarios, pero algunas partes son difíciles de entender y están sujetas a interpretaciones diferentes, así que piensa en ello aproximadamente como sigue.
- Uso comercial permitido
- El autor no asume ninguna responsabilidad
- Incluir avisos de derechos de autor y sin garantía.
- El código fuente debe hacerse público al distribuirse
- Si creas software que usa todo o parte de un programa licenciado bajo GPL, también debes distribuirlo bajo GPL.
La parte importante a notar es la que dice “Hay una obligación de hacer público el código fuente al momento de la distribución”. La interpretación general de esto es que “cualquiera que tenga el código objeto (código binario) tiene derecho a obtener el código fuente.” Sin embargo, también se puede decir que “cualquiera que no tenga el código objeto no tiene derecho a obtener el código fuente.”
Para dar un ejemplo específico, digamos que una empresa desarrolla un programa que usa software GPL modificado solo dentro de la empresa. Aunque este software es GPL, no está abierto al público, por lo que no hay necesidad de liberar el código fuente, incluidas las partes modificadas, al público.
Aunque el GPL tiene características fuertes respecto a la divulgación del código fuente, tiene las características mencionadas arriba. Por lo tanto, Red Hat impone ciertas restricciones a sus clientes al firmar un Acuerdo Empresarial de Red Hat con ellos. Aunque no entraremos en los contenidos del Acuerdo Empresarial de Red Hat, contiene muchas cláusulas restrictivas.
Reacciones de proveedores y proyectos
En respuesta al anuncio de Red Hat, los proveedores y proyectos que desarrollan distribuciones compatibles con RHEL han publicado varias declaraciones. Aquí hay algunas de ellas.
AlmaLinux
AlmaLinux es un proyecto lanzado por CloudLinux, una empresa con un historial como sistema operativo Linux para alojamiento. Fue el primer lanzamiento del proyecto después de CentOS. Se han publicado tres publicaciones de blog en rápida sucesión.
- Impacto de los cambios de RHEL en AlmaLinux
- Nuestros valores son nuestros valores
- El futuro de AlmaLinux es brillante
El resumen es el siguiente:
- Los RPM de código fuente compatibles con RHEL son más difíciles de obtener, pero las actualizaciones de seguridad están disponibles más rápidamente.
- Mantener la postura downstream de RHEL, pero abandonar la compatibilidad 1:1 con RHEL, y apuntar a la compatibilidad binaria
- Contribuir a todo el ecosistema de Linux Empresarial, incluyendo la comunidad de código abierto y plataformas upstream como Fedora y CentOS Stream.
El segundo blog explica cómo mantenerse al día con las actualizaciones de seguridad usando OpenSSL como ejemplo. Cybertrust (MIRACLE LINUX), que desarrolla distribuciones compatibles con RHEL en Japón, ha anunciado una asociación con CloudLinux, el principal patrocinador de AlmaLinux.
Rocky Linux
Rocky Linux es un proyecto fundado por Gregory Kurtzer, el fundador del proyecto CentOS. El soporte es proporcionado por CiQ, una empresa fundada por Gregory Kurtzer. Este proyecto también publica tres blogs.
- Rocky Linux expresa confianza a pesar del anuncio de Red Hat
- Manteniendo el código abierto abierto
- Declaración respecto a OpenELA
El resumen es el siguiente:
- Compatibilidad del 100% con RHEL hasta el nivel de errores
- Cumplir con nuestra misión de proporcionar una distribución compatible con RHEL estable y duradera
- Contribuir a todo el ecosistema de Linux Empresarial, incluyendo la comunidad de código abierto y plataformas upstream como Fedora y CentOS Stream.
- Aunque los Términos de Servicio y los Acuerdos de Licencia de Usuario Final de Red Hat restringen los derechos otorgados por el GPL, el sitio proporciona formas legales de obtener el código fuente (usando la imagen de contenedor Red Hat Universal Base Image y usando instancias de pago por uso en nubes públicas).
- Lanzó OpenELA, un proyecto para promover Linux Empresarial, con Oracle y SUSE.
Oracle
Oracle, el desarrollador de Oracle Linux, ha publicado las siguientes noticias:
Parte del contenido es un poco sarcástico en comparación con AlmaLinux y Rocky Linux, pero el resumen es el siguiente:
- Ha estado involucrado en la comunidad de Linux durante 25 años, con el objetivo de hacerla el mejor sistema operativo de servidor gratuito para todos.
- Oracle lanzó Oracle Linux en 2006, eligiendo la compatibilidad con RHEL para evitar dividir a la comunidad de Linux.
- Hemos adherido al GPL y hemos hecho nuestros binarios y código fuente abiertos. A diferencia de IBM (Red Hat), no interferimos con los derechos de los usuarios a través de contratos de suscripción.
- ¿Es la intención de no divulgar el código fuente esta vez eliminar a los competidores?
- Continuar manteniendo la compatibilidad con RHEL donde sea posible
- Oracle continuará contribuyendo a la comunidad de Linux y liberará binarios y código fuente. Las distribuciones downstream son bienvenidas.
SUSE
Finalmente, está SUSE. Aunque era una distribución basada en RPM, no era compatible con RHEL, pero ha anunciado que ingresará al mercado de distribuciones compatibles con RHEL.
Conclusión
Red Hat ha sido indudablemente el líder en el mercado de Linux empresarial. Además, las contribuciones de la empresa a la comunidad de código abierto, no solo a Linux, son incalculables. Es por eso que este anuncio fue una sorpresa.
Aunque solo han pasado tres meses desde el anuncio de Red Hat, otras empresas han estado respondiendo rápidamente. No solo todos los principales proveedores de distribuciones compatibles con RHEL han anunciado sus contramedidas, sino que incluso SUSE, que tiene una alta cuota de mercado en Europa, ha anunciado su participación. Por lo tanto, es poco probable que las distribuciones compatibles con RHEL desaparezcan, o que los parches de seguridad se retrasen significativamente.
Este caso me recuerda la “Demanda de SCO contra Linux” que duró de 2003 a 2010. Comenzando con SCO, el propietario del copyright de Linux, demandando a IBM, continuó demandando a Novell y Red Hat, e incluso insinuó demandar a los usuarios generales de Linux. Además de ser fuertemente criticado en todo el mundo, SCO no pudo ganar un solo caso y terminó pagando una enorme cantidad de honorarios legales.
Esta vez, no hay una malicia tipo troll de patentes como la de SCO. Sin embargo, es poco probable que algo que tenga muchos oponentes en el mundo del código abierto tenga éxito. Sin embargo, también hay una necesidad de CentOS Stream como upstream, por lo que podría intentarse una coexistencia con el campo downstream compatible con RHEL.