Suivant: Profils reproductibles, Précédent: Profil par défaut, Monter: Les profils Guix en pratique [Table des matières][Index]
Les manifestes sont pratiques pour garder la liste des paquets et, par exemple, les synchroniser entre plusieurs machines avec un système de gestion de versions.
Les gens se plaignent souvent que les manifestes sont lents à installer quand ils contiennent beaucoup de paquets. C’est particulièrement embêtant quand vous voulez juste mettre à jour un paquet dans un gros manifeste.
C’est une raison de plus d’utiliser plusieurs profils, qui sont bien pratiques pour diviser les manifestes en plusieurs ensembles de paquets de même type. Plusieurs petits profils sont plus flexibles et plus maniables.
Les manifestes ont de nombreux avantages. En particulier, ils facilitent la maintenance :
guix package --upgrade
essaye toujours de mettre à jour les paquets
qui ont des entrées propagées, même s’il n’y à rien à faire. Les manifestes
de Guix résolvent ce problème.
guix
install
, guix upgrade
, etc, ne le peuvent pas, puisqu’elles
produisent un profil différent à chaque fois qu’elles sont lancées, même
avec les même paquets. Voir la discussion sur ce problème.
guix weather -m manifest
pour voir combien de substituts sont disponibles, ce qui peut vous aider à
décider si vous voulez faire la mise à jour maintenant ou un peu plus
tard. Un autre exemple : vous pouvez lancer guix package -m
manifest.scm
pour créer un lot contenant tous les paquets du manifeste (et
leurs références transitives).
Vous devez bien comprendre que même si vous pouvez utiliser les manifestes pour déclarer des profils, les deux ne sont pas strictement équivalents : les profils pour l’effet de bord « d’épingler » les paquets dans le dépôt, ce qui évite qu’ils ne soient nettoyés (voir Invoquer guix gc dans le manuel de référence de GNU Guix) et s’assure qu’ils seront toujours disponibles à n’importe quel moment dans le futur.
Voyons un exemple :
guix environment -m manifest.scm
. Jusqu’ici
tout va bien.
guix pull
entre
temps. Plusieurs dépendances du manifeste ont été mises à jour ; ou bien
vous avez lancé guix gc
et certains paquets requis par le manifeste
ont été nettoyés.
guix environment -m manifest.scm
. Mais maintenant vous devez attendre
que Guix construise et installe des paquets !
Idéalement, vous voudriez éviter de perdre du temps à reconstruire. C’est en
fait possible, tout ce dont on a besoin, c’est d’installer le manifeste dans
un profil et d’utiliser GUIX_PROFILE=/le/profil;
. "$GUIX_PROFILE"/etc/profile
comme on l’a expliqué plus haut : cela
garantie que l’environnement de bidouillage sera toujours disponible.
Avertissement de sécurité : bien que garder d’anciens profils soit pratique, gardez à l’esprit que les anciens paquets n’ont pas forcément reçu les dernières corrections de sécurité.
Suivant: Profils reproductibles, Précédent: Profil par défaut, Monter: Les profils Guix en pratique [Table des matières][Index]