Existen almenos un par de maneras de meter paquetes de inestable en estable, sin tener que liar mucho tu sistema. Una es
mediante //pinning// o marcado, y la otra, y la otra, la que ahora comento, editando el fichero
/etc/apt/apt.conf.
Suponiendo que tienes Debian estable, y quieras mezclar los paquetes de ella con los de Sid, empieza por añadir sus entradas al
sources.list:
# Debian Woody
deb http://http.us.debian.org/debian stable main contrib non-free
deb http://non-us.debian.org/debian-non-US stable/non-US main contrib non-free
deb-src http://http.us.debian.org/debian stable main contrib non-free
deb http://security.debian.org stable/updates main contrib non-free
# Debian sid
deb http://ftp.se.debian.org/debian/ sid main contrib non-free
deb-src http://ftp.se.debian.org/debian/ sid main contrib non-free
deb http://ftp.se.debian.org/debian-non-US sid/non-US main contrib non-free
deb-src http://ftp.se.debian.org/debian-non-US sid/non-US main contrib non-free
Lo siguiente, es editar o crear el fichero
/etc/apt/apt.conf. En mi caso, fue crearlo, y dejar esta línea:
APT::Default-Release "stable";
Ahora, a pesar de las entradas de Sid, tu sistema no se actualizará con los paquetes de esa distribución, ya que la distribución por defecto es la estable. Tan solo lo haría así, si se lo especificas explícitamente:
luna:~# apt-get dist-upgrade
Reading Package Lists... Done
Building Dependency Tree... Done
Calculating Upgrade... Done
0 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
luna:~# apt-get dist-upgrade -t unstable -s
Reading Package Lists... Done
Building Dependency Tree... Done
Calculating Upgrade... Done
..........................
287 packages upgraded, 60 newly installed, 87 to remove and 2 not upgraded.
Ahora es cuando podemos probar a instalar algún paquete que no estaba en Woody, indicando la distribución en el apt. En mi caso, probaré con un paquete que no empiece a dar problemas de dependencias:
luna:~# apt-get install -t unstable xpmumon
Reading Package Lists... Done
Building Dependency Tree... Done
1 packages upgraded, 0 newly installed, 0 to remove and 365 not upgraded.
Need to get 16.6kB of archives. After unpacking 4096B will be used.
Get:1 http://ftp.se.debian.org sid/main xpmumon 1.2.0 [16.6kB]
Fetched 16.6kB in 1s (10.6kB/s)
(Reading database ... 54123 files and directories currently installed.)
Preparing to replace xpmumon 1.1.0 (using .../xpmumon_1.2.0_powerpc.deb) ...
Unpacking replacement xpmumon ...
Setting up xpmumon (1.2.0) ...
En general, el apt es bastante listo (como no). Si elegís para instalar un paquete que no esté en estable, el solito lo busca en sid, pero no os hará nada si este no puede instalarse. Si queréis que lo actualice, has de especificarlo de nuevo:
luna:~# apt-get install gtkpbbuttons -s
Reading Package Lists... Done
Building Dependency Tree... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
Since you only requested a single operation it is extremely likely that
the package is simply not installable and a bug report against
that package should be filed.
The following information may help to resolve the situation:
Sorry, but the following packages have unmet dependencies:
gtkpbbuttons: Depends: libc6 (>= 2.3.1-1) but 2.2.5-11.2 is to be installed
Depends: pbbuttonsd (>= 0.4.8) but it is not going to be installed
E: Sorry, broken packages
luna:~# apt-get install -t unstable gtkpbbuttons -s
Reading Package Lists... Done
Building Dependency Tree... Done
The following extra packages will be installed:
libc6 libc6-dev libdb1-compat locales pbbuttonsd
The following packages will be REMOVED:
libnss-db
The following NEW packages will be installed:
gtkpbbuttons libdb1-compat pbbuttonsd
3 packages upgraded, 3 newly installed, 1 to remove and 361 not upgraded.
Remv libnss-db (2.2-6.2 Debian:unstable)
Inst libdb1-compat (2.1.3-7 Debian:unstable) []
Inst libc6-dev (2.3.1-14 Debian:unstable) []
Inst locales (2.3.1-14 Debian:unstable) []
Inst libc6 (2.3.1-14 Debian:unstable)
Conf libdb1-compat (2.1.3-7 Debian:unstable)
Conf libc6 (2.3.1-14 Debian:unstable)
Inst pbbuttonsd (0.5.2-1 Debian:unstable)
Inst gtkpbbuttons (0.5.2-1 Debian:unstable)
Conf libc6-dev (2.3.1-14 Debian:unstable)
Conf locales (2.3.1-14 Debian:unstable)
Conf pbbuttonsd (0.5.2-1 Debian:unstable)
Conf gtkpbbuttons (0.5.2-1 Debian:unstable)