Community is doing great job supporting and contributing to Debian, guys are making as-stable-as-possible product for server installs. (Actually, I have never seen live production server running Debian, lol, but I think it should work well)
But if you’re using Debian on local box, as me, you can find it a bit too stable: at the moment Iceweasel 10.0.12 is in stable repo, 17.0.9 in testing, 24 in unstable.
I have lot of add-ons for Iceweasel installed and some of them (for example, Vimperator) don’t support Iceweasel 17 so I have to install Iceweasel from unstable.
Configuring apt pinning and adding repo
There are few options: if you have balls you can upgrade whole system to unstable, but mommy says you may be screwed up. In case if you’re afraid of loosing your StarTrek porn collection due to some software gotcha you should use apt pinning to update only particular packages.
You can find detailed information here, there is just slightly adapted version of this guide below.
The ‘preferences’ file is where the actual pinning takes place. Here’s an example:
# cat /etc/apt/preferences Package: * Pin: release a=testing Pin-Priority: 900 Package: * Pin: release a=unstable Pin-Priority: 800
Package defaults to any, as specified by the asterisk. Pin specifies the release (testing and unstable). Pin-Priority specifies the priority level. ‘apt-get’ defaults to something along the lines of “highest package version wins”. The above restructures this priority so that packages in testing are given a higher priority.
Then, we’ll add unstable repo to sources list (you should use the closest mirror, of course):
# cat /etc/apt/sources.list deb http://ftp.ru.debian.org/debian/ testing main non-free contrib deb-src http://ftp.ru.debian.org/debian/ testing main non-free contrib deb http://ftp.ru.debian.org/debian/ unstable main non-free contrib deb-src http://ftp.ru.debian.org/debian/ unstable main non-free contrib deb http://security.debian.org/ testing/updates main contrib non-free deb-src http://security.debian.org/ testing/updates main contrib non-free
Installing from unstable
We can check now which package versions we have in different repos, for example, “iceweasel”:
# apt-get update # apt-cache policy iceweasel iceweasel: Installed: 10.0.12esr-1+nmu1 date = "" Version table: 24.1.0esr-1 0 600 http://ftp.ru.debian.org/debian/ unstable/main amd64 Packages 17.0.9esr-1~deb7u1 0 700 http://ftp.ru.debian.org/debian/ testing/main amd64 Packages *** 10.0.12esr-1+nmu1 0 100 /var/lib/dpkg/status
Let’s assume that we’re running testing and we want to try Iceweasel from unstable. There are basically two methods for installing:
# apt-get install iceweasel/unstable # apt-get -t unstable install iceweasel
The first will not attempt to upgrade any packages on your system, so if specific dependencies are not met, the install will fail. The second method will attempt to install/upgrade any dependencies. Of course, given the above example, ‘apt-get’ will ask you before proceeding.
That’s all so far, folks.