En 2021, hay más razones por las que la gente ama Linux que nunca. En esta serie, compartiré 21 razones diferentes para usar Linux. Hoy hablaré sobre lo que hace que el empaquetado para Linux sea ideal para los programadores.
A los programadores les encanta programar. Probablemente parezca una declaración obvia, pero es importante comprender que desarrollar software implica mucho más que solo escribir código. Incluye compilación, documentación, administración de código fuente, scripts de instalación, valores predeterminados de configuración, archivos de soporte, formato de entrega y más. Pasar de una pantalla en blanco a un instalador de software entregable requiere mucho más que solo programación, pero la mayoría de los programadores prefieren programar que empaquetar.
¿Qué es el embalaje?
Cuando los alimentos se envían a las tiendas para comprarlos, se envasan. Cuando compre directamente de un agricultor o de una tienda ecológica a granel o en contenedores, el empaque es cualquier contenedor que haya traído con usted. Al comprar en una tienda de comestibles, el empaque puede ser una caja de cartón, una bolsa de plástico, una lata, etc.
Más recursos de Linux
- Hoja de trucos de los comandos de Linux
- Hoja de trucos de comandos avanzados de Linux
- Curso en línea gratuito:Descripción general técnica de RHEL
- Hoja de trucos de red de Linux
- Hoja de trucos de SELinux
- Hoja de trucos de los comandos comunes de Linux
- ¿Qué son los contenedores de Linux?
- Nuestros últimos artículos sobre Linux
Cuando el software se pone a disposición de los usuarios de computadoras en general, también debe estar empaquetado. Al igual que la comida, hay varias formas en que se puede empaquetar el software. El software de código abierto se puede dejar sin empaquetar porque los usuarios, al tener acceso al código sin procesar, pueden compilarlo y empaquetarlo ellos mismos. Sin embargo, los paquetes tienen ventajas, por lo que las aplicaciones suelen entregarse en algún formato específico para la plataforma del usuario. Y ahí es donde empiezan los problemas, porque no existe un único formato para los paquetes de software.
Para el usuario, los paquetes facilitan la instalación del software porque todo el trabajo lo realiza el instalador del sistema. El software se extrae de su paquete y se distribuye a los lugares apropiados dentro del sistema operativo. Hay pocas posibilidades de que algo salga mal.
Sin embargo, para el desarrollador de software, el empaquetado significa que tiene que aprender a crear un paquete, y no solo un paquete, sino un paquete único para cada sistema operativo en el que desee instalar su software. Para complicar las cosas, existen múltiples formatos de empaquetado y opciones para cada sistema operativo y, a veces, incluso para el lenguaje de programación que se utiliza.
Embalaje en Linux
Las opciones de empaquetado para Linux tradicionalmente han parecido bastante abrumadoras. Las distribuciones de Linux derivadas de Fedora, como Red Hat y CentOS, tienen por defecto .rpm
paquetes Debian y Ubuntu (y similares) predeterminados en .deb
paquetes Otras distribuciones pueden utilizar uno u otro, o ninguno, optando por un formato personalizado. Cuando se les pregunta, muchos usuarios de Linux dicen que, idealmente, un programador no empaquetará su software para Linux en absoluto, sino que confiará en los mantenedores de paquetes de cada distribución para crear el paquete. Todo el software instalado en cualquier sistema Linux debe provenir del repositorio oficial de esa distribución. Sin embargo, sigue sin estar claro cómo empaquetar e incluir su software de manera confiable en una distribución, y mucho menos en todas las distribuciones.
Flatpak para Linux
El sistema de empaquetado Flatpak se introdujo para unificar y descentralizar Linux como objetivo de entrega para los desarrolladores. Con Flatpak, ya sea un desarrollador o cualquier persona (un miembro de una comunidad de Linux, un desarrollador diferente, un miembro del equipo de Flatpak o cualquier otra persona) puede empaquetar software libremente. Luego, pueden enviar el paquete a Flathub o elegir hospedar el paquete y ofrecerlo básicamente a cualquier distribución de Linux. El sistema Flatpak está disponible para todas las distribuciones de Linux, por lo que apuntar a una es lo mismo que apuntar a todas.
Cómo funciona la tecnología Flatpak
El secreto del atractivo universal de Flatpak es una base estándar. El sistema Flatpak permite a los desarrolladores hacer referencia a un conjunto común de módulos del kit de desarrollo de software (SDK). Estos son empaquetados y administrados por los mantenedores del sistema Flatpak. Los SDK se incorporan según sea necesario cada vez que instala un Flatpak, lo que garantiza la compatibilidad con su sistema. Cualquier SDK dado solo se requiere una vez porque las bibliotecas que contiene se pueden compartir en cualquier Flatpak que lo solicite.
Si un desarrollador requiere una biblioteca que aún no está incluida en un SDK existente, el desarrollador puede agregar esa biblioteca en Flatpak.
los resultados hablan por si mismos. Los usuarios pueden instalar cientos de paquetes en cualquier distribución de Linux desde un repositorio central, llamado Flathub.
Cómo usan los desarrolladores Flatpaks
Flatpaks están diseñados para ser reproducibles, por lo que el proceso de creación se integra fácilmente en un flujo de trabajo de CI/CD. Un Flatpak se define en un archivo de manifiesto YAML o JSON. Puedes crear tu primer Flatpak siguiendo mi artículo introductorio y puedes leer la documentación completa en docs.flatpak.org.
Linux lo hace fácil
Crear software en Linux es fácil y empaquetarlo para Linux es simple y automatizable. Si es programador, Linux le permite olvidarse fácilmente del empaquetado al enfocarse en un sistema e integrarlo en su proceso de compilación.