For each entry (stable, testing, unstable) you have pin-priority 500. You shouldn't use pin > 1000. I use 1001 only when I want to downgrade something. I have testing+sid+experimental entries specified in /etc/apt/sources.list
and the following /etc/apt/preferences
file:
Package: *
Pin: release o=Debian,a=testing
Pin-Priority: 900
Package: *
Pin: release o=Debian,a=experimental
Pin-Priority: 130
The value 500 is default for unstable. So, let's try to check iceweasel:
# apt-cache policy iceweasel
iceweasel:
Installed: (none)
Candidate: 17.0.10esr-1~deb7u1
Version table:
26.0-1 0
130 http://ftp.pl.debian.org/debian/ experimental/main amd64 Packages
24.2.0esr-1 0
500 http://ftp.pl.debian.org/debian/ sid/main amd64 Packages
17.0.10esr-1~deb7u1 0
900 http://ftp.pl.debian.org/debian/ testing/main amd64 Packages
So, if I tried to install iceweasel, it would be downloaded from the testing branch because it has the highest priority.
Try to change the priorities to:
Package: *
Pin: release a=wheezy
Pin-Priority: 900
Package: kpcli
Pin: release a=jessie
Pin-Priority: 910
"... But it is not going to be installed" generally means that a serious dependency conflict will ensue if it's allowed to go on.
Try the following command:
aptitude why-not citadel-mta
why-not
basically checks dependencies and returns the reasons it would have to not fill a particular dependency automatically.
In the case of my system at home:
shadur@leviathan:~$ aptitude why-not citadel-mta
i exim4-daemon-light Conflicts mail-transport-agent
p citadel-mta Provides mail-transport-agent
Apparently citadel-mta is a full-on MTA and will therefore replace whatever mail-transport-agent package you currently have installed. Explicitly telling it to install citadel-mta as well should be enough to break the deadlock.
NOTE: Doing so means your current mail server software will be replaced by the one that comes with citadel. Make very sure that that's what you want before you do this.
Best Answer
Depending on the configuration of the repository you wish to remove,
apt list --installed
might provide enough information to identify packages you need to uninstall or downgrade. Another option, if the repository defines a unique “Origin”, is to useaptitude search '~i ~Oorigin'
(replacingorigin
as appropriate).(This is a generic answer; if you edit your question to specify exactly which source you want to remove, I can add a specific answer.)