====== Para Impacientes ====== Agregando repositorios para debian **bullseye** desde servidores en internet: cat << EOF | tee /etc/apt/sources.list #Repositorio principal deb http://deb.debian.org/debian/ bullseye main non-free contrib deb-src http://deb.debian.org/debian/ bullseye main non-free contrib #Repositorio de seguridad deb https://deb.debian.org/debian-security bullseye-security main contrib deb-src https://deb.debian.org/debian-security bullseye-security main contrib # bullseye-updates, previamente conocido como 'volatile' 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 #Repositorio de backports 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 #Repositorio de actualizaciones propuestas deb http://deb.debian.org/debian/ bullseye-proposed-updates main contrib non-free deb-src http://deb.debian.org/debian/ bullseye-proposed-updates main contrib non-free EOF Actualizar la lista de paquetes apt update Actulizar los paquetes apt upgrade apt upgrade -t bullseye-backports ====== Generalidades ====== Apt descarga los paquetes de mas de un repositorio de paquetes y los instala en tu computadora. Un repositorio, por lo general, es un servidor en red como los repositorios de Debian en su versión estable. Un repositorio, además de un servidor en red, también acepta directorios de almacenamiento local o discos CD/DVD. Los repositorios (fuentes de paquetes) configurados en tu maquina afectan: * Que software está disponible para descarga * Que versiones de paquetes están disponibles * Quien empaqueta el software ===== Orígenes de paquetes ===== * **DebianStable**: Repositorio oficial de Debian para la versión estable actual de debian * **StableProposedUpdates**: Repositorio oficial de Debian para la siguiente liberación menor de Debian estable (seguridad y parches importantes cada dos meses aprox) * **StableUpdates**: Repositorio oficial de Debian para cambios que no pueden esperar al próximo punto de liberación, también se agregan paquetes a StableProposedUpdates para la inclusión en la próxima liberación * **DebianSecurity**: Repositorio oficial de Debian para actualizaciones de seguridad frecuentes * **DebianBackports**: Paquetes mas recientes, compatible con Debian estable * **DebianTesting**: Estado actual de desarrollo para la siguiente versión estable de Debian * **DebianUnstable**: Versión de debian en desarrollo que contiene los paquetes mas nuevos * **DebianExperimental**: Versión de desarrollo de Debian que contiene paquetes en estado experimental/alpha/sinprueba ===== Archivos y Carpetas ===== El archvivo de configuración principal esta ubicado en ''/etc/apt/sources.list''. Puedes editar este archivo (como usuario root) utilizando un editor de texto. Para agregar fuentes de software personalizadas, se recomienda crear archivos separados bajo la carpeta ''/etc/apt/sources.list.d/''. ===== Estructura ===== Las entradas en el archivo ''sources.list'' normalmente sigue este formato: deb URI distribution componente1 componente2 componente3 deb-src URI distribution componente1 componente2 componente3 Dónde: * **''Tipo de archivo''**: Es la primera palabra en cada entrada ''deb'' ó ''deb-src'' . deb indica que el paquetes es binario y deb-src que el paquete contiene el código fuente del programa. * **''La URI del repositorio''**: Indica desde donde va a descargar los paquetes. ALgunas URIs puede ser : * ''http://sitio.ejemplo.com/debian'' * ''file:/ruta/hacia/archivos/debian'' * ''ftp://sitio.ejemplo.com/debian'' * **''Distribución''**: La distribución puede ser tanto el nombre código/alias de la versión ( stretch, buster, bullseye, bookworm, sid) ó la clase de la versión (oldoldstable, oldstable, stable, testing, unstable) respectivamente. Evite usar ''stable'' en el sources.list por que puede resultar en sistemas rotos sobre todo cuando se libera una nueva versión estable de debian. * **''Componente''**: Consiste en grupos de software categorizados de acuerdo a las Directrices de Software Libre de Debian (DFSG) donde existen tres categorías: * ''main'' cosiste en paquetes que cumplen con las directrices DFSG, lo cuales no dependen en software fuera de esta categoría. * ''contrib'' contiene software que cumplen con las directrices DFSG, pero que sus dependencias no estan en la categoria main(posiblemente empaquetado en sección Debian non-free). * ''non-free'' contiene software que no cumplen con las directrices DFSG. Habitualmente software no libre. ===== Esquemas de URI soportadas ===== * **''http''**: Especifica un servidor HTTP para un repositorio y era el método mas utilizado. Esta URI puede incluir información de login en formato ''http://usuario:clave@servidor:puerto/'' aunque esta forma de autenticación es insegura. * **''https''**: Especifica un servidor HTTPS para un repositorio y se utiliza de manera similar al esquema http. * **''mirror''**: Este esquema especifica el lugar de un mirrorlist. Por defecto el esquema utilizado para el lugar es http pero se pueden utilizar otros utilizando el esquema ''mirror+esquema''. El mirrorlist en si mismo puede tener muchas URIs de espejos para que el cliente APT elija una. * **''file''**: Este esquema permite utilizar un directorio arbitrario de nuestro sistema de almacenamiento como un espejo. Es muy útil para servidores NFS. * **''cdrom''**: Este esquema permite a APT utilizar un CD-ROM, DVD o una memoria USB para fuente. Utiliza el **''apt-cdrom''** para crear esta entrada en el ''sources.list''. * **''ftp''**: Este esquema espeficíca un servidor FTP. El uso de este esquema esta en descenso en favor de los esquemas http y https. * **''copy''**: Este esquema es idéntico al esquema ''file'' excepto que los paquetes se copian al directorio cache (''/var/cache/apt/'') en vez utilizarlos directamente. * **''rsh/ssh''**: Este método invoca RSH/SSH para conectarse a un servidor remoto y acceder a los archivo utilizando un usuario del sistema. Se recomienda configurar las llaves SSH previamente. ===== Programas para editar ===== Existen varios programas para editar los repositorios de debian pero los podemos clasificar en dos categorias: - En modo linea de comandos - En modo gráfico ==== Modo Linea de comandos ==== Para ello debemos utilizar nuestro editor de texto favorito en linea de comandos, como por ejemplo nano, agregar las entradas, guardar y actualizar. Para instalar, quitar y actualizar paquetes se pueden utilizar tres herramientas muy similares: * **''apt-get''**: Herramienta antigua. * **''apt''**: Herramienta mas nueva que soluciona algunos vacios de diseño de apt, y es la que se recomienda usar. * **''aptitude''**: Herramienta que cuenta con interfaz grafica en CLI para administrar los paquetes. ==== Modo gráfico ==== Entre ellos se encuentra el programas: * **''synaptic''**: Programa gráfico para manipular programas en debian. * **''software-properties-gtk''**: Programa para manipular los repositorios de debian, y que se puede llamar desde synaptic. * **''gdebi''**: Programa para instalar paquetes ''.deb'' * Algunos escritorios gráficos pueden tener su propia interfáz gráfica para administrar programas como el ''gnome-software'' que ayuda a instalar fácilmente los programas. ====== Configuración ====== ===== CLI ===== Para poder agregar entradas desde la linea de comandos, como usuario root: === Editamos el archivos sources.list === nano /etc/apt/sources.list === Agregamos las lineas === #Repositorio principal deb http://deb.debian.org/debian/ bullseye main non-free contrib deb-src http://deb.debian.org/debian/ bullseye main non-free contrib #Repositorio de seguridad deb https://deb.debian.org/debian-security bullseye-security main contrib deb-src https://deb.debian.org/debian-security bullseye-security main contrib Luego guardamos con la combinación de teclas ''Ctrl+x'', presionamos la letra ''y'' **NOTA:**Para estos repositorios se ha utilizado el CDN http://deb.debian.org/ para los servidores de repositorios de debian que utiliza registros SRV en el DNS para redirigir a algun servidor oficial, pero pueden utilizarse otros servidores en vez. === Actualizamos la lista === Actualizamos la lista de paquetes que podemos instalar en nuestra compoutadora con apt update === Instalamos programas === Luego solo nos queda instalar programas como por ejemplo apt install tree ====== Repositorios adicionales ====== Aca una lista de repositorios adicionales para software que pueden necesitar (Utilicense bajo su propio riesgo): #Repositorio para debian multimedia deb http://www.deb-multimedia.org bullseye main non-free deb-src http://www.deb-multimedia.org bullseye main non-free # Java bellsoft deb [arch=amd64] https://apt.bell-sw.com/ stable main # PHP Sury deb https://packages.sury.org/php bullseye main # VirtualBox deb [arch=amd64] https://download.virtualbox.org/virtualbox/debian bullseye contrib # Mega Sync deb https://mega.nz/linux/repo/Debian_11/ ./ #Visual Studio Code deb [arch=amd64,arm64,armhf] http://packages.microsoft.com/repos/code stable main Existen otros repositorios adicionales en https://wiki.debian.org/DebianRepository/Unofficial ====== Errores Apt Key ====== Si al hacer ''apt update'' les da un error de : The following signatures couldn't be verified because the public key is not available: NO_PUBKEY LLAVEQUEAPARECE1 NO_PUBKEY LLAVEQUEAPARECE2 NO_PUBKEY LLAVEQUEAPARECE3 Reading package lists... Done Pueden solventar ejecutando: apt-key adv --keyserver keyserver.ubuntu.com --recv-keys LLAVEQUEAPARECE ====== Referencias ====== * https://wiki.debian.org/SourcesList * https://wiki.debian.org/DebianRepository * https://wiki.debian.org/DebianRepository/Unofficial * https://exdebian.org/wiki/tutorial-de-synaptic * https://github.com/filippobuletto/osmcwireguard/issues/3