Te ha pasado que deseas instalar un programa usando el comando apt-get y te aparece un error el cual dice «No se puede localizar el paquete», es algo muy común y más en los usuarios noveles de Linux, pero la solución a esta problemática es muy simple, debes de habilitar los repositorios «universe», «multiverse», «Restricted» o «Partner» de Ubuntu para que el programa o paquete que deseas este disponible para su instalación.
Para instalar y habilitar los repositorios de Ubuntu «universe», «multiverse» y «restricted» debes aplicar los siguientes comandos en tu Terminal:
sudo add-apt-repository universe
sudo add-apt-repository multiverse
sudo add-apt-repository restricted
sudo apt update
Con estos simples comandos tendremos instalados y habilitados los repositorios universe, multiverse, restricted de Ubuntu.
Por otra parte, si deseamos deshabilitar o eliminar repositorios en Ubuntu, debemos ejecutar los siguientes comandos:
sudo add-apt-repository -r restricted
sudo apt update
Como se puede observar es el mismo comando, solo que debemos agregarle -r (remove).
Recuerda actualizar tu lista de repositorios a la más reciente usando el comando sudo apt update ya sea al agregar o eliminar repositorios para que se cree o elimine del caché local toda la información de los repositorios y sus paquetes.
No obstante, te has preguntado ¿qué son los repositorios universe y multiverse?, ¿Qué función cumplen en la instalación de programas o paquetes? Y ¿por qué hay gran variedad de repositorios? A continuación detallaremos y explicaremos cada uno de los puntos e incógnitas mencionados anteriormente.
¿Qué son los repositorios en Ubuntu?
Los repositorios son un conjunto de programas alojados en un servidor disponibles para su descarga en cualquier momento. En Ubuntu se proporcionan una serie de repositorios preinstalados y listos para su uso donde podrás encontrar casi cualquier programa o paquete que necesites, esta es una de las grandes ventajas al usar Linux, ya que, gracias a los repositorios, se puede centralizar todo el software en un solo lugar y de esta manera facilitar al usuario final la instalación de programas o paquetes en Linux.
Como ya sabemos, la instalación de software o programas en Ubuntu se puede hacer con el comando APT en la terminal desde los principales repositorios («universe», «multiverse» y «restricted«), cabe aclarar que el gestor de paquetes APT es el mismo que se usa en el Centro de Software de Ubuntu o Centro de Aplicaciones (llamado así desde de la versión 23.10).
Debido a esto se puede decir que todos los paquetes o programas que están en el Centro de aplicaciones de Ubuntu provienen de APT. No obstante, debemos tener en cuenta que los paquetes Snap no están incluidos en el gestor de paquetes APT.
¿Desde dónde el gestor de paquetes APT instala los programas?
Toda la información sobre los paquetes o programas que obtiene el gestor de paquetes APT viene del repositorio del archivo /etc/apt/sources.list y de todos los archivos contenidos en /etc/apt/sources.list.d. Por lo general la información contenida en estos repositorios tiene un formato predeterminado que es el siguiente:
deb http://us.archive.ubuntu.com/ubuntu/ bionic main
Si deseas ver como están estructurados los repositorios puedes visitar el link anterior.
¿Cómo determina el gestor de paquetes la disponibilidad de software y gestiona su instalación?
Cuando hacemos uso, ya sea del comando apt update para actualizar Ubuntu o del centro de aplicaciones, estos obtienen toda la información necesaria (versión, disponibilidad, etc.) desde los repositorios y a su vez los almacena localmente en el caché, esto lo podemos observar si nos dirigimos al directorio /var/lib/apt/lists.
Ahora te preguntarás para qué se almacena esta información localmente, esto se debe a que de esta manera se agiliza el proceso de actualización al no tener que ir a buscar en la base de datos cada vez que deseamos instalar o actualizar un paquete o programa, ya que al estar almacenados en el caché local solo debe revisar si un paquete o programa está disponible o no directamente.
Ahora que sabemos como están estructurados los repositorios en Ubuntu y como funciona, pasemos a ver los diferentes repositorios que vienen incluidos en Ubuntu.
Explorando los Repositorios de Ubuntu: Main, Universe, Multiverse, Restricted y Partner
En la actualidad, Ubuntu proporciona una variedad de repositorios para su uso y se dividen en Main, Universe, Multiverse, Restricted y Partner (principal, universo, multiverso, restringido y asociado).
No obstante, te preguntarás ¿por qué Ubuntu tiene varios repositorios?, y no solo uno donde contenga todos los paquetes y software, para responder a estas incógnitas debemos conocer mejor cada uno de estos repositorios y su función, la cual detallaremos a continuación.
Repositorio: Main o Principal
Uno de los repositorios habilitados por defecto cuando se instala Ubuntu es el repositorio Main que es el repositorio principal donde solo encontraremos software libre y de código abierto o mejor conocido por sus iniciales FOSS que significa «Free and Open Source Software» lo que significa que el software se distribuye con una licencia que otorga a los usuarios la libertad de ejecutar, estudiar, modificar y distribuir dicho software.
Por otra parte, el repositorio Main es mantenido oficialmente por el equipo de desarrollo de Ubuntu, lo cual significa que tendrá actualizaciones de seguridad, paquetes o software hasta el final de su vida útil
Repositorio: Universe o Universal
El repositorio Universe también es un repositorio de software libre y código abierto, con la salvedad de que Ubuntu no garantizara que los paquetes o programas contenidos en él tengan las actualizaciones de seguridad al día.
Los paquetes y programas contenidos en este repositorio son mantenidos por la comunidad, es por ello que tiene una gran variedad de software de código abierto al cual se puede acceder mediante el gestor de paquetes apt.
Repositorio: Multiverse o Multiverso
El repositorio Multiverse es parte del sistema de gestión de paquetes de Ubuntu, a diferencia de los anteriores, contiene software y paquetes que no son de código abierto FOSS lo que significa que pueden incluir software propietario, software con licencias restrictivas o cualquier otro software que no cumpla con los criterios de software libre.
En Ubuntu los repositorios Multiverse no están habilitados por defecto debido a restricciones legales y de licencias. Por otra parte, Ubuntu no puede proporcionar correcciones o actualizaciones al software de este repositorio. No obstante, puedes decidir usarlos debido a que poseen una amplia gama de software, pero debes informarte sobre los paquetes o software que vayas a instalar.
Repositorio: Restricted o Restringido
El repositorio Restricted es aquel que contiene software o paquetes que son mantenidos por el proyecto Ubuntu, pero que no son de código abierto debido a los derechos de autor o de restricciones, lo que lleva a que dicho software tenga limitaciones en su distribución, modificación o acceso al código fuente.
Los repositorios Restricted contienen controladores o firmware propietarios necesarios para el correcto funcionamiento del hardware y otros componentes, pero que no cumplen con el criterio de software libre.
Repositorio: Partner o Socio
El repositorio «Partner» en Ubuntu es una categoría que incluye software proporcionado por socios de Canonical, la empresa que respalda y desarrolla Ubuntu. ¿Pero quiénes son estos socios? Estos socios pueden incluir empresas que ofrecen programas o paquetes de licencia propietaria, como lo pueden ser los controladores o drivers usados para el correcto funcionamiento de los componentes de hardware.
No obstante, hay que tener en cuenta que este software en su mayoría no es de código abierto y es por ello que no cumple con las directrices de FOSS o Software Libre, ¿Pero por qué se admite este tipo de asociaciones?, esto es debido a que Canonical establecido estas asociaciones para poder proporcionar acceso a ciertos programas o paquetería de manera fácil para el usuario común.
Para habilitar o deshabilitar el repositorio «Partner», puedes utilizar la herramienta de configuración de orígenes de software en la configuración del sistema de Ubuntu. Debemos tener en cuenta que estos repositorios se irán discontinuando, según vayan llegando las nuevas versiones de Ubuntu, ya que estos serán sustituidos por los paquetes Snap.
Repositorios de terceros y PPA (No proporcionados por Ubuntu)
Aunque ya hemos hablado de los repositorios proporcionados por defecto en Ubuntu, una de las grandes ventajas de este gran sistema operativo y de Linux en general es la posibilidad de agregar repositorios de terceros, lo cual nos abrirá un gran abanico de paquetes y software con las versiones más actualizadas en la mayoría de los casos (teniendo en cuenta que muchas veces Ubuntu ofrece estos programas, pero en versiones más antiguas.) o de programas que no están listados en los demás repositorios.
Para dar un ejemplo muy claro de que es un repositorio de terceros en Ubuntu usaremos el programa VirtualBox el cual ofrece Ubuntu en sus repositorios, pero no en su última versión, si añadimos el repositorio proporcionado por VirtualBox, podremos tener acceso a las últimas versiones del mismo, y se agregará una nueva entrada al sources.list.
No obstante, debemos tener en cuenta que el archivo sources.list es muy importante para nuestro sistema y al cual debemos agregar repositorios con cuidado, debido a que si modificamos erróneamente dicho archivo podríamos encontrarnos en la situación de no poder actualizar nuestro sistema o instalar paquetes. Por este motivo, resulta imperativo mantener una copia de respaldo de dicho archivo en caso de que el original se dañe.
Por otra parte, debemos saber que podremos instalar aplicaciones usando el PPA (Personal Package Archive) por lo que podría interesarte nuestro artículo sobre ¿Qué es una PPA y como funciona?
¿Como agregar repositorios gráficamente en Ubuntu?
Para agregar repositorios en Ubuntu de manera gráfica debemos abrir la aplicación Software y Actualizaciones y podrás habilitarlos desde la pestaña Software de Ubuntu.
Para agregar repositorios Partner o Socio de manera gráfica en Ubuntu debemos ir a la pestaña Otro software
Para desactivar un repositorio «universe», «multiverse», «Restricted» o «Partner» solo debemos desmarcar la casilla correspondiente.
¿Como identificar el Repositorio de un paquete en Ubuntu?
Ubuntu tiene un sitio web dedicado en el cual podremos encontrar todos los paquetes disponibles y su información que lleva por nombre Ubuntu Packages Search.
Para buscar un programa o paquete usaremos el buscador que nos proporciona la página web, donde podremos seleccionar la distribución de Ubuntu y el repositorio donde deseamos buscar, por otra parte, tenemos la opción de seleccionar todas las distribuciones y repositorios seleccionando Any.
Una vez buscado el paquete o programa nos aparecerá todos los paquetes y programas que coincidan con nuestra búsqueda así como también su distribución y repositorio
Como podemos observar en la imagen anterior, el programa VirtualBox se encuentra disponible en el repositorio multiverse y para varias distribuciones de Ubuntu.
Conclusión
Como hemos podido observar en este artículo, los repositorios en Ubuntu o Linux en general son de gran importancia, ya que nos dan un gran abanico de software el cual podremos usar según nuestras necesidades.
[…] ¿Qué son los repositorios de Ubuntu y como activarlos o desactivarlos? […]