Cuando se instalan paquetes usando el Centro de Software de Ubuntu o las utilidades de línea de comandos como apt
o apt-get
los paquetes se descargan desde uno o más repositorios de software apt. Un repositorio APT es un servidor de red o un directorio local que contiene paquetes deb y archivos de metadatos que son legibles por las herramientas APT.
Aunque hay miles de aplicaciones disponibles en los repositorios predeterminados de Ubuntu, a veces es posible que necesite instalar software desde un repositorio de terceros.
En este tutorial, le mostraremos dos formas de añadir el repositorio apt en los sistemas Ubuntu y Debian. El primer método es usando el comando add-apt-repository
y el segundo es añadir manualmente el repositorio usando un editor de texto.
Fuentes apt #
En Ubuntu y el resto de distribuciones basadas en Debian, los repositorios de software apt se definen en el archivo /etc/apt/sources.list
o en archivos separados bajo el directorio /etc/apt/sources.list.d/
.
Los nombres de los archivos del repositorio dentro del directorio /etc/apt/sources.list.d/
deben terminar con .list
.
La sintaxis general del archivo /etc/apt/sources.list
tiene el siguiente formato:
deb http://repo.tld/ubuntu distro component...
- La primera entrada de la línea define el tipo de archivo. El tipo de archivo puede ser deb o deb-src. Deb implica que el repositorio contiene
.deb
paquetes mientras que deb-src implica paquetes fuente. - La segunda entrada es la URL del repositorio.
- La tercera entrada especifica el nombre del código de la distribución, como beaver, xenial y demás.
- Las últimas entradas son los componentes o categorías del repositorio. Los repositorios de Ubuntu por defecto se dividen en cuatro componentes: principal, restringido, universo y multiverso. Generalmente, los repositorios de terceros sólo tienen una categoría.
El formato de los archivos bajo el directorio /etc/apt/sources.list.d/
es el mismo que el del archivo normal sources.list
.
La mayoría de los repositorios están proporcionando una clave pública para autenticar los paquetes descargados que necesitan ser descargados e importados.
Para poder añadir o eliminar un repositorio es necesario estar conectado como un usuario con acceso sudo o como root.
Por lo general, las instrucciones sobre cómo habilitar un determinado repositorio se incluyen en la documentación del software.
Instalación de add-apt-repository (no se ha encontrado el comando add-apt-repository ) #
add-apt-repository
es un script de Python que permite añadir un repositorio de APT a /etc/apt/sources.list
o a un archivo separado en el directorio /etc/apt/sources.list.d
. El comando también se puede utilizar para eliminar un repositorio ya existente.
Si el add-apt-repository
no está disponible en su sistema obtendrá un mensaje de error que dice «add-apt-repository command not found».
La utilidad add-apt-repository
está incluida en el paquete software-properties-common
. Para instalarla ejecuta los siguientes comandos:
sudo apt update
sudo apt install software-properties-common
Añadir Repositorios con add-apt-repository #
La sintaxis básica del comando add-apt-repository
es la siguiente:
add-apt-repository repository
Donde repository
puede ser una entrada de repositorio normal que puede ser añadir al archivo sources.list
como deb http://repo.tld/ubuntu distro component
o un repositorio PPA en el formato ppa:<user>/<ppa-name>
.
Para ver todas las opciones disponibles del comando add-apt-repository
escribe man add-apt-repository
en tu terminal.
Por defecto, en ubuntu 18.04 y posteriores el add-apt-repository
también actualizará el índice de paquetes si se importa la clave pública del repositorio.
El índice de paquetes es una base de datos que contiene registros de los paquetes disponibles de los repositorios habilitados en tu sistema.
Digamos que quieres instalar MongoDBdesde sus repositorios oficiales.
Primero importa la clave pública del repositorio:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
Agrega el repositorio de MongoDB utilizando el siguiente comando.
sudo add-apt-repository 'deb https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse'
El repositorio se anexará al archivo sources.list
.
Ahora puedes instalar cualquiera de los paquetes del nuevo repositorio habilitado:
sudo apt install mongodb-org
Si por alguna razón quieres eliminar un repositorio previamente habilitado, utiliza la opción --remove
:
sudo add-apt-repository --remove 'deb https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse'
Añadir Repositorios PPA #
Los Archivos de Paquetes Personales (PPA) son un servicio que permite a los usuarios subir paquetes fuente de Ubuntu que se construyen y publican con Launchpad como un repositorio apt.
Cuando se añade un repositorio PPA el comando add-apt-repository
crea un nuevo archivo bajo el directorio /etc/apt/sources.list.d/
.
Por ejemplo, para añadir el PPA de Jonathon F que proporciona FFmpegversion 4.x se ejecutaría:
sudo add-apt-repository ppa:jonathonf/ffmpeg-4
Cuando se le solicite pulse Enter
y el repositorio se habilitará.
Press to continue or Ctrl-c to cancel adding it.
La clave pública del repositorio PPA se descargará y registrará automáticamente.
Una vez añadido el PPA a tu sistema podrás instalar los paquetes del repositorio:
sudo apt install ffmpeg
El comando apt
instalará el paquete y todas sus dependencias.
Añadir manualmente los repositorios#
Si quieres tener más control sobre cómo se organizan tus fuentes puedeseditar manualmente el archivo /etc/apt/sources.list
y añadir la línea de repositorio apt al archivo.
Para la demostración, habilitaremos el repositorio CouchDB e instalaremos el software. CouchDBes una base de datos NoSQL tolerante a fallos, gratuita y de código abierto, mantenida por la Apache Software Foundation.
Para añadir el repositorio abre el archivo sources.list
con tu editor de texto:
sudo nano /etc/apt/sources.list
Agrega la línea del repositorio al final del archivo:
deb https://apache.bintray.com/couchdb-deb bionic main
En lugar de editar el archivo con un editor de texto puedes utilizar el siguiente comando para añadir la línea de repositorio al archivo sources.list
:
echo "deb https://apache.bintray.com/couchdb-deb $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list
$(lsb_release -cs)
imprimirá el nombre en clave de Ubuntu. Por ejemplo, si tiene la versión 18.04 de Ubuntu, el comando imprimirá bionic
.
Otra opción es crear un nuevo archivo de repositorio en el directorio /etc/apt/sources.list.d/
.
Cuando configure manualmente un repositorio, también tendrá que importar manualmente la clave pública del repositorio a su sistema. Para ello, utilice wget
o curl
:
curl -L https://couchdb.apache.org/repo/bintray-pubkey.asc | sudo apt-key add -
El comando anterior debería dar como resultado OK
lo que significa que la clave GPG se ha importado con éxito y los paquetes de este repositorio se considerarán de confianza.
Antes de instalar los paquetes del nuevo repositorio añadido debes actualizar el índice de paquetes:
sudo apt update
Una vez actualizado el índice de paquetes puedes instalar los paquetes del nuevo repositorio añadido:
sudo apt install couchdb
Conclusión #
Hemos mostrado cómo añadir repositorios apt en Ubuntu. Las mismas instrucciones se aplican a cualquier distribución basada en Debian, incluyendo Kubuntu, Linux Mint y Elementary OS.