Comment ajouter plus de variantes ou de packages personnalisés à debootstrap?

10

J'ai un ensemble de packages que je souhaite installer avec la variante minibase dans debootstrap. J'ai le plus de mal à trouver comment personnaliser les variantes afin que plus que la base soit installée dans un chroot lorsque debootstrap est exécuté. Une manière d'y parvenir?

Marco Ceppi
la source

Réponses:

10

Il est assez facile d'ajouter votre propre variante avec des packages personnalisés supplémentaires à debootstrap .

Les scripts de configuration / d'exécution de debootstrap se trouvent dans /usr/share/debootstrap/scripts. Créons une allmybasevariante qui comprend tout minbaseavec les packages htopet traceroute.

  1. Ouvrez /usr/share/debootstrap/scripts/precisedans votre éditeur.

    • Notez que ceci, avec de nombreuses versions d'Ubuntu, est un lien symbolique vers /usr/share/debootstrap/scripts/gutsy; si vous souhaitez n'affecter qu'une version spécifique, rompez le lien et faites-en plutôt une copie du script gutsy .
  2. Autour de la ligne 22, recherchez la ligne commençant par variantset ajoutez votre variante personnalisée à la fin:

    variantes - buildd fakechroot minbase allmybase
    
  3. Recherchez la work_out_debs()fonction autour de la ligne 34 et examinez les paramètres par défaut de la basevariable de votre variante "de base" (ici, minbase):

        elif doing_variant fakechroot || faisant_variant minbase; puis
                base = "apt"
    
  4. Ajoutez votre propre variante avec des packages personnalisés à la fin de la fonction:

        elif doing_variant allmybase; puis
                base = "apt htop traceroute"
    
  5. Enregistrez-le, quittez-le et testez-le avec le --print-debsdrapeau "simulation", par exemple

    sudo debootstrap --print-debs --variant = allmybase precis / tmp / prec-chroot
    
    • Dans cet exemple, la sortie montrera que les packages htopet tracerouteseront inclus dans le chroot allmybase .
ish
la source
Wow, je suppose que cela semble presque aussi sale que d'installer une variante et de monter le chroot + apt-get. Merci pour l'information!
Marco Ceppi
Eh bien, une petite douleur vous fera gagner une fois si vous installez la même variante à plusieurs reprises;)
ish
Peut-être que cette option n'existait pas au moment de la question, mais le même effet peut être obtenu debootstrap --include=htop,traceroutesans aucune modification des scripts debootstrap.
raimue