Sábado, Octubre 24, 2020

AppStream, la solución de Red Hat para atraer a los desarrolladores

rhel8

Hace una semana que se lanzó Red Hat Enterprise Linux 8 (RHEL 8) y, como suele suceder con las distribuciones corporativas de alto nivel, no se trata de un lanzamiento cualquiera. Para que te hagas una idea, RHEL 7 salió hace casi cinco años, que es lo que lleva en desarrollo la nueva versión, y pasarán otros cinco antes de que entre en modo de soporte extendido por otros tres años más. Es decir, RHEL 8 aguantará en activo hasta 2029 o 2032, dependiendo el plan de soporte contratado.

Al tremendo soporte del que goza la distribución de Red Hat hay que sumar las diferentes actualizaciones que van saliendo a lo largo del ciclo de vida de cada versión (p. ej. RHEL 8.1, 8.2, etc), las cuales permiten mantener actualizado el sistema base y todos los paquetes que lo complementan, excluyendo el software adicional, como aplicaciones de escritorio, lenguajes de programación y demás, que va aparte. Es en este punto en el que destaca sobremanera la llegada de RHEL 8, y es que de ser una opción solo apta para empresas, extiende su atractivo a desarrolladores y, dicho susurrando, a prácticamente cualquier tipo de usuario profesional que desee instalarla.

Como se sabrá, desde 2016 es posible descargar, instalar y utilizar la distribución de manera totalmente gratuita, con una condición: que se use como plataforma de desarrollo, previo registro. Pero lo cierto es que una vez instalada y funcionando, nadie te va a preguntar qué haces con ella, por lo que en realidad puedes utilizarla con otros fines. Eso sí, Red Hat Enterprise Linux es y seguirá siendo un sistema empresarial de pago mediante una suscripción que incluye actualizaciones y soporte técnico, y esto último no lo encontrarán quienes la usen gratis.

Ahora bien, ¿qué tiene de especial RHEL 8 en comparación con versiones anteriores o con otras distribuciones Linux?

AppStream

Como se ha comentado, cada nueva versión de las grandes distros Linux dirigidas a empresas es un mundo en sí misma. Más allá de las actualizaciones implementan novedades importantes y RHEL 8 no es un excepción. En el anuncio de lanzamiento que publicamos apenas rascamos la superficie de todo lo que trae, pero AppStream era de obligada mención.

AppStream (Application Stream) es en esencia un nuevo repositorio que se nutre de la tecnología modular desarrollada por la compañía y que ya pasó su periodo de pruebas en Fedora, la distribución comunitaria de Red Hat; viene a reemplazar a Red Hat Software Collections (RHSCL) y ofrece ventajas relevantes en comparación a este método.

RHSCL se introdujo para facilitar la instalación de versiones recientes de software de desarrollo (lenguajes de programación, frameworks y otras herramientas) mediante colecciones y sin alterar la base del sistema, pero presentaba diversos problemas: las aplicaciones se instalaban en ubicaciones no estándar, los nombres de los paquetes debían ser específicos y por ende eran más complicados de recordar, encontrar e instalar, y cada colección de tenía que ser habilitada para cada proceso del que hiciera uso.

AppStream resuelve todo eso de un plumazo, según indica su propio nombre. Cada Application Stream o flujo de aplicaciones se compone de un módulo en el que se incluyen todos los paquetes y dependencias del mismo, incluyendo todas las versiones soportadas y sin el riesgo que supone bloquear paquetes para prevenir su actualización y la pérdida de compatibilidad, dado que reciben actualizaciones durante todo su ciclo de vida. Es decir, una nueva versión no reemplaza a la anterior hasta que esta no se haya quedado sin soporte. Y todo está al alcance del usuario activando un solo repositorio. Además, AppStream permite instalar módulos por versión del software o «alias» (p. ej. «stable», «latest», etc) y perfil (p. ej. «minimal», «default», etc).

¿Te suena a lío? Lo es, hasta que que coges el tranquillo. Pongamos un ejemplo. Digamos que vas a instalar un lenguaje de programación concreto, una base de datos o una aplicación de escritorio. Los encontrarás en sus respectivos módulos, que puedes listar con el siguiente comando (AppStream está activado por defecto en RHEL 8):

yum module list

