Recent blog entries for olea

29 Dec 2015 (updated 29 Dec 2015 at 09:09 UTC) »

Sonic Pi packaged for Fedora

Maybe you know about Sonic Pi, the system to learn programming playing with music. Now I want to give it a try in my system (Fedora 23) and my sysadmin-TOC syndrome obligues me first to package it into RPM. Now I have good and bad news. The good news are I have a testing release of Sonic Pi for Fedora 23. It includes a desktop file too. The bad news are... it doesn't work yet. Sonic Pi uses jackd while a common Fedora Workstation uses pulseaudio and both try to manage the sound device by themselves.

After a quick googling seems possible to get a procedure for using some working configuration for puleaudio+jackd but I didn't have the time to find and check them. Meanwhile, if the RPM package is useful for someone here it is.

This package depends of Supercollider as provided by Planet CCRMA package repository. To use this Sonic Pi maybe you'll want to add the repository to your system.

Please feedback here if you know how to make sound to work.

PD: Post edited to add references to Planet CCRMA repositorie.

Syndicated 2015-12-29 04:40:00 (Updated 2015-12-29 09:09:55) from Ismael Olea

Running EPF (Eclipse Process Framework) in Linux

For many time I wanted to learn to use EPF but technical reasons always stoped me. Blame me because I'm not an Eclipse guy and I'm not into its eclipse-isms but until today I have not been able to launch it. Now, wirth this really simple recipe you'll be able to run it.

Initial technical scenario:

Then unzip the file and execute:

$ unzip
$ cd epf-composer
[epf-composer]$ ./epf
Java HotSpot(TM) 64-Bit Server VM warning: You have loaded library /home/olea/epf-composer/plugins/org.eclipse.equinox.launcher.gtk.linux.x86_1.1.2.R36x_v20101019_1345/ which might have disabled stack guard. The VM will try to fix the stack guard now.
It's highly recommended that you fix the library with 'execstack -c <libfile>', or link it with '-z noexecstack'.

(Epf:27092): Gtk-WARNING **: Unable to locate theme engine in module_path: "adwaita",

(Epf:27092): Gtk-WARNING **: Unable to locate theme engine in module_path: "adwaita",
Gtk-Message: Failed to load module "pk-gtk-module"
Gtk-Message: Failed to load module "canberra-gtk-module"

If you, like me, don't know nothing about Eclipse maybe you are doomed because the real problem is everything but clear. What you are having is the EPF application asking for a 32 bits java VM runtime. Nothing more, nothing less. But now is very easy to fix:
  1. just get a 32 bits java VM
  2. adjust epf-composer/epf.ini to use it
In my case I've installed a Java 1.7 (in my case from the same Russian Fedora repo):

and then change ~/epf-composer/epf.ini from this:


to this:


Please note the precise path may be different in your system but in any case it should point to a 32 bit java binary.

Then you just need to launch EPF and you are ready:

$ epf-composer/epf


Syndicated 2015-12-29 00:17:00 from Ismael Olea

De visita en Madrid

Con la excusa de participar en el Taller de nanotecnología casera organizado por MediaLab Prado, de la última visita en Madrid me traigo entre otras varias cosas: 

  • conocer los trabajos de En-Te Hwu que han llevado a la creación de un microscopio de fuerza atómica de bajo coste y una alternativa OSS en desarrollo: OpenAFM;
  • descubrir el alucinante proyecto de microscopio de barrido láser opensource de Raquel López, del cual espero ansioso novedades de las versiones más avanzadas;
  • participar en la fundación del grupo de trabajo de Microscopía DIY creado en MediaLab Prado a consecuencia y por los participantes del taller impartido por En-Te;
  • visitar por primera vez a los amigos del Makespace en Madrid, que es otro punto de encuentro de potencial BESTIAL;
  • descubrir a la gente del BivosLab/Biocore, que están haciendo cosas que tal vez podamos aplicar también en el Club de Cacharreo;
  • el agradable reencuentro con los amigos de MediaLab Prado, de los cuales cada vez soy más admirador y que utilizo como inspiración para construir el HackLab Almería;
  • más equipos para la colección del museo de retroinformática (gracias Kix);
  • tratos con la realeza (sí, realmente estoy en esa foto, con mi camiseta celeste) ZOMG;
  • y hasta la petición de Jesús Cea de escribir mis experiencias «pastoreando los procomunes».

Un viaje preñado de... TODO.

Syndicated 2015-11-22 03:19:00 from Ismael Olea

5 Oct 2015 (updated 5 Oct 2015 at 20:10 UTC) »

