Configurar los orígenes de Apt

Apt descarga paquetes de uno o más repositorios de software (orígenes) y los instala en la computadora.

Generalmente un repositorios es un servidor en red, como el repositirio oficial DebianStable. También admite directorios locales or CDs/DVDs.

Los repositorios (orígenes de paquetes) específicos configurados en una máquina afectan a:

Fuentes de paquetes de uso común

Editar los orígenes de software

Precauciones

Poder cambiar los repositorios que usa el sistema gestor de paquetes es una funcionalidad poderosa pero ests poder viene con alguna responsabilidad. Se advierte a los usuarios que es posible romper el sistema (de un mode que sea dificil o imposible arreglarlo límpiamente) al añadir repositorios de terceros o repositorios para una versión de Debian diferente a la actual - estos repositorios originan un riesgo de inconsistencias entre versiones de paquetes, creando lo que a veces se llama un sistema "Franken-Debian". El concepto mismo de la distribución estable de Debian es que los desarrolladores de Debian han seleccionado un conjunto de software y sus versiones que funcionan bien juntas. Aunque se parchea este software para corregir problemas de seguridad, con frecuencia el software no está en la última versión. Saber cómo se pueden cambiar los repositorios sin riesgo de romper el sistema requiere algo de experiencia. Se advierte a los usuarios de todos los niveles que extremen la precaución cuando cambien los repositorios.

Usar un programa gráfico

Algunos programas permiten configurar los orígenes Apt mediante una interfaz gráfica. Por ejemplo:

Usar un editor de texto

El principal fichero de configuration de orígenes Apt es /etc/apt/sources.list. Se puede editar estos ficheros (como root) usando un editor de texto.

Para añadir orígenes personalizados es preferible crear ficheros individuales en /etc/apt/sources.list.d/.

Ver man 5 sources.list

El formato de sources.list

Los registros de este fichero normalmente sigen este formato:

deb http://sitio.ejemplo.com/debian distribución componente1 componente2 componente3
deb-src http://sitio.ejemplo.com/debian distribución componente1 componente2 componente3

Tipos de archivo

La primera palabra de cada linea, deb o deb-src, indica el tipo de archivo. Deb indica que el archivo contiene paquetes binarios (deb), los paquetes pre-compilados que usamos normalmente. Deb-src indica paquetes fuente, que son el código fuente del programa original junto con un fichero de control Debian (.dsc) y el diff.gz que contiene los cambios necesarios para empaquetar el programa.

URL del repositorio

El segundo dato de cada linea es la URL del repositorio del que se quiere descargar los paquetes. La lista mrincipal de repositorios espejo Debian está aquí.

Distribución

La 'distribución' puede ser el nombre en clave de la publicación ( stretch, buster, bullseye, bookworm, sid) o la clase de publicación (oldoldstable, oldstable, stable, testing, unstable) respectivamente. Si quieres seguir una clase de publicación usa el nombre de la clase, si quieres seguir una versión principal Debian usa el nombre en clave. Evita usar stable en tu sources.list ya que provoca sorpresas y sistemas rotos cuando sale la siguiente publicación; actualizar a una publicación nueva debería ser una acción deliberada y cuidadosa, y editar un fichero cada dos años no es una molestia.

Por ejemplo, si siempre quieres ayudar a probar la publicación en pruebas, usa 'testing'. Si estás siguiendo <<NombreEnClaveDebian(testing)>> y quieres permanecer en él desde la fase de pruebas hasta el final de su ciclo de vida usa '<<NombreEnClaveDebian(testing)>>'.

Componentes

main contiene solo paquetes que cumplen las DFSG, que no dependen de software de fuera del área para operar. Formalmente solo estos paquetes se consideran parte de ladistribución Debian.

Los paquetes de contrib contienen paquetes que cumplen las DFSG pero que tienen dependencias externas a main (posiblemente empaquetadas para Debian en non-free).

non-free contienen software que incumple de algún modo las DFSG.

