Installer les paquets à partir d'une nouvelle version sans construire (apt pinning)

30

J'ai besoin de ces paquets avec la dernière version amont mise à jour pour ubuntu / natty

  • libccid_1.4.5-0ubuntu1_amd64.deb
  • libpcsclite1_1.8.1-0ubuntu1_amd64.deb
  • libpcsclite-dev_1.8.1-0ubuntu1_amd64.deb
  • libusb-1.0-0_1.0.9-0ubuntu1_amd64.deb
  • libusb-1.0-0-dev_1.0.9-0ubuntu1_amd64.deb
  • opensc_0.12.2-1ubuntu1ppa1 ~ natty1_amd64.deb
  • pcscd_1.8.1-0ubuntu1_amd64.deb pcsc-tools_1.4.18-0ubuntu1_amd64.deb

J'ai essayé de les construire à partir de la source avec la mise à jour mais cela a échoué. Je ne suis pas un expert de l'emballage et il y a tellement de tutoriels et de recettes disponibles.

Connaissez-vous un bon didacticiel à jour pour le backport des paquets Ubuntu?

Comment puis-je obtenir des packages à partir d'autres versions sans avoir à les créer moi-même?

    
posée Janning 11.02.2012 - 15:58
la source

1 réponse

35

Vous feriez mieux d’explorer la possibilité d’épingler, voir man apt_preferences .

Supposons que vous êtes sur Oneiric et que vous voulez récupérer ces paquets depuis Precise.

Si vous lisez le man , vous verrez que j'ai copié / collé les sections pertinentes et que vous venez de modifier le nom de la version

/etc/apt/preferences :

Package: libccid
Pin: release n=precise
Pin-Priority: 990

Package: libpcsclite*
Pin: release n=precise
Pin-Priority: 990

Package: libusb*
Pin: release n=precise
Pin-Priority: 990

Package: opensc
Pin: release n=precise
Pin-Priority: 990

Package: pcscd
Pin: release n=precise
Pin-Priority: 990


Explanation: Uninstall or do not install any Ubuntu-originated
Explanation: package versions other than those in the oneiric release
Package: *
Pin: release n=oneiric
Pin-Priority: 900

Package: *
Pin: release o=Ubuntu
Pin-Priority: -10

Ensuite, j'ai copié mon /etc/apt/sources.list à /etc/apt/sources.list.d/precise.list et remplacé toutes les occurrences de oneiric par precise. Puis couru apt-get update et enfin apt-get upgrade .

$ sudo apt-get upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be upgraded:
  libpcsclite1 libusb-0.1-4 libusb-1.0-0 libusbmuxd1
4 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 86.0 kB of archives.
After this operation, 88.1 kB disk space will be freed.
Do you want to continue [Y/n]? y
Get:1 http://us.archive.ubuntu.com/ubuntu/ precise/main libusb-0.1-4 amd64 2:0.1.12-20 [17.6 kB]
Get:2 http://us.archive.ubuntu.com/ubuntu/ precise/main libusb-1.0-0 amd64 2:1.0.9~rc3-2 [30.9 kB]
Get:3 http://us.archive.ubuntu.com/ubuntu/ precise/main libpcsclite1 amd64 1.7.4-2ubuntu1 [23.5 kB]
Get:4 http://us.archive.ubuntu.com/ubuntu/ precise/main libusbmuxd1 amd64 1.0.7-2 [14.1 kB]
 Fetched 86.0 kB in 0s (124 kB/s) 

Pour une raison quelconque, pcscd et opensc n’ont pas été installés, probablement parce qu’ils n’ont pas été installés au départ, donc il n’ya rien à mettre à niveau, ce n’est pas grave, je peux installer exactement cette version en utilisant comme référence précise .

apt-get install opensc pcscd -t precise

Prenez note de l'utilisation de -t , packagename/precise fonctionnerait également.

et il y a les paquets que vous voulez, de la dernière version, et seulement ces paquets , ils seront également mis à jour automatiquement. Si vous ne les voulez plus, supprimez simplement les entrées de /etc/apt/preferences et la prochaine fois que vous exécuterez apt-get upgrade , elles seront supprimées. Si vous supprimez l'intégralité du fichier prefs, assurez-vous de supprimer le fichier precise.list sources et notre système essaiera de mettre à jour le dernier ensemble de paquets. De plus, si vous décidez de procéder à une dist-upgrade plus tard, vous devrez supprimer le fichier prefs complet et il serait probablement judicieux de supprimer les autres sources. aucun paquet à mettre à jour.

Apt épinglant n'est pas si difficile, il vous suffit de creuser un peu et d'expérimenter. Tous les verbes pour n= etc se trouvent en examinant apt-cache policy .

C'est pourquoi les administrateurs chevronnés se moquent d'apt vs yum. Vous pouvez mettre à jour les services de manière concise et les maintenir à jour de manière propre, déterministe et maintenable.

Plus de paquets de compilation non plus.

Je vous suggère fortement de lire l'intégralité de la page de manuel et de vous familiariser avec le concept et de lire d'autres guides sur la mise en correspondance avant de continuer avec cette proposition. Bonne chance et amusez-vous!

lien

    
réponse donnée ppetraki 11.02.2012 - 17:29
la source

Lire d'autres questions sur les étiquettes