Con otro comando te informarás del contenido de cada módulo (para este ejemplo utilizaremos MySQL):

yum module info mysql

Y con un último comando procederás a su instalación:

yum module install mysql

Para los fans de la rapidez incluso hay abreviaturas:

yum install @mysql

Sin embargo, con los últimos comandos instalarás la versión por defecto, tal y como harías con DNF (en RHEL 8 DNF sustitye a YUM como gestor de paquetes predeterminado excepto para AppStream). La gracia de AppStream es que el stream se refiere a la versión, por lo que con un comando algo más complejo podrás afinar la instalación de acuerdo a tus intereses:

yum module install mysql:7.5

Y, de hecho, podrás afinas más si cabe con el uso de los perfiles:

yum module install mysql:7.5 /minimal

La pregunta que te puedes estar haciendo es, ¿cómo es posible que un mismo repositorio tenga varias versiones de los mismos paquetes? La teoría que transmiten desde Red Hat es que dentro de un único repositorio físico, se crean innumerables repositorios virtuales a los que han denominado como Application Stream o AppStream.

El avance de AppStream destaca principalmente por la facilidad que aporta a la hora de encontrar módulos y proporcionar información detallada de los paquetes, versiones y perfiles disponibles, lo que a medio plazo puede beneficiar bastante a RHEL como plataforma de desarrollo. A medio plazo, porque AppStream tampoco es perfecto. Para empezar, RHEL 8 acaba de integrarlo y por el momento no ofrece una gran variedad de módulos y versiones, aunque la lista tampoco es pequeña y cuenta con las últimas versiones estables de casi todo.

Asimismo, AppStream tiene una desventaja frente a Red Hat Software Collections, y es que no permite instalar dos versiones del mismo módulo en el mismo espacio de usuario. No obstante, la compañía le resta importancia y recomienda la virtualización o los contenedores para suplir este tipo de requisitos.

En todo caso, AppStream es un proyecto muy prometedor para el desarrollador, ya que mejora ostensiblemente el que era uno de los puntos flacos de RHEL en esta materia. Cuando esté a rebosar va a dar gusto echar mano de los módulos para lo que se tercie (hay incluso módulos para aplicaciones de escritorio como GIMP o Inkscape, aunque les falta actualizarse) y salvo necesidades específicas, el usuario lo tendrá todo en dos únicos repositorios.

Por si acaso, ahí van unas respuestas a las preguntas que pueden estar rondando tu cabeza:

  • Sí, AppStream es tan interesante como parece y pone a RHEL a la vanguardia como solución Linux para desarrolladores, solo hay que darle tiempo que madure.
  • No, AppStream no tiene nada que ver con Flatpak o Snap, aunque puedan cubrir necesidades similares: la integración con el espacio de usuario y con las políticas de seguridad del sistema no son iguales, pues el resultado con AppStream es idéntico al de instalar algo desde un repositorio principal, que de hecho lo es.
  • Sí, distribuciones como Ubuntu o SUSE tienen alternativas muy válidas, pero el concepto de AppStream es ciertamente innovador y mucho más limpio que estar lidiando con multitud de repositorios.
  • No, AppStream no está hecho para el usuario doméstico, ni RHEL se ha convertido en una alternativa recomendable para estos menesteres. Si usas tu PC para desarrollar, pero también para tus cosas, quédate en Ubuntu, Linux Mint, openSUSE o Fedora; RHEL sigue siendo solo para profesionales.
  • Sí, CentOS 8 se ceñirá a las novedades de RHEL 8, AppStream incluido, y para instalarla no necesitarás abrir una cuenta de desarrollador en Red Hat. Las ventajas de RHEL con respecto a su clon son el soporte técnico, mayor celeridad en las actualizaciones e integración más directa con las soluciones de la compañía.
  • No, no te lo hemos contado todo. Para saber más sobre AppStream visita la documentación oficial.

 

Fuente: muylinux

¿Quién está en línea?

Hay 183 invitados y ningún miembro en línea

Contador de Visitas

11014834
Hoy Hoy 241
Ayer Ayer 2929
Esta semana Esta semana 16360
Este mes Este mes 70113
Total de Visitas Total de Visitas 11014834

Día con más
visitantes

10-20-2020 : 3356

Gracias por su visita