I'm trying to install a slightly older version of puppet (2.7.8 as opposed to 2.7.9) for consistency purposes among a cluster of servers I manage. However, when I attempt to do so, apt-get throws a mysterious error:
xxxx@xxx-xxx-xxx-xxx:~$ sudo apt-get install puppet=2.7.8-1puppetlabs1
Reading package lists... Done
Building dependency tree
Reading state information... 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.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
puppet : Depends: puppet-common (= 2.7.8-1puppetlabs1) but 2.7.9-1puppetlabs1 is to be installed
Recommends: rdoc
E: Unable to correct problems, you have held broken packages.
Why is apt-get insisting on installing puppet-common 2.7.9 when it knows that's not a valid dependency? How can I instruct apt-get to just install the correct dependency (without manually installing that package!) and not invent strange reasons not to?
2.7.8 versions of all packages are available in my sources. All dependencies would be satisfied if apt-get would just pick version 2.7.8 of the common package. No relevant packages are installed before this.