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 datos en ~/.config/ian/config (para ian) o ~/.bashrc (para el sistema). Ian buscará en .bashrc la configuración que necesita si no la encuentra en ~/.config/ian/config:
– ~/.config/ian/config
DEBFULLNAME=“Ana Rubio Ruiz”
DEBEMAIL=ana.rubio.ruiz@gmail.com
DEBSIGN_KEYID=
DEBREPO_URL=debrepoo@debrepo/shared

  • Ian necesita que un editor por defecto (ej: emacs). En caso de no tenerlo, especificamos cuál será en ~/.config/ian/config (para Ian) o en ~/.bashrc (para el sistema). Igual que en el paso anterior, Ian buscará primero en ~/.config/ian/config:
    – ~/.config/ian/config
    EDITOR=“emacs -nw”

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/”,
  1. 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