Paquetes binarios o fuentes: ¿qué debes utilizar?

Paquetes binarios o fuentes: ¿qué debes utilizar?.

Independientemente del gestor de paquetes que utilices, hay dos formas principales de instalar programas en Linux. O bien utilizas un paquete preconstruido, o bien compilas el programa tú mismo. Hoy en día, la primera suele ganar por defecto, pero hay ocasiones en las que puedes considerar la posibilidad de compilar desde el código fuente.

Anuncio

¿Qué son los paquetes binarios?

La instalación de programas en Linux suele ser muy diferente a la forma tradicional de instalar software en Windows. En lugar de descargar un instalador del sitio web de un proveedor, los archivos proceden de un repositorio de programas que suele estar adaptado a tu distribución de Linux. Accedes a este repositorio mediante un gestor de paquetes de Linux o una tienda de aplicaciones de Linux.

Los ficheros que componen los programas de estos repositorios están en formato de archivo. Esto consolida todo en un solo archivo para facilitar el acceso y la distribución. Debian, por ejemplo, utiliza el formato DEB para almacenar y distribuir programas. Estos paquetes se llaman paquetes binarios.

Necesitas un programa especial para extraer estos archivos e instalarlos en tu ordenador, normalmente el gestor de paquetes o la tienda de aplicaciones. Estas herramientas también realizan otras funciones útiles, como el seguimiento de los archivos que has instalado y la gestión de las actualizaciones de software.

¿De dónde vienen los paquetes?

Todo el software consiste en líneas de texto conocidas como código fuente, escritas en lenguajes de programación específicos, como C o C++. Por lo general, no puedes incluir este código fuente en un archivo y llamarlo paquete. Estas líneas deben traducirse a un lenguaje que tu ordenador pueda entender y ejecutar.

Este proceso se llama compilación, y el resultado final es la creación de archivos binarios que tu ordenador puede ejecutar. La diferencia entre los paquetes y el software es que los binarios del software se almacenan juntos en un paquete, junto con otros elementos como los archivos de configuración

Puede Interesarte:  Cómo optimizar Windows 10 para los juegos y el rendimiento

.

¿Qué es la instalación «De origen»?

Instalar un programa «desde el origen» significa instalar un programa sin utilizar un gestor de paquetes. En cambio, compilas el código fuente y copias los binarios en tu ordenador.

La mayoría de las veces puedes descargar el código fuente de un proyecto desde servicios de alojamiento como GitHub, GitLab o Bitbucket. Los programas más grandes pueden incluso alojar el código fuente en un sitio web personal. El código suele estar comprimido en un formato de archivo (también llamado paquete fuente).

Un conjunto especial de herramientas puede automatizar el proceso de construcción. En las estaciones de trabajo Linux, esto suele adoptar la forma de un programa de línea de comandos llamado hacer. El código fuente escrito en diferentes idiomas necesita compiladores y comandos específicos para convertirlos en binarios. El programa make automatiza este proceso.

Para que esta automatización funcione, los programas proporcionan a la marca un makefile que le dice lo que tiene que hacer y compilar. Hoy en día suele generarse automáticamente mediante un software especial, como CMake. Aquí es donde entras tú. A partir de ahí puedes especificar exactamente qué características quieres compilar en tu software.

Ejemplo de construcción «desde el origen».

Por ejemplo, el siguiente comando genera un archivo de configuración para Calligra Office Suite utilizando CMake. El archivo creado indica al programa make que compile sólo el componente Calligra Writer.

cmake -DPRODUCTSET=WORDS -DCMAKE_INSTALL_PREFIX=$HOME/kde/inst5 $HOME/kde/src/calligra

Una vez hecho esto, simplemente ejecuta la herramienta make para compilar y copiar los resultados en tu ordenador. Esto se hace de la siguiente manera:

make
make install

Aunque éste es el esquema general para compilar programas, hay muchas otras formas de instalar paquetes fuente. Gentoo Linux, por ejemplo, tiene una forma integrada de manejar esto, que hace el proceso mucho más rápido y fácil. Pero la construcción de paquetes binarios requiere algunos pasos más que los comandos anteriores.

Puede Interesarte:  La diferencia entre módem y router explicada de forma sencilla

Ventajas de utilizar paquetes binarios

Si utilizas Linux, es probable que alguien haya precompilado el software que has instalado. Esto se ha convertido en algo mucho más común que el uso de paquetes de origen. ¿Pero por qué?

Las versiones binarias son más fáciles de gestionar

