Editar repositorios de apt

Actualizar el fichero /etc/apt/sources.list


Las listas de paquetes de Debian se actualizan desde los repositorios definidos en la carpeta /etc/apt/, principalmente, en el fichero /etc/apt/sources.list. En él, se suelen encontrar la direcciones web (repositorios) que estaremos utilizando, uno por línea. Algo similar a lo siguiente:

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

Observa que donde aparece la palabra clave bullseye está indicando la versión del sistema operativo. En el caso de Debian, cada versión del sistema operativo es definida por una palabra clave que es un personaje de Toy Story:

Debian Jessie, Stretch, Buster, Bullseye y Bookworm

  • Debian 7: wheezy (2013)
  • Debian 8: jessie (2015)
  • Debian 9: stretch (2017)
  • Debian 10: buster (2019)
  • Debian 11: bullseye (2021)
  • Debian 12: bookworm (2023)
  • Debian 13: trixie (2025)

Actualización de Debian

Sabiendo esto, es muy sencillo configurar los repositorios para actualizar nuestro sistema a las futuras versiones. Imaginemos que tenemos un sistema con Debian 11 (bullseye). Para actualizarlo a Debian 12 (bookworm), podemos hacer lo siguiente:

sed -i "s/bullseye/bookworm/g" /etc/apt/sources.list

Con sed y una expresión regular, hemos actualizado nuestro fichero, reemplazado bullseye por bookworm. Por lo tanto, nuestro fichero /etc/apt/sources.list debería ser ahora el siguiente:

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

Luego, con un sudo apt update && sudo apt upgrade mantedremos la distribución y todos sus paquetes actualizados.

Ampliación de repositorios

Comentar también que como habrás visto anteriormente, por defecto, debian incorpora tres repositorios:

  • Su repositorio principal: bookworm
  • Su repositorio de actualizaciones por versión: bookworm-updates
  • Su repositorio de actualizaciones de seguridad: bookworm-security

Cada uno de estos repositorios sólo indica main. Podemos ampliar estos repositorios para tener más paquetes a nuestra disposición. Veamos un fichero /etc/apt/sources.list ampliado:

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

Si nos fijamos, cada repositorio (cada línea) tiene las palabras clave contrib y non-free. Esto hace que dichos repositorios no sólo muestren los paquetes generales, sino también los que son contribuciones de la comunidad (contrib) o los paquetes privativos (non-free).

En la última línea se define un repositorio adicional bookworm-backports. Este es el llamado repositorio de retroimportaciones. Se trata de paquetes considerados inestables, pero mucho más actualizados que otros, por si se desea tener versiones más modernas que las versiones estables consideradas por Debian.

Repositorios adicionales

En la carpeta de configuración de apt encontrarás también la carpeta /etc/apt/sources.list.d/. Esta carpeta normalmente viene vacía, pero puede contener algunos archivos adicionales si has realizado instalaciones.

Por ejemplo, podríamos tener el fichero /etc/apt/sources.list.d/google-chrome.list, que contiene 3 líneas:

### THIS FILE IS AUTOMATICALLY CONFIGURED ###
# You may comment out this entry, but any other modifications may be lost.
deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main

Se trata de repositorios adicionales particulares, divididos en archivos separados para ser más fácil de gestionar por herramientas automáticas. Muchos sistemas como node, docker u otros, utilizan esta carpeta para añadir sus propios repositorios de actualizaciones y que puedas actualizarlos fácilmente desde apt.

Nuevo formato debian.sources

Es posible que te hayas encontrado que el archivo /etc/apt/sources.list no existe en tu sistema, y sin embargo apt funciona correctamente. Nuevas versiones están utilizando un nuevo formato en el que, en lugar de utilizar el /etc/apt/sources.list, incluyen un fichero /etc/apt/sources.list.d/debian.sources con el siguiente contenido:

# http://snapshot.debian.org/archive/debian/20241016T000000Z
URIs: http://deb.debian.org/debian
Suites: bookworm bookworm-updates
Components: main
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg

Types: deb
# http://snapshot.debian.org/archive/debian-security/20241016T000000Z
URIs: http://deb.debian.org/debian-security
Suites: bookworm-security
Components: main
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg

Como ves, se trata de la información que teníamos en el archivo /etc/apt/sources.list, sólo que distribuido de diferente forma. En este caso, si quisieramos ampliar los componentes, podríamos añadir contrib, non-free y non-free-firmware a la lista de componentes.

¿Quién soy yo?

Soy Manz, vivo en Tenerife (España) y soy streamer partner en Twitch y profesor. Me apasiona el universo de la programación web, el diseño y desarrollo web y la tecnología en general. Aunque soy full-stack, mi pasión es el front-end, la terminal y crear cosas divertidas y locas.

Puedes encontrar más sobre mi en Manz.dev