Le problème en utilisant le fichier preferences de cette manière, c’est qu’il faut indiquer tous les paquets provenant des backports qui sont ambigus (autrement dit, dont une autre version se trouve en stable). Pour les paquets correspondants aux applications en elles-mêmes ça ne pose pas de problème, mais pour leurs dépendances (qui peuvent facilement changer au fur et à mesure que les backports sont mis à jour) ça t’impose d’avoir un fichier preferences à jour au moment où tu fais l’install. Une toute petite inattention de ta part et ton install foire (différence entre aptitude -t squeeze-backports install paquet et aptitude install paquet/squeeze-backports avec pour résultat des dépendances non satisfaites).
Exemple : qui te dit qu’Iceweasel 12 ne va pas dépendre d’une lib supplémentaire à prendre dans les backports ? La seule solution pour ne pas avoir de souci est de vérifier que ton fichier preferences est bien à jour avant chaque installation… Super pratique pour une install scriptée…
Ta solution actuelle (2 listes de paquets) est largement plus robuste, ce qui n’est pas difficile vu que la solution via fichier de preferences ne l’est absolument pas !
PS: et avant que tu ne me contredises, je tiens à préciser que ça fait un bon moment que je suis en testing avec pas mal de pinning unstable, et j’ai très régulièrement le choix entre devoir modifier mon preferences, résoudre les dépendances à la main, ou bien utiliser l’option -t pour les paquets concernés (seule la dernière solution étant compatible avec une install automatisée). C’est inévitable avec des dépôts qui changent régulièrement, les backports ne sont absolument pas différents.