Esto es una receta rápida para configurar y empezar a usar ian, una pequeña aplicación que simplifica algunos de los problemas habituales con los que se enfrenta cualquier mantenedor de paquetes Debian.

Firma GPG

Para poder subir paquetes debian a un repositorio una vez compilados debes firmarlos. El repositorio de paquetes también tiene una clave. Tu clave GPG debe estar firmada con la clave del repositorio. De ese modo cualquiera que vaya a instalar un paquete puede verificar que los paquetes efectivamente corresponden a ese repositorio.

Por eso, lo primero es disponer de una clave GPG. Aquí tienes unos pasos para crearla y comprobarla, en el caso de que no tengas.

Generar clave GPG

$ gpg --gen-key

Los ficheros generados quedan en ~/.gnupg.

Aunque no es necesario en esta receta, es conveniente exportar la clave privada y almacenarla en un lugar seguro:

$ gpg --export-secret-keys -a <huella_digital> > ~/<nombre-fichero>.asc

Listar claves

$ gpg --list-keys

Añadir clave a un servidor (ej: pgp.mit.edu) servidor

$ gpg --keyserver <servidor> --send-key <huella_digital>

Configuración de ian

  • Añadir configuración en ~/.config/ian/config (para ian) o ~/.bashrc (para el sistema).
          DEBFULLNAME="Ana Rubio Ruiz"
          DEBEMAIL=ana.rubio.ruiz@gmail.com
          DEBSIGN_KEYID=<huella_GPG>
          DEBREPO_URL=debrepo@debrepo/shared
  • Ian necesita que un editor por defecto (ej: emacs).
          EDITOR="emacs -nw"

ian prioriza los valores indicados en ~/.config/ian/config por encima de los de ~/.bashrc.

Configuración de dupload

Crear fichero ~/.dupload.conf con:

package config;

$default_host = "debrepo";

$cfg{'debrepo'} = {
    fqdn => "debrepo",
    login => "repouser",
    method => "scpb",
    incoming => "/shared/incoming/",

    # The dinstall on ftp-master sends emails itself
    dinstall_runs => 1,
};

$postupload{'changes'} = 'ssh debrepo "reprepro -V -b /shared processincoming sid-process"';

1;  # DO NOT remove this line!

Configuración de SSH para acceder al repositorio

Generar clave SSH

$ ssh-keygen -b 4096
- CLAVE PÚBLICA SSH: ~/.ssh/id_rsa.pub - CLAVE PRIVADA SSH: ~/.ssh/id_rsa

Configuración SSH

Añadir al fichero .ssh/config:

Host debrepo
    Hostname debrepo.example.net
    User debrepo
    IdentityFile ~/.ssh/id_rsa

Comando básicos ian

Fecha de última versión:
ian release-date -y

Compilar:
ian build -c

Subir paquete:
ian upload



blog comments powered by Disqus