I have Debian squeeze installed and this is my /etc/apt/sources.list
file:
# Debian packages for stable
deb http://ftp.lug.ro/debian/ stable main contrib non-free
# Security updates for stable
deb http://security.debian.org/ stable/updates main contrib non-free
# DotDeb - http://www.dotdeb.org/
deb ftp://download.srv.ro/pub/dotdeb/ stable all
deb-src ftp://download.srv.ro/pub/dotdeb stable all
What I am trying to do is to set up a pin so I can install only the php5
package from dotdeb, and ignore everything else from this repository. I tried this:
# cat /etc/apt/preferences
Package: *
Pin: release o=packages.dotdeb.org
Pin-Priority: 100
Package: php5
Pin: release o=packages.dotdeb.org
Pin-Priority: 900
# apt-cache policy php5
php5:
Installed: 5.3.3-7+squeeze14
Candidate: 5.3.17-1~dotdeb.0
Package pin: 5.3.17-1~dotdeb.0
Version table:
5.3.17-1~dotdeb.0 900
100 ftp://download.srv.ro/pub/dotdeb/ stable/all i386 Packages
*** 5.3.3-7+squeeze14 900
500 http://ftp.lug.ro/debian/ stable/main i386 Packages
500 http://security.debian.org/ stable/updates/main i386 Packages
100 /var/lib/dpkg/status
but with no luck. Perhaps I don't understand very well how pinning works.
UPDATE
Running apt-get -s upgrade
gives me:
# apt-get -s upgrade
<-- output clipped -->
The following packages have been kept back:
php5
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
Also, I just noticed that running apt-get -s install php5
gives me:
# apt-get -s install php5
<-- output clipped -->
The following information may help to resolve the situation:
The following packages have unmet dependencies:
php5 : Depends: libapache2-mod-php5 (>= 5.3.17-1~dotdeb.0) but 5.3.3-7+squeeze14 is to be installed or
libapache2-mod-php5filter (>= 5.3.17-1~dotdeb.0) but it is not going to be installed or
php5-cgi (>= 5.3.17-1~dotdeb.0) but 5.3.3-7+squeeze14 is to be installed or
php5-fpm (>= 5.3.17-1~dotdeb.0) but it is not going to be installed
Depends: php5-common (>= 5.3.17-1~dotdeb.0) but 5.3.3-7+squeeze14 is to be installed
E: Broken packages
So this might be the reason the package is not installed. If indeed this is the problem, how can I pin multiple packages at once? Or should I pin manually each package?