Setting up a mixed Debian system

As the vast majority of Debian already knows, it has several branches:

  • Stable
  • Testing
  • Unstable (Sid)

But there is also a possibility to make a mixed system by making mixtures like:

  • unstable + experimental
  • stable + testing
  • stable + unstable
  • stable + testing + unstable

Let's see how to do it

First of all, for safety we must make a copy of our sources.list, for this we enter the file:

nano /etc/apt/sources.list

When we have done this we add the repositories of the branch or branches that we want in the sources.list, for example

### Debian oficial -- Testing
deb http://ftp.br.debian.org/debian/testing main contrib non-free
### Official Debian - Security Testing.
deb http://security.debian.org/testing / updates main contrib ### Official Debian - Sid
deb http://ftp.br.debian.org/debian/unstable main contrib non-free ### Official Debian - Experimental
deb http://ftp.de.debian.org/debian/experimental main contrib ### Multimedia - Audio - Rarewares
deb http://www.rarewares.org/debian/packages/unstable./### Multimedia -- Video -- Marillat
deb http://www.debian-multimedia.org stable main
deb http://www.debian-multimedia.org unstable main

now we save the file and execute:

apt-get update

Now we will prepare two files: preferences and apt.conf

nano /etc/apt/preferences

In this file we add the following:

Package: *
Pin: release o=Unofficial Multimedia Packages
Pin-Priority: 950
Packaging: *
Pin: release o = xmixahlx
Pin-Priority: 900 Package: *
Pin: release a = testing
Pin-Priority: 850 Package: *
Pin: release a = unstable
Pin Priority: 800Package: *
Pin: release a=experimental
Pin-Priority: 750

NOTE: This is an example, everything will depend on the repositories that we want to put

We create apt.conf:

nano /etc/apt/apt.conf

We add the following:

APT::Default-Release "testing";
APT::Cache-Limit 15000000;
Apt::Get::Purge;
APT::Clean-Installed;
APT::Get::Fix-Broken;
APT::Get::Fix-Missing;
APT::Get::Show-Upgraded "true";

We update the database:

apt-get update

And now we have two options to install packages:

The typical and the following:

apt-get install -t version_de_debian nombre_paquete

This way of installing will install the desired package for the specified version, resolving dependencies automatically.

Source: It's Debian


Add as preferred source in Google