Tanto apt-get como aptitude tienen dos categorías de paquetes instalables: el paquete solicitado y sus dependencias, por un lado; y los paquetes recomendados, por otro. Y los recomendados -salvo que uno modifique la configuración- son tratados como dependencias.
Por ejemplo (en mi caso, no aparece samba porque ya está instalado):
Código:
sudo aptitude install cups
Se instalarán los siguiente paquetes NUEVOS:
avahi-daemon{a} bc{a} colord{a} cups cups-filters{a} cups-ppdc{a} dc{a}
foomatic-db-compressed-ppds{a} foomatic-db-engine{a} foomatic-filters{a}
ghostscript-cups{a} hpijs{a} hplip{a} hplip-data{a} libavahi-core7{a}
libcolord1{a} libcupscgi1{a} libcupsdriver1{a} libcupsfilters1{a}
libcupsmime1{a} libcupsppdc1{a} libdaemon0{a} libescpr1{a}
libgutenprint2{a} libhpmud0{a} libnss-mdns{a} libperl5.14{a}
libsane-hpaio{a} libsensors4{a} libslp1{a} libsnmp-base{a} libsnmp15{a}
mscompress{a} printer-driver-all{a} printer-driver-c2050{a}
printer-driver-c2esp{a} printer-driver-escpr{a} printer-driver-foo2zjs{a}
printer-driver-gutenprint{a} printer-driver-hpcups{a}
printer-driver-hpijs{a} printer-driver-m2300w{a}
printer-driver-min12xxw{a} printer-driver-pnm2ppa{a}
printer-driver-postscript-hp{a} printer-driver-ptouch{a}
printer-driver-pxljr{a} printer-driver-sag-gdi{a} printer-driver-splix{a}
python-imaging{a} python-pexpect{a} python-renderpm{a}
python-reportlab{a} python-reportlab-accel{a} ttf-freefont{a}
0 paquetes actualizados, 55 nuevos instalados, 0 para eliminar y 6 sin actualizar.
Necesito descargar 26,1 MB de ficheros. Después de desempaquetar se usarán 64,3 MB.
Pero supongamos que yo sé lo que estoy haciendo, y sólo quiero instalar lo mínimo indispensable para que cups funcione. Entonces, tengo la opción de quitar los recomendados:
Código:
sudo aptitude -R install cups
Se instalarán los siguiente paquetes NUEVOS:
bc{a} cups cups-filters{a} cups-ppdc{a} libcupscgi1{a} libcupsfilters1{a}
libcupsmime1{a} libcupsppdc1{a} libslp1{a} ttf-freefont{a}
Se RECOMIENDAN los siguientes paquetes, pero NO se instalarán:
avahi-daemon colord cups-driver-gutenprint foomatic-filters
ghostscript-cups printer-driver-gutenprint
0 paquetes actualizados, 10 nuevos instalados, 0 para eliminar y 6 sin actualizar.
Necesito descargar 5.133 kB de ficheros. Después de desempaquetar se usarán 11,6 MB.
¿Quiere continuar? [Y/n/?]
Si llegara a faltar algún driver, justo el que necesitas, lo puedes instalar con el mismo método. O, si sabes de antemano cuál será ese driver, haces lo mismo de arriba:
Código:
sudo aptitude -R install hplip
Se instalarán los siguiente paquetes NUEVOS:
bc{a} cups{a} cups-filters{a} cups-ppdc{a} ghostscript-cups{a} hplip
hplip-data{a} libcupscgi1{a} libcupsfilters1{a} libcupsmime1{a}
libcupsppdc1{a} libhpmud0{a} libperl5.14{a} libsane-hpaio{a}
libsensors4{a} libslp1{a} libsnmp-base{a} libsnmp15{a}
printer-driver-hpcups{a} python-imaging{a} python-pexpect{a}
python-reportlab{a} ttf-freefont{a}
Se RECOMIENDAN los siguientes paquetes, pero NO se instalarán:
avahi-daemon colord cups-driver-gutenprint foomatic-filters
printer-driver-gutenprint python-renderpm python-reportlab-accel
0 paquetes actualizados, 23 nuevos instalados, 0 para eliminar y 6 sin actualizar.
Necesito descargar 18,1 MB de ficheros. Después de desempaquetar se usarán 38,4 MB.
¿Quiere continuar? [Y/n/?]
Nota: hay una tercera categoría, que a falta de mejor nombre llamaré sugerencias. Suelen ser programas similares, o asociados de alguna manera. En algunos casos, es documentación, que viene aparte. Estos no se instalan por defecto.
Si por alguna razón quisieras indicarle sólo un paquete, pero que se instalara todo lo remotamente relacionado con el mismo, se hace así: aptitude --with-recommends paquete.
########################
En cuanto a los repositorios, depende de la utilidad que le des a tu instalación. Por ejemplo, en mi instalación de uso diario sí tengo instalados cups, samba y casi cualquier cosa que imagines. La instalación que acabo de usar para mostrarte lo de arriba -apelando a un chroot-, es una instalada en una partición de 3 Gb, que uso para reparar mi instalación de uso diario cuando metí la pata. En esa instalación, no necesito impresora, no necesito multimedia, ni drivers privativos, ni casi ningún servidor.
Sin embargo, si quieres instalar
flashplugin-nonfree, obviamente necesitas repositorios
non-free. Si quieres tener la última versión de
mplayer, probablemente te convenga utilizar el repositorio
multimedia.
También puedes encontrarte con casos en que el programa que quieres instalar es libre y cumple las políticas de Debian, pero depende de paquetes que no son totalmente libres, o que siéndolos, incumplen alguna de las directivas Debian. Esos están en la rama contrib: hay unos cuantos juegos, como
Quake o
Alien-arena; muchas librerías; las fuentes de microsoft necesarias para wine (
mscorefonts), etc. Pero, para que te des una idea, a ese repositorio estuvo a punto de ir a parar Firefox, por el problema con el ícono, que no era libre.
En definitiva: en una máquina de uso cotidiano, salvo que tengas algun prurito religioso, como Stallman, tendrás una vida mucho más cómoda habilitando las ramas
main,
contrib y
non-free y, si quieres, los repositorios -no oficiales-
multimedia.
Edit: corrijo. Flashplugin-nonfree está en contrib. En cualquier caso, si quieres revisar qué hay en cada rama, visita cualquier repositorio. Por ejemplo (puedes cambiar código de país):
http://ftp.it.debian.org/debian/pool/