¿Qué es el sistema apt?

Poder instalar y eliminar paquetes está muy bien, pero el software básico que realiza esta función (conocido como dpkg) hace exactamente esto y nada más. Esto es suficiente si se descarga uno o dos paquetes a mano, pero enseguida se convierte en una ardua tarea cuando intenta gestionar un número mayor de paquetes. Mas aún, si su flamante paquete nuevo requiere software que no ha instalado previamente, tendrá que descargarse los paquetes requeridos a mano. Y si después decide eliminar el ya obsoleto software, esos paquetes adicionales se quedarían en el sistema consumiendo espacio a menos que los elimine manualmente.

Obviamente, toda esta labor manual es una tarea tediosa, y por ello la mayoría de sistemas de gestión de paquetes incorporan software que se ocupa de parte o de toda esta labor por Ud. apt proporciona una base común sobre la que construir estos programas: además de aptitude, programas tales como synaptic y apt-watch hacen uso de apt.

apt funciona mediante el registro de una lista de los paquetes que se pueden descargar desde Debian a su ordenador. Esta lista es útil a la hora de encontrar los paquetes a actualizar y para instalar paquetes nuevos. apt también puede resolver problemas de dependencias automáticamente: por ejemplo, cuando escoja instalar un paquete, encontrará cualquier paquete adicional requerido e instalará esos también.

Cuando use un gestor de paquetes basado en apt, tales como aptitude, por lo general realizará tres tareas básicas: actualizar la lista de paquetes que están disponibles mediante la descarga de listas nuevas desde los servidores de Debian, seleccionar qué paquetes se deberían instalar, actualizar o eliminar, y finalmente confirmar sus selecciones llevando a cabo las instalaciones, eliminaciones, etc.

Los sistemas de gestión de paquetes basados en apt leen la lista de fuentes («sources», repositorios de paquetes para Debian) del fichero /etc/apt/sources.list. El formato y contenido de este fichero están más allá del alcance de este documento, pero se describen en la página de manual sources.list(5).