Para facilitar las cosas a los usuarios, el proyecto Debian ha tomado la decisión en 2022-10 de crear un nuevo componente de repositorio non-free-firmware e incluír su contenido en los medios de instalación para Debian bookworm.
Y para más información se puede seguir resultado del GR de firmware - ¿y ahora qué?.
El wiki de Debian tiene una página acerca del firmware para todas las publicaciones: anteriores, Bookworm y posteriores.

Ejemplo para Bookworm (publicado como Debian 12.0 (estable) el 10 de Junio de 2023):

deb http://deb.debian.org/debian bookworm main non-free-firmware
deb-src http://deb.debian.org/debian bookworm main non-free-firmware

deb http://deb.debian.org/debian-security/ bookworm-security main non-free-firmware
deb-src http://deb.debian.org/debian-security/ bookworm-security main non-free-firmware

deb http://deb.debian.org/debian bookworm-updates main non-free-firmware
deb-src http://deb.debian.org/debian bookworm-updates main non-free-firmware

Ejemplo de sources.list

He aquí un ejemplo de sources.list para Debian 12/Bookworm (estable):

deb http://deb.debian.org/debian bookworm main
deb-src http://deb.debian.org/debian bookworm main

deb http://deb.debian.org/debian-security/ bookworm-security main
deb-src http://deb.debian.org/debian-security/ bookworm-security main

deb http://deb.debian.org/debian bookworm-updates main
deb-src http://deb.debian.org/debian bookworm-updates main

Si necesitas los componentes contrib y non-free añade contrib non-free detrás de main. Por ejemplo, para Debian 12/Bookworm:

deb http://deb.debian.org/debian bookworm main contrib non-free
deb-src http://deb.debian.org/debian bookworm main contrib non-free

deb http://deb.debian.org/debian-security/ bookworm-security main contrib non-free
deb-src http://deb.debian.org/debian-security/ bookworm-security main contrib non-free

deb http://deb.debian.org/debian bookworm-updates main contrib non-free
deb-src http://deb.debian.org/debian bookworm-updates main contrib non-free

Si necesitas los componentes Backports, contrib, y non-free, añade líneas bookworm-backports. Por ejemplo, para Debian 12/Bookworm:

deb http://deb.debian.org/debian bookworm-backports main contrib non-free
deb-src http://deb.debian.org/debian bookworm-backports main contrib non-free

He aquí un ejemplo de sources.list para Debian 11/Bullseye (oldstable).

deb http://deb.debian.org/debian bullseye main
deb-src http://deb.debian.org/debian bullseye main

deb http://deb.debian.org/debian-security/ bullseye-security main
deb-src http://deb.debian.org/debian-security/ bullseye-security main

deb http://deb.debian.org/debian bullseye-updates main
deb-src http://deb.debian.org/debian bullseye-updates main

If you need the contrib and non-free components, add contrib non-free after main. Por ejemplo, para Debian 11/Bullseye:

deb http://deb.debian.org/debian bullseye main contrib non-free
deb-src http://deb.debian.org/debian bullseye main contrib non-free

deb http://deb.debian.org/debian-security/ bullseye-security main contrib non-free
deb-src http://deb.debian.org/debian-security/ bullseye-security main contrib non-free

deb http://deb.debian.org/debian bullseye-updates main contrib non-free
deb-src http://deb.debian.org/debian bullseye-updates main contrib non-free

Si necesitas los componentes Backports, contrib, y non-free, añade líneas bullseye-backports. Por ejemplo, para Debian 11/Bullseye:

deb http://deb.debian.org/debian bullseye-backports main contrib non-free
deb-src http://deb.debian.org/debian bullseye-backports main contrib non-free

¿Dudas acerca del ciclo de soporte? Haz clic aquí

Si necesitas Debian Inestable cambia la distribución a unstable. Observa que no se usan Updates ni Security porque Unstable es una versión de desarrollo contínuo consistuída por los últimos paquetes. Oséa, que unstable main será el único registro de sources.list.