Los sueldos en el mundo de la informática

Sólo como referencia, he encontrado esta publicación del ministerio de trabajo de los EEUU: May 2014 National Occupational Employment and Wage Estimates con las estadísticas de sueldos de las profesiones informáticas en ese país:

Occupation code Occupation title (click on the occupation title to view its profile) Level Employment Employment RSE Employment per 1,000 jobs Median hourly wage Mean hourly wage Annual mean wage Mean wage RSE
11-3021 Computer and Information Systems Managers detail 330360 0.8% 2,445 $61.37 $65.52 $136,280 0.4%
15-0000 Computer and Mathematical Occupations major 3834180 0.5% 28,374 $38.18 $40.37 $83,970 0.5%
15-1100 Computer Occupations minor 3692980 0.5% 27,329 $38.17 $40.31 $83,840 0.5%
15-1111 Computer and Information Research Scientists detail 24210 4.2% 0,179 $52.09 $54.42 $113,190 1.4%
15-1120 Computer and Information Analysts broad 608500 0.9% 4,503 $40.13 $42.25 $87,890 0.3%
15-1121 Computer Systems Analysts detail 528320 0.9% 3,910 $39.76 $41.98 $87,320 0.4%
15-1122 Information Security Analysts detail 80180 2.0% 0,593 $42.74 $44.04 $91,600 0.6%
15-1130 Software Developers and Programmers broad 1492040 0.8% 11,042 $43.90 $45.81 $95,280 0.8%
15-1131 Computer Programmers detail 302150 1.4% 2,236 $37.28 $39.75 $82,690 1.3%
15-1132 Software Developers, Applications detail 686470 1.2% 5,080 $45.92 $47.85 $99,530 1.1%
15-1133 Software Developers, Systems Software detail 382400 1.6% 2,830 $49.46 $50.98 $106,050 0.6%
15-1134 Web Developers detail 121020 1.5% 0,896 $30.52 $33.02 $68,670 0.7%
15-1140 Database and Systems Administrators and Network Architects broad 617680 0.6% 4,571 $38.87 $40.85 $84,970 0.2%
15-1141 Database Administrators detail 112170 1.0% 0,830 $38.60 $39.56 $82,280 0.3%
15-1142 Network and Computer Systems Administrators detail 365430 0.8% 2,704 $36.44 $38.35 $79,770 0.3%
15-1143 Computer Network Architects detail 140080 1.4% 1,037 $47.32 $48.42 $100,710 0.4%
15-1150 Computer Support Specialists broad 738030 0.7% 5,462 $24.22 $26.42 $54,960 0.3%
15-1151 Computer User Support Specialists detail 563540 0.8% 4,170 $22.89 $24.76 $51,500 0.3%
15-1152 Computer Network Support Specialists detail 174490 1.3% 1,291 $29.72 $31.80 $66,140 0.5%
15-1199 Computer Occupations, All Other detail 212510 1.0% 1,573 $40.10 $41.12 $85,520 1.0%

Ojalá os sirvan.

Syndicated 2015-10-05 23:58:00 (Updated 2015-10-05 20:10:45) from Ismael Olea

How after an upgrade my /etc/sysconfig/docker-storage got me mad

I have a running docker service in a Fedora 21 sustem for a while. Recently I got some disgusting erros preventing restart docker:

device-mapper: table: 253:7: thin: Couldn't open thin
internal device 

