NOM¶
apt-grip - Etendre Emdebian Grip pour ajouter des paquets Debian a la volee
Synopsis¶
$ sudo apt-grip foo bar baz
$ sudo apt-grip -M http://ftp.fr.debian.org/debian/ foo bar baz
$ sudo apt-grip --clean-cache
Description¶
Emdebian Grip a un nombre limite de paquets dans le depot principal,
principalement pour reduire la taille du cache de donnees apt. A l'occasion,
des paquets individuels Debian standards doivent etre ajoutes a une machine
isolee utilisant Emdebian Grip.
apt-grip a ete ecrit dans ce but.
apt-grip a besoin de la prise en charge de DEB_VENDOR dans dpkg pour
determiner comment le paquet devrait etre "gripped". L'editeur
(X vendor X) par defaut est "emdebian-grip" mais prenez en
consideration la prochaine section sur les limitations de apt-grip si vous
songez l'utiliser sur un systeme Debian non-modifie.
Le cas usuel est que le systeme a deja ete mis a jour vers Emdebian Grip avant
que
apt-grip soit utilise.
Contacter la liste de diffusion debian-embedded@lists.debian.org pour des
demandes d'ajout de paquets aux depots Emdebian Grip directement.
Le telechargement des fichiers de Paquets peut durer un certain temps, donc pour
X gripper X un ensemble de paquets, il faut soit specifier tous les
paquets en une seule commande soit utiliser l'option "--keep-cache"
pour chaque operation et utiliser l'option "--clean-cache" a la fin.
Si le peripherique executant Grip n'a pas assez d'espace pour telecharger et
traiter le(s) paquet(s), lancer apt-grip sur une autre machine en utilisant
les deux options "--build-only" et "--arch".
Les archives traitees seront dans
/var/lib/apt-grip/output/ et peuvent
etre copiees vers le peripherique directement ou en incluant les paquets dans
un depot accessible localement. Une fois installe sur le peripherique Grip,
utiliser "apt-grip -c" sur la machine de construction pour effacer
le cache. "--keep-cache" est implicite lorsque
"--build-only" est utilise.
Noter aussi que, tout comme avec le reste du traitement d'Emdebian,
Install-Recommends est toujours desactive, de sorte que si vous avez besoin
d'un paquet qui est seulement recommande par des paquets dans la liste donnee
a "apt-grip", ce paquet devra etre ajoute a la liste explicitement.
Limitations¶
Installer des paquets depuis des depots autre que les sources apt normales (en
particulier si ces paquets sont subsequemment modifies comme dans emgrip)
listera ceux-ci comme X local X ou X obsolete X dans les
gestionnaires de paquet. Les paquets convertis ne peuvent etre mis a jour sans
appeler a nouveau "apt-grip" parce que "apt-get" ne
connait pas le miroir temporaire utilise par "apt-grip" pour
telecharger les paquets. Ceci peut poser des problemes si les dependances de
tels paquets doivent etre mises a jour. Il est possible que le systeme
principal apt essaye de supprimer ces paquets locaux pour proceder a une mise
a jour du systeme principal.
La meilleure option est d'ajouter de tels paquets au depot que vous utilisez
pour vos sources apt principales. (Utiliser le paquet
emdebian-grip-server pour creer votre propre depot.)
L'action de X "Gripping" X d'un paquet signifie creer une
nouvelle version (avec le suffixe de version em1) avec moins de fichiers dans
le nouveau paquet. Voir emgrip (1) pour plus d'information sur ce processus.
Changer la chaine de version implique le changement de certaines dependances X
en particulier les dependances strictes. Ceci implique que
apt-grip
pourrait echouer avec certaines combinaisons de paquets.
"apt-grip" utilise l'option "--reinstall" avec
apt-get pour pallier a certaines de ces situations.
Problemes de dependance stricte¶
Si un paquet source construit plusieurs paquets binaires, ou au moins un paquet
a une dependance stricte sur un des autres paquets binaires et un de ces
paquets binaires est deja installe depuis Debian, il sera necessaire
d'installer des versions Grip des deux paquets binaires impliques de sorte que
la dependance stricte puisse etre satisfaite.
Source: foo
Package: foo
Depends: bar (= 0.0.1)
Package: bar
$ sudo apt-grip foo bar
Dans l'exemple ci-dessus,
foo_0.0.1_amd64.deb deviendra
foo_0.0.1em1_amd64.deb et obtiendra une dependance stricte sur
"bar (= 0.0.1em1)" par
emgrip.
Miroir par defaut¶
apt-grip utilise "
http://ftp.uk.debian.org/debian/" comme
miroir Debian par defaut. Utiliser l'option -M|--mirrror pour le changer.
SecureApt¶
Use the "--no-auth" option to allow the use of unauthenticated
repositories. Note that this disables authentication against all available
repositories.
Mise a niveau vers Grip¶
Changez votre liste de sources de miroirs debian vers le miroir grip emdebian.
par exemple, pour unstable :
deb http://www.emdebian.org/grip/ unstable main
(Emdebian Grip ne fonctionne qu'avec les suites Debian : unstable, sid,
testing, squeeze, stable, lenny, lenny-proposed-updates.)
Puis mettez a jour et a niveau :
$ sudo apt-get update
$ sudo apt-get clean
$ sudo apt-get upgrade
$ sudo apt-get dist-upgrade
(Notez qu'
apt-get signalera habituellement la possibilite de liberer
plusieurs centaines de megaoctets sur le systeme quand certains paquets Debian
sont mis a jour vers Emdebian Grip mais il faudra encore suffisamment de place
pour reellement telecharger et depaqueter les nouveaux paquets.) Utilisez
"apt-get clean" apres la mise a niveau pour recuperer plus d'espace
libre.
Composants de Grip¶
Grip separe encore plus l'archive en creant de nouvelles zones pour les paquets
de developpement, deboguage, documentation ou Java, toujours pour reduire la
taille finale des donnees de paquet mises en cache sur le systeme. Pour
utiliser "apt-grip" sur un systeme Grip Emdebian, verifiez d'avoir
ajoute le composant
dev aux sources d'apt :
deb http://www.emdebian.org/grip/ unstable main dev
De meme pour
doc,
debug et
java. D'autres composants
peuvent etre ajoutes de temps en temps, donc verifiez le site web :
http://www.emdebian.org/grip/search.php
Ajoutez plus de composants si necessaire :
deb http://www.emdebian.org/grip/ unstable main dev debug java
Emdebian Baked¶
apt-grip a ete ameliore pour permettre de creer des paquets a utiliser avec
Emdebian Baked. Par consequent, la prise en charge d'architecture exterieure
ainsi que la possibilite d'ignorer l'etat des paquets actuellement installes
sur le materiel executant apt-grip ont ete ajoutes.
L'aspect complique de cette operation est de gerer les paquets mis a jour et les
dependances modifiees. apt-grip ne peut servir qu'avec Debian stable.
emdebian-grip n'a pas ete retroporte vers Lenny, donc la machine de
developpement doit etre sous Debian Squeeze ou Sid (testing ou unstable) pour
mettre en place un systeme de fichier racine Baked base sur Lenny.
Exemple de commande apt-grip pour Baked¶
$ sudo apt-grip -a mipsel -V emdebian-baked -S stable dash snmpd
Les paquets Baked existeront alors dans /var/lib/apt-grip/output/, y compris
toutes les dependances des paquets indiques. Ils peuvent alors etre ajoutes
dans un depot reprepro existant :
$ reprepro includedeb stable /var/lib/apt-grip/output/*.deb
Si votre depot est prevu pour plusieurs architectures, verifiez d'avoir bien
enleve ou ignore les paquets X Architecture: all X deja traites par
apt-grip :
$ sudo rm /var/lib/apt-grip/output*_all.deb
Puis utilisez l'option -A pour que reprepro n'integre que l'architecture
ajoutee :
$ reprepro -A armel includedeb stable /var/lib/apt-grip/output/*_armel.deb
Pour plus de renseignements, consultez le site d'Emdebian :
http://www.emdebian.org/baked/