¿Cómo agrego más variantes o paquetes personalizados a debootstrap?

10

Tengo un conjunto de paquetes que deseo instalar junto con la variante de minibase en debootstrap. Me está costando mucho descubrir cómo personalizar las variantes para que se instale algo más que la base en un chroot cuando se ejecuta debootstrap. ¿Alguna forma de lograr esto?

Marco Ceppi
fuente

Respuestas:

10

Es bastante fácil agregar su propia variante con paquetes personalizados adicionales a debootstrap .

Los scripts de configuración / tiempo de ejecución de debootstrap se encuentran en /usr/share/debootstrap/scripts. Creemos una allmybasevariante que incluya todo minbasejunto con los paquetes htopy traceroute.

  1. Abrir /usr/share/debootstrap/scripts/preciseen tu editor.

    • Tenga en cuenta que esto, junto con muchas versiones de Ubuntu, es un enlace simbólico a /usr/share/debootstrap/scripts/gutsy; si desea afectar solo una versión específica, rompa el enlace y haga una copia del guión valiente .
  2. Alrededor de la línea 22, encuentre la línea que comienza con variantsy agregue su variante personalizada al final:

    variantes - buildd fakechroot minbase allmybase
    
  3. Busque la work_out_debs()función alrededor de la línea 34 y observe la configuración predeterminada de la basevariable para su variante "base" (aquí minbase):

        elif haciendo_variante fakechroot || doing_variant minbase; luego
                base = "apt"
    
  4. Agregue su propia variante con paquetes personalizados al final de la función:

        elif haciendo_variante allmybase; luego
                base = "apt htop traceroute"
    
  5. Guarde, salga y pruébelo con la --print-debsbandera de "simulación", p. Ej.

    sudo debootstrap --print-debs --variant = allmybase precisa / tmp / prec-chroot
    
    • En este ejemplo, la salida mostrará que los paquetes htopy traceroutese incluirán en el chroot allmybase .
ish
fuente
Wow, supongo que esto parece casi tan sucio como simplemente instalar una variante y montar el chroot + apt-get. ¡Gracias por la información!
Marco Ceppi
Bueno, un poco de dolor una vez te hará ganar mucho si instalas la misma variante repetidamente;)
ish
Tal vez esa opción no existía en el momento de la pregunta, pero se puede lograr el mismo efecto debootstrap --include=htop,traceroutesin modificaciones en los scripts de debootstrap.
raimue