deb http://deb.debian.org/debian/ unstable main
deb-src http://deb.debian.org/debian/ unstable main

En todas las líneas anteriores puedes usar https://... para llegar a los repositorios mediante conexiones cifradas HTTPS si el repositorio espejo soporta HTTPS. (Los usuarios de Debian 9/Stretch o publicaciones anteriores necesitarán instalar antes el paquete apt-transport-https.)

Se puede usar una herramienta GNOME para editar el fichero sources.list. Está en Menu → Sistema → Administración → Orígenes de Software.

Usar Tor con Apt

Apt puede obtener y descargar actualizaciones mediante la red Tor. Para ello es necesario instalar los paquetes tor y apt-transport-tor. A continuación se puede usar los servicios onion officiales de Debian.

He aquí un ejemplo de sources.list que usa los servicios onion para Debian 11/Bullseye:

deb tor+http://vwakviie2ienjx6t.onion/debian bullseye main
deb-src tor+http://vwakviie2ienjx6t.onion/debian bullseye main

deb tor+http://sgvtcaew4bxjd7ln.onion/debian-security bullseye-security main
deb-src tor+http://sgvtcaew4bxjd7ln.onion/debian-security bullseye-security main

deb tor+http://vwakviie2ienjx6t.onion/debian bullseye-updates main
deb-src tor+http://vwakviie2ienjx6t.onion/debian bullseye-updates main

CD-ROM

Si se prefiere usar el CD-ROM para instalar paquetes o actualizar el sistema automaticalmente con APT, se puede poner en /etc/apt/sources.list. Para ello se puede usar así el programa apt-cdrom:

# apt-cdrom add

con el CD-ROM de Debian en la unidad de disco.

Se puede usar -d para indicar un directorio como punto de montaje del CD-ROM o añadir un punto de montaje de otro tipo (p. ej. una memoria USB).

Resolución de nombres

En ocasiones la resolución de nombres puede romperse. El siguiente ejemplo es de un Puerto S/390x ejecutado en un Chroot QEMU:

# apt update
0% [Working]Unsupported socketcall: 20
Unsupported socketcall: 20
Unsupported socketcall: 20
Unsupported socketcall: 20
Unsupported socketcall: 20
Unsupported socketcall: 20
Unsupported socketcall: 20
Unsupported socketcall: 20
Err:1 http://ftp.us.debian.org/debian testing InRelease
  Temporary failure resolving 'ftp.us.debian.org'
Reading package lists... Done
W: Failed to fetch http://ftp.us.debian.org/debian/dists/testing/InRelease  Temporary failure resolving 'ftp.us.debian.org'
W: Some index files failed to download. They have been ignored, or old ones used instead.

Se puede solventar provisionalmente obteniendo la dirección IP en otra máquina y usándola en vez la URI:

echo "deb http://128.30.2.26/debian testing main" > /etc/apt/sources.list

apt update
Get:1 http://128.30.2.26/debian testing InRelease [232 kB]
Get:2 http://128.30.2.26/debian testing/main s390x Packages [7583 kB]
Get:3 http://128.30.2.26/debian testing/main Translation-en [5134 kB]    
Fetched 13.0 MB in 32s (403 kB/s)                                              
Reading package lists... Done

Paquetes de símbolos para depuración

A menudo, para depurar un cuelgue se necesitan los ficheros con los símbolos para depuración. Para la mayoría de los paquetes Debian están en los paquetes dbgsym, que están disponibles en un archivo aparte.

He aquí un ejemplo para sources.list con los paquetes dbgsym de Debian 11/Bullseye:

deb http://deb.debian.org/debian-debug/ bullseye-debug main

Y lo mismo con la publicación en pruebas.

deb http://deb.debian.org/debian-debug/ testing-debug main

Y un ejemplo más por si usas la distribución inestable.

deb http://deb.debian.org/debian-debug/ unstable-debug main

Más información


CategoryPackageManagement