Los paquetes binarios contienen algo más que archivos de instalación compilados. También almacenan información que permite a tu gestor de paquetes hacer un seguimiento de todos tus programas. Por ejemplo, los archivos DEB (el formato de los paquetes de Debian y sus derivados) también contienen información importante, como qué otro software necesita el programa para funcionar y su versión actual.

Esto hace que los paquetes sean mucho más fáciles de instalar, porque no tienes que preocuparte de qué otros archivos necesitas para ejecutar un programa con éxito. Tu gestor de paquetes puede leer esta información del propio paquete y descargar automáticamente las dependencias necesarias.

Al instalar programas desde el código fuente, a menos que compiles el código en un paquete binario propio, se encargará de gestionar este software. Tendrás que tener en cuenta los demás programas que necesitas para ejecutarlo e instalarlos tú mismo.

Las versiones binarias han mejorado la estabilidad

Las personas que gestionan los repositorios de tu gestor de paquetes

tienden a probar los binarios en busca de problemas y hacen lo posible por arreglar los que aparecen. Esto puede dar lugar a programas más estables, que alguien que instaló desde el código fuente puede echar de menos.

Además, los paquetes suelen tener que seguir una serie de reglas estrictas para garantizar que se ejecuten en tu sistema. Debian y Ubuntu tienen un manual de políticas, por ejemplo, al igual que muchas otras distribuciones de Linux.

Algunos programas también dependen de diferentes versiones de la misma dependencia de software para funcionar. Los repositorios de paquetes hacen todo lo posible para resolver estos conflictos, así que no tienes que preocuparte por ellos.

Ventajas de la compilación de paquetes fuente

Instalar programas desde el código fuente no es algo que deba hacer todo el mundo, ya que generalmente es más fácil mantener tu PC si te limitas a los paquetes binarios. Sin embargo, todavía hay algunas ventajas de utilizar esta forma un poco más compleja de instalar programas.

Puede Interesarte:  ¿Qué es un cortafuegos y cómo lo activo?

El código fuente ofrece el software más reciente

Una de las desventajas de hacer que los programas sean más fiables es que se necesita tiempo para mejorarlos y arreglarlos. Como resultado, puede llevarte a utilizar versiones antiguas del software. Para los que quieren lo último y lo mejor, puede que incluso prefieran un poco de inestabilidad a cambio.

Aunque hay sistemas operativos Linux que satisfacen esta necesidad sin compilar programas, tienen algunas desventajas. Por ejemplo, el software que no publica con frecuencia versiones de paquetes definidas es más difícil de mantener actualizado en un repositorio que instalando desde el código fuente.

Esto se debe a que los paquetes binarios suelen crearse a partir de las versiones oficiales de los programas. Por ello, los cambios entre estas versiones no suelen tenerse en cuenta. Al compilar tu propio software desde el código fuente, puedes beneficiarte de estos cambios inmediatamente.

También es posible que tu sistema operativo Linux no tenga el software que quieres preconfigurado. Si este es el caso, instalarlo desde el código fuente es tu única opción.

Puedes elegir y escoger

Otra ventaja de utilizar paquetes fuente es que tienes más control sobre los programas que instalas. Al instalar desde un repositorio binario, estás limitado en cuanto a la forma de personalizar tus paquetes.

Por ejemplo, mira FFmpeg, el convertidor de audio y vídeo basado en la línea de comandos. Por defecto, viene con un montón de funciones, algunas de las cuales puede que ni siquiera toques. Por ejemplo, el soporte de audio JACK está disponible en FFmpeg, aunque normalmente sólo se utiliza en entornos de producción.

Compilar FFmpeg te permite eliminar lo que no quieres, dejándolo más ligero y adaptado a tus necesidades. Y lo mismo ocurre con otros programas de pesos pesados.

Cuando los recursos son escasos, eliminar funciones puede ser una buena forma de aligerar la carga. No es de extrañar que Chrome OS, que se encuentra en muchos ordenadores de gama baja, esté basado en Gentoo Linux. Gentoo, al estar basado en el código fuente, compila gran parte de su software, lo que puede hacer que estos sistemas sean mucho más ligeros.

¿Por qué no instalar con ambos?

Aunque probablemente no quieras compilar paquetes a diario, es útil tenerlo en cuenta. Dicho esto, con los nuevos formatos de paquetes universales disponibles en sitios como Snap Store y Flathub

es menos probable que necesites construir desde el código fuente para obtener la última versión del software.

Deja un comentario

UnComoHacer
Nosbi
Tarabu
Tecnomaniacos
UnMeroTecnologico
VidaParalela
Nekuromansa
Superfantasy