Construir paquetes debian con ian

— [ edit | raw ]

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

Ultra simple tmux recipe

This is a new try to start using tmux. I am absolutly convenced about advantages of tmux, but for some strange reason, I am not able to learn its key combos…

I hope this recipe should be a way to have the very basic functions always at a glance.

Panes
horizontal split C-b %
vertical split C-b "
move cursor C-b
close C-b x
maximize/minimize C-b z
Windows
create C-b c
change C-b
Sessions
detach C-b d
attach tmux a
list tmux ls
kill tmux kill-session -t

eduroam en Android con certificado usando un QR code

El certificado raíz que utiliza la UCLM a día de hoy (13-12-2016) es DigiCert Assured ID Root CA .

La UCLM tiene instrucciones para conectar a eduroam con Android y también explica cómo utilizar un certificado, pero indica que hay que copiar el fichero a la memoria SD.

En lugar de eso, pongo aquí un código QR para descargarlo automáticamente:

qrcode

Plugins en Python

— [ edit | raw ]

Siempre me ha gustado escribir aplicaciones extensibles, pero picarme todo un sistema de plugins me ha parecido tedioso.

Por eso he intentado buscar librerías que me ayuden a crear plugins, aunque siempre he tenido problemas para la distribución de éstos, como me ha pasado con Yapsy.

La verdad es que me he sentido como un auténtico estúpido al descubrir que Python tiene un sistema para escribir plugins muy sencillo de usar. Vamos a ver cómo.

Puedes encontrar el artículo original en: MagMax Blog.

How to annotate/tag stdout and stderr outputs with bash

Lets create a test script test-std.sh:

#!/bin/bash --

echo info
echo error >&2

We will use sed to prepend some text to each output line. To perform redirection we use a less known feature called process substitution.

$ ./test-std.sh 2> >(sed 's/^/err: /g') > >(sed 's/^/out: /g')
out: info
err: error

And… it’s possible to use a different color to each of them too

How to revoke a GPG key

Generate revocation certificate:

gpg -o revocation.asc --gen-revoke F8025C91

Import the certificate to revoke the corresponding key:

gpg --import revocation.asc

Public the revoked key to servers:

gpg --keyserver pgp.mit.edu --send-keys F8025C91

ELK (Elastic + logstash + Kibana) para dummies

Enlazo un tutorial del colega Magmax para montar un entorno básico ELK (ElasticSearch + logstash + Kibana) como sistema de monitorización. Probablemente el que llega más lejos con menos rollo, y con screencast y todo.

Monitorización con ElasticSearch, Kibana y TopBeat

Creating VDI virtual disks for Virtualbox machines (with Vagrant)

When vagrant create Virtualbox machines, disks are created with VMDK format. Therefore, the VDI format has some interesting advantages. This recipe shows a setup to create VDI disks instead VMDK.

Using an actual partition as «virtual» disk for Virtualbox with Vagrant

Virtualbox can use actual partitios for its disks. This task may be simple using the virtual GUI, but in this case, we want automatize the process with Vagrant.

Installing the Ice-3.6.2 packages from ZeroC on Debian

ZeroC provides their own (non-official) Ubuntu packages for the version 3.6. This recipe includes all steps for a successful installation on Debian jessie.