Dependencias y repositorios en Debian

Publicado por Diego Córdoba en

Hoy les hablaré sobre repositorios y actualizaciones.

En casi todas las distribuciones de GNU/Linux existe lo que se llama «el gestor de paquetes» y «el gestor de actualizaciones y dependencias».

Antes que nada, unos conceptos.

Paquete

Un paquete de software en sistemas Linux es una aplicación, lo que sería el equivalente a un «instalador» dentro de un mundo privativo conocido.
Este paquete se instala mediante herramientas propias de la distro, puesto que el paquete tendrá un formato determinado para una distro determinada.
Así, por ejemplo, tenemos paquetes .deb para distribuciones Debian y derivadas, o paquetes .rpm para RedHat y similares, etc.

Gestor de paquetes

El gestor de paquetes es una aplicación de la distro que nos permite instalar este paquete en nuestro sistema GNU/Linux.
Cabe aclarar que no existe el concepto de «registro de Linux» ni nada por el estilo instalar una aplicación es simplemente desempaquetar un paquete, valga la redundancia, y copiar sus archivos contenidos en los directorios en los que finalmente terminarán ejecutándose.
Gestores de paquetes pueden ser dpkg para paquetes .deb, o rpm para paquetes .rpm.

Dependencias

Una dependencia de software es un paquete o paquetes necesarios para que otro paquete pueda instalarse y ejecutarse. Es decir, para poder instalar una aplicación previamente necesitamos todas las aplicaciones y bibliotecas que ésta aplicación necesita para ejecutarse.
A estas aplicaciones extra se las llama dependencias.

Gestor de dependencias

Un gestor de dependencias es un software que verifica todas las dependencias de una aplicación y las instala automáticamente para que esta aplicación pueda instalarse y utilizarse.
Los gestores de dependencia más conocidos son aptitude o apt-get en Debian, y yum en RedHat y derivados.

Repositorio

Un repositorio es un servidor de archivos de una distribución determinada. Los gestores de dependencias y actualizaciones se conectan a estos servidores cuando necesitan descargar e instalar una aplicación y sus dependencias.
Los repositorios pueden ser oficiales o replicas, y tienen sus url’s a las que deberemos conectarnos configurando nuestro gestor de actualizaciones y dependencias.

Debian y el sources.list

En Debian GNU/Linux, el archivo /etc/apt/sources.list contiene los repositorios configurados a los que se conectará el gestor de dependencias para descargar paquetes.
Aquí podremos configurar un repositorio en el mismo país de residencia, o un repositorio extranjero, dependiendo principalmente de las velocidades de transferencia.
Cada entrada en el archivo sources.list contendrá:

  • Una uri del repositorio, a la que se conectará el gestor de dependencias.
  • Una release de la distribución, que podrá ser, por ejemplo oldstable (actualmente Debian 6 «squeeze»), stable (actualmente Debian 8 «Jessie»), testing (el próximo stable, hoy «Stretch»), unstable o «Sid», y experimental, a nivel de desarrollo de la release.
  • Las fuentes del repositorio, por ejemplo, main como rama principal, contrib para paquetes contribuidos por usuarios, non-free con paquetes no totalmente libres, security y updates para actualizaciones y parches de seguridad.
  • La arquitectura de la distribución, si es de 32b o 64b, etc.
  • Opcionalmente se pueden incluir también los repositorios de códigos fuente, o «deb-src», recordemos que estamos hablando de Software Libre y Open source… los fuentes de las aplicaciones generalmente esan disponibles.

Debian Sources List Generator

Un interesante modo de crear nuestro propio archivo sources.list a medida, es hacerlo a traves de sitios como el Debian Sources List Generator, que podremos encontrar en el siguiente link:

http://debgen.simplylinux.ch/

Su interfaz es bastante intuitiva:

Y como resultado obtendremos la línea de repo para nuestro sources.list:

Espero que les sirva!


Diego Córdoba

- Ingeniero en Informática - Mg. Teleinformática - Tesis pendiente - Docente universitario - Investigador