I am a docker newbie so I lost a lot of time thinking if my thin device got corrupt or whatever. Indeed I openened an issue (#16341) to the docker project to report it. But now I conclude is not an upstream error but a Fedora's packaging one.

The problem was caused in this regular update:

which did this:
+DOCKER_STORAGE_OPTIONS=--storage-driver devicemapper --storage-opt
-dm.fs=xfs --storage-opt dm.thinpooldev=/dev/mapper/vg_patxuko-docker--pool

And after the next system reboot the docker service was unable to restart. Removing the DOCKER_STORAGE_OPTIONS value returned system to service.

More details at this comment.

Hope it helps


Syndicated 2015-09-19 09:34:00 from Ismael Olea

Compiling node.js for Android Lollipop

While participating in the Nordic IoT Hackathon 2015 our team Hello North (wrongly tagged as «HackLab team») wanted to explore the potential of running node.js applications running native in Android.

Happily this was solved by Yaron Y. Goland and described in a post. Using his method I've compiled node.js against android-ndk-r10d running the example on a 4.2.2 rooted device.

The next step was to try in a unrooted one, but only got at first a 5.0 Lollipop one. Execution failed with a error: only position independent executables (PIE) are supported. error message. Some investigation got me to a solved bug report. The magic trick seems to be just this patch.

It took me some time to understand how to add this to the node.js building configuration system but seems got fixed just like this:

--- /home/olea/node/android-configure~  2015-04-11 02:46:04.063966802 +0200
+++ /home/olea/node/android-configure   2015-04-11 01:56:34.470154253 +0200
@@ -6,14 +6,16 @@
     --toolchain=arm-linux-androideabi-4.8 \
     --arch=arm \
     --install-dir=$TOOLCHAIN \
-    --platform=android-9
+    --platform=android-16
 export AR=arm-linux-androideabi-ar
 export CC=arm-linux-androideabi-gcc
 export CXX=arm-linux-androideabi-g++
 export LINK=arm-linux-androideabi-g++
+export CPPFLAGS="-fPIE"
+export LDFLAGS="-fPIE -pie -L$PREFIX/lib"

And this is the test:


PS: Just checked the same build using android-16 platform runs in 4.2.2. ¡Double Yepa!

Syndicated 2015-04-11 06:20:00 from Ismael Olea

Qué es el procomún

El siguiente texto lo he preparado a la sazón del programa de actividades complementarias del Almería Creative Commons Film Festival, el primer festival, y casi la primera actividad, en Almería exclusivamente dedicado a este mundo. Me ha gustado tanto que he querido publicarlo en mi propio blog. Aquí queda:


El DRAE lo define como

        ( De pro, provecho, y común).
        1. m. Utilidad pública.

pero el filósofo Antonio Lafuente va mucho más allá:

«lo que es de todos y de nadie al mismo tiempo»

Para Antonio la expresión procomún es la traducción al español más acertada para el término inglés commons. Pero ¿tiene que ver el procomún con nuestra vida diaria? Absolutamente: el aire, el futuro, los sentimientos, el ADN, todos son procomunes cotidianos, casi personales. Otros son más distantes pero igualmente indispensables: las pesquerías, parques naturales… la lista es ¿infinita?. Y tenemos otros procomunes que están floreciendo avivados por el galopante desarrollo tecnológico: el software libre, la Wikipedia, Internet y la Web dentro de ella. El mismo HackLab Almería es un modesto procomún que nos empeñamos en construir para ponerlo a vuestra disposición.

Syndicated 2015-03-10 16:00:00 from Ismael Olea

18 Feb 2015 (updated 18 Feb 2015 at 18:07 UTC) »

¿Cambios en la AC FNMT-RCM? Probando el servidor OCSP

A raíz de un hilo en Twitter sobre la inexistencia del servicio de CRL de la Autoridad de Certificación de la FNMT sólo se me ha ocurrido que en vez de dedicarme a mis responsabilidades me era imperioso saber qué se estaba cociendo... La noticia más chocante es la actividad reciente en la infame entrada #435736 del bugzilla de Mozilla (abierta desde 2008 para que Mozilla acepte el certificado raiz de la AC FNMT). Parece que por fin alguien se está aplicando a resolver el problema. Y entre las perlas más suculentas allí recogidas está un documento titulado General Certification Practices Statement en el que aparecen detalles como, precisamente, las URIs de publicación de los CRL o los varios servicios OCSP aparentemente disponibles. Si eres de los que han estudiado anteriormente el uso de CERES-FNMT probablemente hayas levantado una ceja. Sí: parece que están habilitando por fin estos servicios. El que no conozca la causa de nuestra sorpresa deberá saber que hasta ahora el servicio de validación de certificados de CERES FNMT para certificados de usuario final (por ejemplo de ciudadanos corrientes y molientes) ha sido de pago (ver ilustración). Para algunos esta ha sido otra de las causas que han lastrado la adopción de la firma digital en España.

Entre los detalles me han llamado la atención las URIs de los servicios OCSP:

y claro, inmediatamente he querido verificar si ya estaban operativos, con la triste circunstancia de que no tengo ni idea de cómo hacerlo. Tras algo de investigación y con oportunismo de corta y pega he dado con una orden que creo serviría:

openssl ocsp -issuer AC_Raiz_FNMT-RCM_SHA256.cer -serial 0x36f11b19 -url -CAfile AC_Raiz_FNMT-RCM_SHA256.cer 
  • -issuer AC_Raiz_FNMT-RCM_SHA256.cer el certificado raiz de la AC en cuestión;
  • -serial 0x36f11b19 el número de serie de un certificado FNMT emitido en 2005 y caducadísimo;
  • -url la URI del servicio OCSP que usaremos, en este caso he elegido el que arriba aparece denominado «ROOT AC. Access» porque me ha parecido el más general para el servicio de particulares comparado con los otros dos;
  • -CAfile AC_Raiz_FNMT-RCM_SHA256.cer realmente no sé porqué habría de usar este parámetro, entiendo que es para verificar el resultado ofrecido por el servicio OCSP y todos los ejemplos que he encontrado lo usan de alguna forma; curiosamente sólo he conseguido eliminar los mensajes de error usando el mismo certificado que en -issuer pero no sé si es el comportamiento correcto o si en este caso funciona así por ser un certificado raiz autofirmado.

El resultado obtenido es el siguiente:

Response verify OK
0x36f11b19: good
    This Update: Nov 18 12:11:20 2014 GMT
    Next Update: May 17 11:11:20 2015 GMT

Y podréis decir «pues qué bien, ¿no?». O no. No lo sé. Ignoro los intríngulis de protocolo OCSP pero me esperaba  otra respuesta para un certificado caducado hace más de ocho años. El  caso es el que servicio sí está levantado y podemos ver más detalles usando la opción -text de openssl oscp:

OCSP Response Data:
    OCSP Response Status: successful (0x0)
    Response Type: Basic OCSP Response
    Version: 1 (0x0)
    Produced At: Feb 18 16:27:29 2015 GMT
    Certificate ID:
      Hash Algorithm: sha1
      Issuer Name Hash: BADF8AE3F7EB508C94C1BAE31E7CDC3A713D4437
      Issuer Key Hash: F77DC5FDC4E89A1B7764A7F51DA0CCBF87609A6D
      Serial Number: 36F11B19
    Cert Status: good
    This Update: Nov 18 12:11:20 2014 GMT
    Next Update: May 17 11:11:20 2015 GMT

El caso es que he probado a usar variantes del número serie aleatorias así como de certificados en vigor y siempre da un «good» por respuesta. Y lo poco que me ha podido contar alguien más familiarizado con la tecnología de AC es que este tipo de comportamiento en un servicio OCSP sería normal.


  • El servicio OCSP de FNMT, o al menos el que he usado, está levantado, sí, pero ¿ya está realmente operativo?
  • ¿Es correcta mi manera de invocarlo desde openssl? no estoy seguro;

Otras conclusiones:

Diría que efectivamente parece FNMT se ha tomado en serio configurarse como una autoridad de certificación seria. Por fin. Supongo que ha podido la presión de al menos los usuarios corporativos públicos que últimamente están emitiendo sus certifcados X509 de servidor a través de Camerfirma (verbigracia la Agencia Tributaria), supongo que cansados de que los usuarios menos avezados se hagan un lío con el proceso de instalación del certificado raiz adecuado y de no saber interpretar correctamente los mensajes de precaución de los navegadores. También parece que empiezan a dejar de usar el nombre Ceres para referirse al servicio. Al menos ha sido mi impresión.

Si alguien detecta errores en lo aquí mostrado estaré encantado de corregir lo que haga falta.


Syndicated 2015-02-18 22:05:00 (Updated 2015-02-18 18:07:10) from Ismael Olea

#AllTrials: campaña de cabildeo a los eurodiputados

Desde informan de los avances en la campaña para que la Unión Europea regule la transparencia de los resultados de todos los ensayos clínicos que se realicen a la hora de estudiar posibles nuevas medicinas.

Para el siguiente paso nos solicitan dirigirnos a nuestros eurodiputados para hacerles llegar una carta pidiéndoles el voto a favor del llamado informe Willmott en una votación que tendrá lugar el próximo 3 de abril. Me he tomado la libertad de traducirla a español y ponerla a disposición de todos los interesados:

Estimado parlamentario:

Me dirijo a usted para rogarle que apoye al Informe Willmot acerca de la Regulación de Ensayos Clínicos.

El próximo 3 de abril de 2014 suya será la oportunidad de votar a favor de aumentar significativamente la transparencia de los datos obtenidos en las pruebas clínicas. Una vez que la regulación esté en marcha todas las compañías farmacéuticas y los patrocinadores no comerciales de ensayos clínicos tendrán la obligación de:

  • enviar un resumen de los resultados a una base de datos accesible públicamente en el plazo de un año tras concluir la investigación;
  • enviar un resumen comprensible para un observador neutral;
  • enviar los informes completos de estudios clínicos de los ensayos cuando se solicite la puesta en el mercado de una medicina;
  • registrar o publicar ensayos anteriores si con ellos se pretende respaldar solicitudes para nuevos ensayos;
  • someterse a penalizaciones económicas si no se cumplen los requisitos de transparencia.

Es de enfatizar que estas reglas aplicarán en cualquier caso, no importa si el resultado del ensayo ha sido exitoso, un fracaso o inconcluyente.

Aproximadamente la mitad de todos los ensayos clínicos no han sido publicados. Algunos siquiera han sido registrados. Si no se toman medidas urgentes, el detalle de qué es lo que se ha hecho y qué se descubrió durante los ensayos podría perderse para siempre, en perjuicio de elecciones de tratamientos, oportunidades perdidas para hacer buena medicina y ensayos que habrían de ser repetidos innecesariamente.

¿Va a ayudar a mejorar la seguridad de los pacientes, a la ciencia más sólida y al avance de la medicina votando a favor del informe el 3 de abril?

Atentamente (el signatario)

La idea es enviar una copia de esta carta a nuestros europarlamentarios. También tenéis disponible el enlace a las páginas de su perfiles en la web del Parlamento Europeo, que a su vez contienen al menos el correo electrónico, en un único fichero pdf.

Desde aquí sólo puedo animaros a apoyar este extraordinario ejercicio de transparencia dirigiéndoos a vuestros parlamentarios.

Syndicated 2014-02-05 03:10:00 from Ismael Olea

Updating X.509 certificates for CentOS

My SSL/TLS certificate has expired so I need to request a new one and I'm summing here all the process.

As my current configuration is more or less a mess, I'm starting from the very begining but I assume you are registered at and you are able to request server certificates for your verified domains. I'll use my server as the hostname example.

The better way to me is to use key and CSR creation script (which uses openssl), specially needed when you want to add several domains to the certificate.
# sh csr
Private Key and Certificate Signing Request Generator
This script was designed to suit the request format needed by
the CAcert Certificate Authority.

Short Hostname (ie. imap big_srv www2): tormento
FQDN/CommonName (ie. :
Type SubjectAltNames for the certificate, one per line. Enter a blank line to finish
SubjectAltName: DNS:
Running OpenSSL...
Generating a 2048 bit RSA private key
writing new private key to '/root/tormento_privatekey.pem'
Copy the following Certificate Request and paste into CAcert website to obtain a Certificate.
When you receive your certificate, you 'should' name it something like tormento_server.pem


The Certificate request is also available in /root/tormento_csr.pem
The Private Key is stored in /root/tormento_privatekey.pem

Note: I found the genkey tool (from the crypto-utils package) takes a lot of more time to generate a same key lenght. Probably due to some kind design goal. I think you could use genkey to generate the key and the csr script for the multi-dns CSR request.

Then I move files to correct systems places:

mv /root/tormento_csr.pem /etc/pki/tls/certs/
mv /root/tormento_privatekey.pem /etc/pki/tls/private/

Then I ask for a certification at CAcert website. CAcert recomends to select a Class 3 root certificate.

Cut and paste the certificate from the browser into the system:

# cat > /etc/pki/tls/certs/

You can check the certificate is correct using openssl. And you'll receive an email from CAcert reporting about the new certificate.

Then you can configure your applications to use the new crypto key and certificate.


These are the applications I've configured for my needs. You have other configuration examples at CAcert website.


# grep tls /etc/postfix/

smtpd_tls_key_file = /etc/pki/tls/private/
smtpd_tls_cert_file = /etc/pki/tls/certs/
smtpd_tls_CAfile = /etc/pki/tls/certs/CAcert_chain.pem
smtp_use_tls = yes
smtp_tls_key_file = /etc/pki/tls/private/
smtp_tls_cert_file = /etc/pki/tls/certs/
smtp_tls_CAfile = /etc/pki/tls/certs/CAcert_chain.pem


Create a key + certificate file:
# cat /etc/pki/tls/private/ > /etc/pki/ejabberd/certs/ejabberd.pem
# cat /etc/pki/tls/certs/ >> /etc/pki/ejabberd/certs/ejabberd.pem
# chown -R ejabberd.ejabberd /etc/pki/ejabberd/
# chmod a-rw,u+r -R /etc/pki/ejabberd/



Common things you would need to do with your certificates and keys:

Export public key:

openssl rsa -in /etc/pki/tls/private/ -pubout -out  /etc/pki/tls/public/ -outform PEM

Print human readable key data:

openssl rsa -noout -text -in /etc/pki/tls/private/

Print human readable certificate contents:

openssl x509 -noout -text -in /etc/pki/tls/certs/

Other info of interest

I've not studied it yet but probably it's worth to read the Fedora developments on managing system crypto keys and signatures:

Syndicated 2014-01-15 14:55:00 from Ismael Olea

171 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!