Connectical Planet

January 28, 2010

Projects News

Overlay - Nginx updated to 0.8.32 - and not just that

I have invested some time in updating the Nginx ebuild to version 0.8.32, incorporating some changes that have landed some weeks ago in the official Gentoo ebuild:

  • The gzip-static USE-flag is now static-gzip.
  • A configuration file for logrotate is now provided and installed.
  • The USE-flags for mail components now allow for fine grained control with the imap, pop and smtp flags.
  • An updated init script.

As always, our ebuild includes support for a number of additional modules (WSGI, Fancyindex, SCGI, etc)

Enjoy!

by aperez (aperez@connectical.com) at January 28, 2010 12:50 AM

December 27, 2009

Projects News

Overlay - Nginx ebuild updated to 0.8.31

Today I have updated the Nginx ebuild to version 0.8.31, and incorporated the latest changes from the official Gentoo version. This includes:

  • Added keyword ~x86-fbsd
  • New USE-flag securelink, to control whether the secure link module is built.
  • New USE-flag random-index, to control whether the random index module is built.
  • A fix to make the Perl module build with certain libperl versions.
  • If IPv6 is enabled, a warning about its support being experimental will be issued during build.

Enjoy!

by aperez (aperez@connectical.com) at December 27, 2009 02:46 PM

December 23, 2009

Andrés J. Díaz

face of Andrés J. Díaz
python module to handle runit and daemontools supervised services

Last month I needed to install runit in some servers to supervise a couple of services. Unfortunately my management interface cannot handle the services anymore, so I decided to write a small module in python to solve this handicap, and that is the result!.

With this module you can handle in python environment a number of runit scripts. I think that this might be work for daemontools too, but I do not test yet. Let’s see an example :D


>>> import supervise
>>> c = supervise.Service("/var/service/httpd")
>>> print s.status()
{'action': None, 'status': 0, 'uptime': 300L, 'pid': None}
>>> if s.status()['status'] == supervise.STATUS_DOWN: print "service down"
service down
>>> s.start()
>>> if s.status()['status'] == supervise.STATUS_UP: print "service up"
service up

Personally I use this module with rpyc library to manage remotely the services running in a host, but it too easy making a web interface, for example using bottle:


import supervise
import simplejson
from bottle import route, run

@route('/service/status/:name')
def service_status(name):
""" Return a json with service status """
return simplejson.dumps( supervise.Service("/var/service/" +
name).status() )

@route('/service/up/:name')
def service_up(name):
""" Start the service and return OK """
c = supervise.Service("/var/service/" + name)
c.start()
return "OK UP"

@route('/service/down/:name')
def service_down(name):
""" Stop the service and return OK """
c = supervise.Service("/var/service/" + name)
c.down()
return "OK DOWN"

from bottle import PasteServer
run(server=PasteServer)

Now you can stop your service just only point your browser http://localhost/service/down/httpd (to down http service in this case).

Enjoy!

by ajdiaz at December 23, 2009 10:56 PM

November 21, 2009

Andrés J. Díaz

face of Andrés J. Díaz
libnsss_map library

Last week I was working on libnss_map, aNSS library module to map user credentials to existent user in the system. This module is intended to be used in high virtualized environment like cloud computing or embedded systems which require a lot of users.

When a new user has been authenticated by PAM or other authentication mechanism, then the nss_map module create a virtual user when credentials mapped to an existent user. For example, suppose here are a user virtual, created a la standard way on /etc/passwd:

    virtual:x:15000:15000:virtual user for nss_map:/dev/null:/sbin/nologin

Then edit the /etc/nssmap.conf
file:

    virtual:x:15000:15000:virtual user for nss_map:/home/virtual:/bin/bash

Note that the user directory is really a base dir in nssmap, each new user can search their home in /home/virtual/logname, where logname is the name used by user to login, and the /home/virtual is the prefix setted in nssmap.conf.

As usual, you can get the project from http://connectical.com/projects/libnss-map.

Enjoy!

by ajdiaz at November 21, 2009 06:41 PM

November 15, 2009

Adrián Pérez

face of Adrián Pérez
Chill out listening to the waves…

Google Wave Failure

This is how Google Wave will greet you when the service has gone out past lunch. Funny :D

Tagged: funny

by hario at November 15, 2009 11:37 PM

November 05, 2009

Projects News

libnss-map - New project: libnss_map

The libnss_map module is a small library for GNU Name Service Switch which maps all users to one previously defined. also fake the username and groups for the UID/GID to appear the username who log in. The module implements also a small group role facility, so different users can login with the same UID/GID, but keep different group membership.

by ajdiaz (ajdiaz@connectical.com) at November 05, 2009 12:52 PM

October 19, 2009

Projects News

Overlay - Nginx “push” module added

This module can be used to turn nginx into a long-polling message queuing HTTP push server, which is great for Comet-based web applications by just making Nginx sit in front of your applications and letting it handle long-lived connections, which is a task which fits its event-based architecture well. Then you applications do not need to be asynchronous, and may be coded using more traditional techniques, as long as they post updates to clients using the a message queue which uses Nginx with this “push” module.

Make sure you get a peek at the documentation http://github.com/slact/nginx_http_push_module

Have a lot of fun...

by aperez (aperez@connectical.com) at October 19, 2009 08:34 AM

September 28, 2009

Projects News

Overlay - Added tokyotirant ebuild

Tokyotirant is a fast key-value database which is used in a lot of projects, now the overlay contains and maintain a ebuild for this tool.

by ajdiaz (ajdiaz@connectical.com) at September 28, 2009 06:42 PM

September 26, 2009

Projects News

Overlay - Added jessyink ebuild

JessyInk is a set of features for inkscape which providing slide maker capabilities to this SVG manipulation software, including embeded javascript in the SVG to add effects and gestures.

by ajdiaz (ajdiaz@connectical.com) at September 26, 2009 06:38 PM

September 19, 2009

Adrián Pérez

face of Adrián Pérez
Ahoy, ye maties!

Play Like a Pirate

So it is September the 19th aboard, meaning yer should be talkin’ like pirates… because yer truly FSM mandates so. For those of yer who would wavin’ yer cutlasses for new Monkey Island stuff, some folks have smartly made readily available a free copy of Tales of Monkey Island for yer surfin’ buccaneers!

Some bad news: yer will be needin’ Windows. Dunno what that’s mean, folk, but sound like no good, arrrrr!

by hario at September 19, 2009 01:03 PM

August 15, 2009

Projects News

DTools - New version released!

The 2.0 version of dtools projects is release, you can download the tarball from the Files section, or get repository using the usual way.

Enjoy!

by ajdiaz (ajdiaz@connectical.com) at August 15, 2009 03:07 PM

August 08, 2009

Adrián Pérez

face of Adrián Pérez
Squeeze release goals

It is a shame that large file support (LFS) is still a release goal for Debian. Hey folks, we are in 2009… support for lage files landed in the kernel a lot of time ago, and (probably) 99% of applications already support that. I have always had LFS support in Gentoo without needing to do nothing. There is IPv6 on the listo, too… Please do not make me talk about my opinion on the “great” release cycle of two years. You must be kidding, guys.

by hario at August 08, 2009 10:47 AM

June 20, 2009

Andrés J. Díaz

face of Andrés J. Díaz
/proc and /sys tricks

Really the sysfs and /proc filesystems are worlds of magic and fantasy. Each day I discover a new trick using this filesystems. So, I decided to post a short summary of my favorites ones. Enjoy and feel free to add your tricks in comments, maybe we can a /proc and /sys knownledge database in a post :)

1. Scanning for LUNs in attached FC
echo "- - -" > /sys/class/scsi_host/hostX/scan

2. CPU hotplug
echp 0 > /sys/devices/system/cpu/cpuX/online

Obviously when run echo 1, put the CPU online again

3. Enable dmesg timestamp
echo Y > /sys/modules/prinkt/parameters/time

4. Restore a removed file when is still in use
cat /proc/pid/fd/descriptor number > /tmp/myfile_restored

5. Get the IO operations for a process:
cat /proc/pid/io
The syscr and the syscw are the accumulated read and write IO operations that process do where running.

6. Increase size of IO scheduler queue:
echo 10000 > /sys/block/device/queue/nr_request

7. Get the current IO scheduler enabed to a specific device:
cat /sys/block/device/queue/scheduler

8. Get the threads of pdflush process which are running:
cat /proc/sys/vm/nr_pdflush_threads

9. Set the percentage threshold for memory to start to flushd data to disk:
echo XX > /proc/sys/vm/dirty_background_ratio

10. Set the sleep time for pdflush checking (in centisecs):
echo XXX > /proc/sys/vm/dirty_writeback_centisecs

11. Set the time to live for a data in buffer, when raises, data will commit to disk (in centisecs):
echo XXX > /proc/sys/vm/dirty_expire_centisecs

by ajdiaz at June 20, 2009 07:50 PM

June 09, 2009

Adrián Pérez

face of Adrián Pérez
La movida de los suicidios

Recibo un correo de la gente de una compañía de «hosting» en la que tengo contratada una máquina virtual. El mensaje reza:

Subject: Important: Future of use of HyperVM

As many of you may know, the owner of HyperVM (LxLabs) has committed suicide [...]

Como me resultaba extraña la cosa, me he puesto a investigar un poquito… la cosa va más o menos así, ordenada temporalmente:

  1. Unos 100.000 websites hosteados por VA-Serv son borrados de la faz de la tierra (no os perdáis los reports de estado en su página), aparentemente por algún problema con HyperVM, un panel de control para máquinas virtuales.
  2. LxLabs (los autores de HyperVM) anuncia que pagará a quien demuestre haber encontrado problemas de seguridad en sus productos. En resumen: que lanzan un órdago a ver quien es más chulo. Hay que ser un Dan J. Bernstein de la vida para estar seguro de hacer una cosa, no es algo que haga pueda hacer una persona cualquiera…
  3. Un grupo de barbudos descubre al menos 24 vulnerabilidades critiquísimas que potencialmente podrían haber sido usadas para trincar unas cuantas centenas de máquinas virtuales.
  4. (Conjetura mía) La gerencia de VA-Serv empieza a presionar a LxLabs para que les indemnicen o algo así, pues seguramente LxLabs vende la moto de que da un «muy buen soporte» al producto.
  5. El dueño de LxLabs se cuelga de un árbol. Debe ser una antigua tradición familiar, pues tiempo ha algunos de sus allegados habían hecho lo mismo.
  6. Las otras compañías de hosting (por suerte la mía incluída) se empiezan a cagar de miedo y (como es lógico y sanamente recomendable) desactivan sus instalaciones de HyperVM y empiezan a pensar seriamente en cambiarse a la competencia.
  7. (Predicción mía) LxLabs se va al garete. Mientras tanto otra compañía saca tajada vendiendo un software para manejo de VMs igual de cutre que HyperVM hecho en PHP, pero que visualmente es más bonito y sus comerciales son más convincentes a la hora de vender la moto de que es más seguro que Fort Knox, oiga.

Resumiendo, al final, nada como guisarte tú mismo la administración de tus propias máquinas: No hay nada que sustituya a un buen cliente de SSH y toquetear todo en línea de comandos.

Tagged: informatica, reallife

by hario at June 09, 2009 11:25 PM

June 07, 2009

Projects News

Overlay - Nginx 0.8 ebuild added

As Nginx 0.8 has been released some days ago, and we have patched our Fancyindex module to support it, we have now crafted a new ebuild for this release. Of course, our site is already running Nginx 0.8 which seems to work as well as it always did: smoothly and speedy. Note that this is an early-release of the ebuild and not all USE-flag combinations have been tested, feel free to let us know if you encounter some issue.

Also, we have keyworded the lastest release in the 0.7 series as stable, now that the new version is considered to be the development branch by Nginx author Igor Sysoev.

by aperez (aperez@connectical.com) at June 07, 2009 04:41 PM

Nginx Fancyindex - Support for Nginx 0.8 / Git repo

After applying a minor tweak and making some tests, I am glad to announce that now it is possible to build the Fancyindex module with the latest Nginx 0.8 which has just hit the wires some days ago. Changes are commited in our branch new Git repository. History was preserved by importing the existing Bazaar one. The Git repository can be checked out by issuing one of the following commands:

 git clone git://git.connectical.com/aperez/ngx-fancyindex.git
 git clone http://git.connectical.com/aperez/ngx-fancyindex.git

Enjoy!

by aperez (aperez@connectical.com) at June 07, 2009 04:32 PM

May 13, 2009

Adrián Pérez

face of Adrián Pérez
Ezmlm lists and the From header

If you have used the fine ezmlm mailing list manager (which is a perfect complement for the qmail MTA) you may have found that when hitting the “Reply” button in your mail client, the recipient will be the author of the message instead of the list address. There is a quick workaround by passing the list address to the -3 to ezmlm-make, but that will screw up the “From” MIME header in messages, and it will look like all messages were send by the mailing list!

Fortunately, there is a solution thanks to the infinite tuneability of ezmlm. As you should already know, for each list a directory with some files is created for each mailing list, and most of the behaviour of the mailing list can be tuned by editing those files. There are two files which affect MIME headers which will be of interest:

  • headerremove defines a list of headers which will be stripped off messages when they arrive.
  • heeaderadd defines a list of headers (and their values) which will be added by ezmlm when processing messages.

What we want to do is that the “Reply” button of mail clients makes them use the list address as recipient. For this we can add a “Reply-To” header, and a “X-Mailing-List” one (the latter is not standard, but honored by a number of clients):

  echo 'Reply-To: yourlist@yourdomain.com' >> headeradd
  echo 'X-Mailing-List: <yourlist@yourdomain.com>' >> headeradd

The we must ensure that the original “From” header is preserved, by not listing it in headerremove:

  sed -i -e '/^[Ff]rom$/d' headerremove

Now you will see the correct “From” value in messages, and replying to them will send the message to the list by default. Also, if you want to filter list messages, you can now use the “X-Mailing-List” header, which is the default action of some clients when classifying messages per mailing list.

Isn’t ezmlm nice? ;-)

by hario at May 13, 2009 11:17 AM

May 06, 2009

Projects News

DTools - Version 1.1 released!

We decided to release a new stable version of dtools, this version is probed in a lot of scenaries, including HPC and cloud environments. A number of bugs was fixed, specially related with tag resolving methods. And, of course, there is a plan to 2.0 :D

by ajdiaz (ajdiaz@connectical.com) at May 06, 2009 06:35 PM

May 01, 2009

Projects News

Overlay - rotlog-0.2 ebuild!

Since rotlog project is also hosting in Connectical, we move the rotlog ebuild from contrib branch to trunk (aka connectical) branch. New versions, since 0.2 will have ebuild in the Connectical Ovlerlay.

Enjoy!

by ajdiaz (ajdiaz@connectical.com) at May 01, 2009 11:49 AM

April 26, 2009

Projects News

Rotlog - Rotlog 0.2 is out

I have just released version 0.2 of Rotlog, which I consider to be stable for everyday use. The only change with respect to the previous release is the fact that now timestamps are added by default to logged lines, and that the -c command line switch disables that behaviour instead of enabling it. As second noticeable change is that the method used now to generate the man page should be more compatible with older version of the man program and with the *BSD implementations. Third of all, now I am providing a Debian package (to be used with Lenny on i386) for the sake of commodity.

Enjoy!

by aperez (aperez@connectical.com) at April 26, 2009 10:22 PM

April 03, 2009

Andrés J. Díaz

face of Andrés J. Díaz
Distributed tools

For last months I needed to maintain a number of heterogeneous servers for mi work, I need to do some usually actions, like update a config file, restart a service, create local users etc.

For this purposes there are a lot of applications, like dsh (or full csm), pysh, shmux and many others (only need to perform a search in google using phrase “distributed shell”). Unfortunately for me, I want a easy-to-parse solution, because I’ve a big (really big) number of servers, and I want a single cut-based/awk parsing, and also I need to do some actions as other users (like root, for example) via sudo. Althought many of the existants solutions offers me a subset of this features, I cannot found a complete solution. So I decided to create one :D

You can find the code, and some packages in the dtools development site. I was use this solution in production environment from months with excelent results, and you can feel free to use.

Of course, its free (of freedom) software, distributed under MIT license.

Enjoy and remember: feedback are welcome ;)

by ajdiaz at April 03, 2009 06:29 PM

March 09, 2009

Projects News

Overlay - dyndb ebuild!

We have a new ebuild in the contrib overlay, this is the dyndb package. The dyndb is similar to Bernstein's cdb but with dynamic features.

by ajdiaz (ajdiaz@connectical.com) at March 09, 2009 09:16 PM

February 24, 2009

Andrés J. Díaz

face of Andrés J. Díaz
bash4 is out!

Yerterday (monday 23 of Feb) the GNU team released a new version of bash.

This new version contains a lot of interesting features, for example asociative arrays (yep!), autocd … and more!

The notices was published in the bash mailing list.

by ajdiaz at February 24, 2009 03:00 PM

February 15, 2009

Projects News

Overlay - Fancyindex support removed from Nginx 0.6

Starting today, ebuilds for the Nginx web server with versions 0.6.x will not have support for building with USE=fancyindex, because the lastest releases of the module are not being actively developed nor tested with releases in the 0.6 series. The 0.7.x versions are supported, though. You will need to use the latest versions if support for the fancy indexes module is needed. Sorry for the inconvenience.

by aperez (aperez@connectical.com) at February 15, 2009 12:15 AM

January 02, 2009

Óscar García

HFS+

Hoy en día es normal utilizar discos duros externos para llevarnos cosillas de un lado a otro, incluso los utilizamos como otro espacio de almacenamiento más como un poco de “cajon desastre”.

Tambien es normal hoy en día que (si somos usuarios asiduos de estos discos) tengamos que conectarlos en diferentes sistemas operativos, porque algun amigo friki usará Linux o algun que otro imprudente utilizará Windows…

Para solucionar el problema de los “múltiples Sistemas Operativos” los fabricantes hacen que miran hacia otro lado y sacan sus discos preformateados en FAT, un formato un tanto antiguo que funciona en todas las plataformas, pero con un monton de limitaciones.

Si bien las limitaciones de FAT estan mas o menos controladas (es muy raro ya el usuario que anda con MS-Dos o similar en donde no es posible utilizar FAT32) aún sigue habiendo una en concreto que nos puede hacer la vida bastante complicada, la limitación de 4 GB de tamaño máximo de archivo. Parece un poco tonto no ¿Quien va a crear un archivo mayor de 4 GB?, pues no es tan raro, una imagen de un DVD rellenito ya ocupa mas, y no digamos si el DVD es de doble capa…

Cada día que pasa veo que la gente se hace mas vaga. Antes descargabas archivos grandes de Internet divididos en multiples ficheros de 1 o 2 GB, pero según han ido aumentando las velocidades de acceso ya nadie se molesta en eso y te pasan un archivo enorme de 6 o 7 GB que, a la hora de almacenarlo en un medio externo de tipo FAT, tienes que recortar en varios pedazos.

El problema viene cuando quieres almacenar eso que estas descargando directamente el el disco externo. Empieza a bajar 1 Gb, luego 2 GB, 3 GB, 4 GB, y se jodio el invento, fallo de acceso que (perdonando la expresión) te cagas en las bragas, y adiós muy buenas.

Entonces, ¿Como solucionamos el petate? Bueno, la solución pasa por utilizar algun sistema de archivos mas actual y, por lo tanto, nativo de alguna plataforma. Pero con eso nos creamos otro problema, al ser un sistema nativo solo va a funcionar (a priori) en su plataforma. Y claro, ahora pensamos, JODER! Si me formateo un disco en Linux (por ej.) y solo lo voy a poder usar en Linux ¿Como hago para llevarle las pelis porno a mi colega imprudente que tiene Windows?

La respuesta está en que, como dije antes, que no se pueda usar a priori no quiere decir que no se pueda usar. Lo que pasa es que los Operativos son muy suyos, y por defecto no traen soporte para nada mas que para lo que a ellos les interesa, pero esto no quiere decir que no podamos usar los sietmas de unos en los otros. ¿Cúal es entonces la mejor opción?

No existe la “solución definitiva”, hay varias y cada una tiene sus pros y sus contras, de los 3 grandes tipos de sistemas de archivo (ext3 de Linux, HFS+ de MacOS y NTFS de Windows) podriamos usar cualquiera, con su complicación en el sistema operativo vecino. Por ej, si usamos ext3 nos funcionará de maravilla en Linux, en Windows tendremos que utilizar Ext2 IFS y en MacOS la cosa se complica bastante al no haber una implementación sencilla del sistema.

Desde la aparición de FUSE el utilizar como salida el sistema de archivos NTFS nativo de windows se esta convirtiendo en algo “estandarizado” para compartir archivos entre plataformas. En Windows funciona correctamente (bueno, es Windows…) y en MacOS y Linux funciona con FUSE y NTFS-3G de forma muy sencilla. Pero entonces ¿A que viene el título de HFS+?

HFS+ es el sistema de archivos nativo de MacOS, en esencia es parecido a los otros dos (soporta permisos, nombres de archivo kilometricos, etc…) por lo que es un remedio mas a todo este lío, ¿Por qué elegirlo?

Bueno, en estos momentos HFS+ (sin Journaling) esta soportado de forma nativa en MacOS y Linux, lo cual es una ventaja, ya que no tenemos que instalar nada para utilizarlo en estas plataformas. Además si formateamos un disco externo con HFS+ podremos usarlo con Time Machine y así hacer copias de seguridad fáciles en nuestro MacOS. En Windows tendremos que instalar un programa como HFSExplorer, con licencia GPL, o MacDrive, de pago (aunque buscando un poco podremos encontrarlo en forma “baratita”) pero con la ventaja de hacer que los discos funcionen tambien de forma nativa en el operativo, como si se tratasen de NTFS.

En conclusión, si usamos asiduamente MacOS, sin duda HFS+ es la mejor elección para nuestros dispositivos externos ya que es muy fácil de usar y de las tres alternativas presentadas es la que menos requiere a la hora de portarla a otros operativos y con la ventaja de que podremos utilizar Time Machine.

Como dato final decir que a la hora de formatear nuestro disco externo desde MacOS usando la “Utilidad de Discos” debemos escoger Mac OS Plus (mayús./minús.) para que nos cree el sistema sin Journaling y así no tener problemas a la hora de utilizarlo desde Linux. En el caso de que se nos active el Journaling (o que ya tengamos formateado el disco y no queramos borrarlo) podemos hacerlo desde la misma utilidad haciendo click en el menú archivo mientras mantenemos pulsada la tecla opción (alt, para los amigos) y seleccionando “Desactivar registro”.

Actualización: En ocasiones el disco puede tener Journaling habilitado y resistirse a deshabilitarlo, en ese caso tendremos que hacer la jugada de forma manual con comandos. Para ello basta con utilizar diskutil de la siguiente forma:

  1. Con el disco conectado hacemos un “mount” a secas (en caso de estar montado) o un “diskutil list” para saber cual es el dispositivo (en mi caso aparece como /dev/disk2s3)
  2. Si esta montado (aparece en el escritorio), desmontamos el dispositivo con la orden: diskutil umount /dev/disk2s3
  3. Y le deshabilitamos el journaling con: sudo diskutil disableJournal force /dev/disk2s3

Y con esto quedaría listo.

by Lemming the Wizard at January 02, 2009 01:48 PM

Projects News

DTools - Version 1.0 released!

The version 1.0 of dtools has been released. This is the first stable version, which includes ssh and scp basic commands with tagging and regular expression.

You can download the version from the Files section of the page. The ebuild for dtools will be appear soon in the Connectical Overlay, also you can download from the Repository, with tag r:1.0

Enjoy!

by ajdiaz (ajdiaz@connectical.com) at January 02, 2009 11:42 AM

December 24, 2008

Projects News

DTools - New project: dtools

Distributed tools is fully integrated with ssh, so use the known_hosts of the ssh as database, support tagging to create a sets of hosts (easy way to union, intersection, difference between sets), and also allow search hosts using regular expressions. The commands are integrated as modules (small scripts which some funcionality), for example the ping module allows to ping the hosts. And much more!

by ajdiaz (ajdiaz@connectical.com) at December 24, 2008 05:57 PM

December 12, 2008

Óscar García

Traducción de «Perfect Symmetry» de Keane

Si, es cierto, hace un mogollón que no escribo, por ello ahí os va una traducción de una de las mejores canciones del último albúm de Keane. Aviso, es una paja mental enorme.

Simetría Perfecta por Keane

Busque entre los escombros signos de vida
desplazandome a través de los párrafos
haciendo clic entre fotografias

Desearía encontrar el sentido a lo que hacemos
Quemando las capitales
El mas sabio de los animales

¿Quién eres? ¿Por qué vives?
Diente por diente, tal vez iremos una vez mas

Esta vida se vive en perfecta simetría
Lo que hago, me será hecho a mí

Leer página tras página de análisis
Buscando la puntuación final
No estamos mas cerca que antes

¿Quién eres? ¿Por qué luchas?
¿Verdad Santa? Hermano escojo esta vida mortal

Vivida en perfecta simetría
Lo que hago, me será hecho a mí
Como la aguja que se desliza al final del surco
Cariño – tal vez tu lo sentirás tambien

Y tal vez encontrarás que la vida es cruel
Y pronto
No hay puerta de oro
No hay cielo esperandote

Oh chico deberías dejar esta ciudad
Salir mientras puedas el contador esta descontando
Todo es mejor cuando escuches que suena

Soñadores sin caracter se esconden en iglesias
Piezas de piezas en buses en hora punta
Sueño en mensajes de correo electronico, frases desgastadas
Milla tras milla de sólo páginas vacias

Estrechate entre mis brazos
Estrechate entre mis brazos
Como la aguja que se desliza al final del surco
Tal vez tu lo sentirás tambien
Tal vez tu lo sentirás tambien
Tal vez tu lo sentirás tambien
Tal vez tu lo sentirás tambien

Soñadores sin caracter se esconden en iglesias
Piezas de piezas en buses en hora punta
Sueño en mensajes de correo electronico, frases desgastadas
Milla tras milla de sólo páginas vacias

Soñadores sin caracter se esconden en iglesias
Piezas de piezas en buses en hora punta

Y como siempre, os dejo el original, para las correciones y eso… :)

Perfect Symmetry by Keane

I shake through the wreckage for signs of life
Scrolling through the paragraphs
Clicking through the photographs

I wish I could make sense of what we do
Burning down the capitals
The wisest of the animals

Who are you? What are you living for?
Tooth for tooth, maybe we’ll go one more

This life is lived in perfect symmetry
What I do, that will be done to me

Read page after page of analysis
Looking for the final score
We’re no closer than we were before

Who are you? What are you fighting for?
Holy truth? Brother I choose this mortal life

Lived in perfect symmetry
What I do, that will be done to me
As the needle slips into the run-out groove
Love – maybe you’ll feel it too

And maybe you’ll find life is unkind
And over so soon
There is no golden gate
There’s no heaven waiting for you

Oh boy you ought to leave this town
Get out while you can the meter’s running down
The voices in the streets you love
Everything is better when you hear that sound

Spineless dreamers hide in churches
Pieces of pieces of rush hour buses
I dream in emails, worn-out phrases
Mile after mile of just empty pages

Wrap yourself around me
Wrap yourself around me
As the needle slips into the run-out groove
Maybe you’ll feel it too
Maybe you’ll feel it too
Maybe you’ll feel it too
Maybe you’ll feel it too

Spineless dreamers hide in churches
Pieces of pieces of rush hour buses
I dream in emails, worn-out phrases
Mile after mile of just empty pages

Spineless dreamers hide in churches
Pieces of pieces of rush hour buses

Lo dicho, un colocón.

by Lemming the Wizard at December 12, 2008 08:11 PM

October 21, 2008

Óscar García

Cortar, pegar, poder modificar y jamás privatizar

Bienaventuradas sean las hacker porque ellas comparten su código.

Estoy en Málaga, en la Conferencia Internacional de Software Libre. La verdad es que no tenía pensado publicar nada desde aquí (y sobre todo con lo vago que estoy últimamente para ello), pero los chicos de la universidad me han dado unos parrafos que no puedo dejar de compartir con todos mis lectores.

Y San Ignacius dijo:

¡Ay de los oportunistas y fariseos!

porque devoran el código libre, mientras mercadean con la reinvención de la rueda.

¡Ay de los oportunistas y fariseos!

porque predican acciones sin hacerlas, y cuando se les pregunta hablan palabras vacías.

¡Ay de los oportunistas y fariseos!

porque llenan su boca de software libre, pelo luego a la humanidad no liberan sus creaciones.

¡Insensatos y ciegos!

porque ¿cuál es mayor, el conocimiento, o el templo que santifica al conocimiento?

Lectura de la biblia del root:

Entro Stallman al templo de Root y echo fuera a todos los que privatizaban código en el templo; volco las mesas de los puestos y las sillas de los que de open source hablaban, y les dijo: ¡Escrito está: “Mi casa, casa de software libre será llamada”, pero vosotros la habeis hecho cueva de oportunistas!.

by Lemming the Wizard at October 21, 2008 02:41 PM

September 07, 2008

Óscar García

Tres días para el fin del Mundo

Si, no nos queda nada mas, solo tres días restan para que enciendan el LHC y nos manden a tomar por…

Bromas aparte, el día 10 se encenderá el Gran Colisionador de Hadrones con el que se espera encontrar (entre otras cosas) el Bosón de Higgs, la única partícula del modelo estándar de física de partículas no observada hasta el momento, aunque no se descarta que se puedan observar otros fenómenos como la Supersimetía, lo que nos acercaría mas a la veracidad de la teoría de las supercuerdas.

En fin, yo me tomaré unos mojitos ese día para celebrar el éxito de los científicos.

by Lemming the Wizard at September 07, 2008 11:54 AM

August 09, 2008

Andrés J. Díaz

face of Andrés J. Díaz
netstrings implementation

This week I publish a tiny library to manage netstrings, as described in Bernstein’s paper. This library is wirten in C and provide a very basic implementation for small applications. I use this library in some projects for months, and now a publish the code over MIT License in launchpad.

You can visit the page of the project in launchpad, or get the code via bzr:

bzr get lp:netstr

by ajdiaz at August 09, 2008 04:27 PM

July 07, 2008

Adrián Pérez

face of Adrián Pérez
Latest updates

Being occupied means that one does not have as much time as desired to update this weblog, so here you have a quick summary of what happened the last weeks:

  • I started working in the systems department of Igalia, a very cool company which works with free software (as in “freedom”). For geeky stuff related to systems administration, you can take a look at my new weblog there.
  • I attended the Bob Dylan concert which was held in Vigo last June 27th. I mostly enjoyed it, although I think that the concert would fit better in an auditorium. Even so, the performance was impeccable, and the accompaniment awesome.
  • We now have two cat in our flat, named Xan and Ziggy. They are quiet but sometimes it looks like they had too much coffee… and that’s fun!
  • One of my roommates is on holidays… and we miss her a lot.
  • I started learning how to use Git. Some of my mates at work use it and once basic things are understood everything starts to make sense :D
  • Some friends of mine and myself are preparing a little trip to the Cíes Islands.
  • There are two persons which I do love a lot went to Ireland. I know they are having a good time, but I will cover them with hugs when they arrive.
  • I am glad that someone I care about achieved a good punctuation in her last exam.
  • Did I mention I still searching for someone special? Girl preferred, FYI ;-)

Dunno when I will post the next update, but “mala herba nunca morre”, as we say in our region :D

by hario at July 07, 2008 12:14 AM

June 22, 2008

Adrián Pérez

face of Adrián Pérez
The fictitious album cover meme

This is a rather funny thing I have seen at some blog of a friend which proposes the following method to make yourself a fictional cover of an album:

  1. Go to a random Wikipedia page, the title of the article will be your name or the name of your band.
  2. Load a page with random quotes, choose the last four words of the last citation: that will be the title of your album.
  3. Grab the third image of the Flickr random images gallery: that would be the cover of your album.
  4. Use The GIMP to create a nifty the cover.
  5. Show your result to the audience.
  6. Voilà! You’re done.

My result is pretty funny, I think:

Feel free to follow this meme… if you dare!

by hario at June 22, 2008 03:36 PM

June 20, 2008

Óscar García

¡¡Entropía!!

Navegando por el basto mundo que es Internet me he encontrado con la siguiente imagen:

Como mi humilde web lleva el mismo nombre no pude resistir la tentación de publicarlo. Se trata de la portada de una novela de la colección de ciencia ficción Luchadores del Espacio escrita en los años 50 por Fernando Ferraz (que firma bajo el seudónimo de Profesor Hasley) y diseñada por José Luis Macías, el cual diseñó mas de 150 portadas para la citada colección.

Si sois fans de la Ciencia Ficción como yo podéis visitar el álbum de el estatografico en Flickr donde encontré esta imagen, hay un total de 50 portadas publicadas en la web.

by Lemming the Wizard at June 20, 2008 11:04 AM

June 18, 2008

Óscar García

¡¡¡ Monkey Island !!!

Definitivamente existe:

La verdad es que el parecido es asombroso, aunque en realidad se trata de Bora Bora en la Polinesia francesa, un buen lugar para retirarse. En esta web hay mas imágenes interesantes del lugar.

by Lemming the Wizard at June 18, 2008 02:27 PM

June 11, 2008

Óscar García

Batir un récord

Revisitando la página de Spread Firefox, la cual hacia tiempo que no visitaba, me he enterado que se está intentando establecer un record mundial de descargas en 24 horas de nuestro navegador favorito.

Para arrimar el hombro (cuantos mas mejor), simplemente tenéis que visitar esta web y pinchar sobre el enorme botón UNIRSE. No es necesario indicar vuestra dirección de mail si no queréis, pero en ese caso tendréis que estar atentos a la salida de Firefox 3 para bajarlo en las primeras 24 horas (ya pueden tener un buen canuto, porque se les va a quedar tonto).

Por último si queréis dar mas promoción al evento, podéis colocar un bonito banner para que todo visitante de vuestra web se sienta tentado. Para ello simplemente registraros en Spread Firefox (no es que sea completamente necesario, pero si lo hacéis apareceréis en el ranking) y luego visitar la página de banners donde podréis elegir el que mas os guste y copiar el código HTML para vuestra web.

by Lemming the Wizard at June 11, 2008 01:43 PM

June 06, 2008

Adrián Pérez

face of Adrián Pérez
Evolution with RSS (redux)

Today I learnt about a RSS plugin for Evolution, thus making standalone feed readers uneeded for me. Kewl :-D

by hario at June 06, 2008 02:56 PM

June 05, 2008

Adrián Pérez

face of Adrián Pérez
Evil C

Just letting you know about evil C programming language constructs. My favourite one (involving preprocessor-abuse, of course!):

  /* Test whether compiler supports C++-style comments */
  #define HELPER 0//**/
  #define CPLUSPLUS_COMMENTS_SUPPORTED (HELPER+1)

More posts to come… someday! I am pretty busy lately :-(

by hario at June 05, 2008 06:19 PM

May 24, 2008

Adrián Pérez

face of Adrián Pérez
Running Gentoo GNU/Linux on a Vaio TZ

I have summarized all my previous posts about running Gentoo on a Sony Vaio TZ laptop, and added some more tips & tricks. You can find the article at my website.

by hario at May 24, 2008 09:19 PM

May 10, 2008

Andrés J. Díaz

face of Andrés J. Díaz
pkgcore experience

Last days I reinstalled my Gentoo in my desktop computer, a Dell Dimension C521 using the new package handler pkgcore.

The last months I’ve use official portage, and also new replacement called paludis. The main advantage of this one is being written entirely in C++, so paludis is very fast, but also you can detect some problems when you need to compile some “specials” packages, such qemu, which requires to be compiled with gcc3. If you compile paludis with another version of gcc, you can find a beauty error related to dynamic linking. Obviously, you can solve this problem by hand or with sonme tricks ;) , but I don’t like tricks in production machines.

This week I finished to install my desktop computer using pkgcore. Pkgcore is another replacement of portage, written in python, but with some critical pieces in C (yes, the old reliable C), and I was surprised with the status of the development. The last time I had seen pkgcore was really unstable and very confusing for me, so I was decided to try paludis, which was more stable and mature. But, in this case, pkgcore exceeded my expectations.

In my opinion the strengths of pkgcore are:

  • fast (similar to paludis, in my experience)
  • easy to use (portage compatible syntax)
  • portage compatible configuration
  • agnostics about compiler (avoid the qemu problem)
  • well colored :D

But nobody is perfect, so pkgcore has some disadvantages also:

  • Arg! configuration file is the hell!
  • Errors has special syntax, you need some practice to understand
  • Very strict with no-clean packages in portage (for example when install into /lib instead to use get_lib_dir). I’m not sure if it’s a real disadvantage.

I put my pkgcore.conf file in pastebin. I hope to be usefull :)

by ajdiaz at May 10, 2008 03:57 PM

May 03, 2008

Adrián Pérez

face of Adrián Pérez
Perfect «Suspense» (with a Vaio TZ11MN/N)

Maybe you already know about my trip throught all the oddities with the suspend to RAM feature with GNU/Linux running on my Vaio TZ11 notebook… yesterday I was able of workaround one of the things which was annoying me in the last weeks: the X11 Intel video driver was frozen after coming back from suspend! This happens when using the uvesafb framebuffer driver, but not in plain-old VGA text mode (which is way too ugly: you cannot see the penguins when the system boots!).

First I tried using the intelfb driver in the framebuffer, but I got exhasperated because it does not know how to set-up video modes (at least with my hardware), so you need to pass vga=some-mode in the kernel command line… Unfortunately, trying to set the VESA mode this way before the driver is initialized makes some interesting effects: the framebuffer can flicker horribly, the machine can refuse continue booting after setting video mode, the image on the panel can be totally screwed… depending on which video mode you are trying to set.

The final solution was using the old (but still trusty) vesafb driver. I had to try different kernel command lines until it worked. After some rebuilds, I got a working kernel configuration with the VESA framebuffer driver. The following is needed in the kernel command line: video=vesafb:1366x768-32,ywrap,nomtrr vga=0x362.

Maybe you already suspect that: 0x362 is a nonstandard video mode (1366×768, 32bpp). I had to boot using the uvesafb driver and read the mode list from /sys/devices/platform/uvesafb.0/vbe_modes, and then re-build the kernel to put back vesafb

I spent two hours of testing until it worked, so I am sharing the information here: you know, I don’t want ohers to waste their time as I do :D

by hario at May 03, 2008 07:00 PM

April 26, 2008

Adrián Pérez

face of Adrián Pérez
Virtualization extensions with a Vaio TZ11MN/N

For some bizarre reason the silly people working at Sony decided to disable the Intel VT extensions by default. But hackers are always smarter than stupid salesmen making decisions in some random department of a Enormous Big Company™: there is a way to re-enable VT extensions.

Big FAT warning: I have only checked this with a Vaio VGN-TZ11MN/N with a Phoenix BIOS version R0052N7. Following the instructions detailed here may render your computer totally unusable, and I decline all responsiblity on the correctness of this method. It worked for me, however.

Fortunately, the code needed to enable the virtualization extensions is still in the BIOS, but there is no menu which allows for easy configuration, so we need to modify the setting using a somewhat “manual” method.

  1. Get yourself a bootable DOS system. You can boot from hard-disk, a floppy, a USB flash stick or whatever. I used one of the FreeDOS boot floppy images I used a some time ago to play old computer games in an old Pentium 120 I own. In order to write the image to an USB floppy drive I had to use the following command:
      # dd if=fdosfloppy.img of=/dev/sda
  2. Copy a DOS text editor into the bootable device. I used the tiny “T” editor.
  3. Get yourself a copy of the symcmos.exe utility and copy it to the bootable device. This tool allows modifying the configuration values stored in the CMOS which by dumping current contents and loading new values from a text file.
  4. Boot the DOS system from the device we have prepared so far.
  5. Run symcmos -v2 -lsettings.txt, if everything goes as expected now the settings.txt file will contain one setting per line, in a (address)[value] fashion.
  6. Scroll down to address 0363 and modify the value from 0000 to 0001. Save the file.
  7. Load the new values into the CMOS by running symcmos -v2 -usettings.txt
  8. Last, but not least, power down the computer (a warm reboot will not work). If everything went well, now you can boot your favourite GNU/Linux distro, load the kernel module and install KVM:
      # modprobe kvm-intel
      # emerge kvm

For KVM I am using the ebuilds from the sabayon overlay. Also, if there is an error when trying to load the KVM kernel module, maybe you did not follow the procedure correctly: double-check your steps, and remember that using dmesg|tail you can check whether VT is still disabled by the BIOS.

For the intrepidous people trying this, I hope you will have good luck (as I did :D ), but remember that I can only say that this works for a VGN-TZ11MN/N with a Phoenix BIOS version R0052N7.

by hario at April 26, 2008 06:24 PM

April 05, 2008

Óscar García

Un meme de Patxon

Leyendo el blog de Patxon he visto un meme y me he sentido identificado, y además, como hacia mundo y medio que no escribía en este mi humilde blog pues me he puesto al lío y le sigo la corriente ;)

Coge el libro que tengas más cerca, ve a la página 18 y escribe la línea 4:
«Poco a poco, sus ojos se iban acostumbrando a la penumbra. Conocía el lugar.» Michael Ende, La Historia Interminable. Es el libro que estoy releyendo ahora, no se, supongo que sigo siendo un niño.

¿Si estiras tu brazo derecho, qué tocas?
Tal cual estoy en este momento, las cortinas, es lo que tiene tener el escritorio cerca de la ventana.

¿Qué ha sido lo último que has visto por la televisión?
Padre de Familia en la Sexta.

Sin mirar, ¿qué hora es?
Sobre las 21:30 ma o menos.

Ahora mira, ¿qué hora es?
21:30. Of course.

Quitando el ordenador, ¿qué escuchas?
Por orden, Enigma, luego Jean-Michel Jarre y ahora mismito Mike Oldfield. Pero bueno, si tenéis mucha curiosidad last.fm es tu amigo.

¿Cuánto tiempo estuviste fuera el día que estuviste más tiempo en la calle?
No lo recuerdo, la verdad. Pero seguro que fue mucho y me lo pase muy bien. xD

Antes de estar escribiendo en el blog, ¿qué estabas haciendo?
Formatear mi PC… ¿Y aún hay dudas de porque uso Mac?

¿Qué llevas puesto ahora mismo?
Un pantalón de pijama, una camiseta que reza «No sólo pinto y coloreo», una sudadera viejuna y mis zapatillas de Perro. No hay nada como la comodidad en casa.

¿Soñaste ayer?
Supongo, soñar siempre sueño, solo que no lo recuerdo.

¿Cuánto tiempo te estuviste riendo la última vez que te reíste?
Bueno, eso es difícil de recordar, suelo reír bastante, supongo que viendo Padre de Familia al mediodía. O luego cuando estaba hablando con mi colega Grev por teléfono, no se.

¿Qué hay en las paredes de la habitación donde estás?
Una hermosa foto en blanco y negro del paseo de Coruña de noche, un poster de Señor de los Anillos (de la primera película), otro del Castillo Ambulante, otro de DragonLord de Koni, un corcho para pinchar cositas y un cartel de la película «La Vida de Brian» de los Monty Python.

¿Has visto alguna cosa extraña últimamente?
No. O al menos no me doy cuenta.

¿Cuál es la última película que has visto?
Que recuerde porque me haya gustado Stardust. No veía una película así desde que estrenaron Legend. Os la recomiendo sin duda.

Si fueses multimillonario de la noche al día… ¿qué comprarías?
Un chalet, con piscina y esas cosas, vamos para poder relajarse uno a gusto.

Alguna cosa sobre ti:
Soy alto, rubio, de ojos azules y estoy que me salgo por la tangente. Vamos churri, ¡¡¡llámame ya!!! xDD

Si pudieras hacer alguna cosa en el mundo, independientemente de la política, ¿qué harías?
Que la gente mirase a las estrellas, se daría cuenta de lo infinitamente pequeños e insignificantes que son. Si hacemos eso, por un instante, supongo que todos nos sentiremos en paz y con ganas de salir ahí fuera y explorar.

¿Te gusta bailar?
Depende si ella me acompaña.

¿Qué piensas de George Bush?
Ese no merece ni que piensen en él.

Imagina que, por acción espontánea, tienes una niña; ¿cómo la llamarías?
Las niñas no se generan por acción espontanea, hace falta que papa le meta la colita a mama…

Imagina que, en vez de tener a una niña, tienes un niño, ¿qué nombre le pondrías?
…y entonces papa deja en el cuerpo de mama unos pequeños seres llamados espermatozoides…

¿Te gustaría vivir en el extranjero?
Claro, y ver mundo. Pero bueno, supongo que en caso de irme me gustaría que viniese alguien conmigo.

¿Qué te gustaría que te dijese Dios cuando llegues al cielo?
Sin Tetas no hay Paraiso… xDDDD. Nah, en serio. Supongo que si Dios existiese me diría algo como ¿Vamos a explorar el universo?

Bueno, y como dijo Patxon, quien se sienta identificado que siga este meme. ;)

by Lemming the Wizard at April 05, 2008 08:04 PM

March 18, 2008

Andrés J. Díaz

face of Andrés J. Díaz
Physics at MIT

I see in the “People of the Web” the last interview to the Professor Walter Lewin, at MIT. I have no comments about him and his classes, only two comments: 1) the great phrase: “Physics work!”, and 2) can other people regarded teacher? I don’t need to think more about it…

by ajdiaz at March 18, 2008 09:18 PM

Adrián Pérez

face of Adrián Pérez
Update on Gentoo r5u870 packaging

This is a small update on where to find the driver for the Ricoh r5u870 webcam properly packaged for Gentoo GNU/Linux. This driver is needed in order to use the webcam present in some HP Pavillion and Sony Vaio (including my TZ11) laptops.

If you have read my previous post, you already know it: the hard drive of my iBook (which was being used as home server) died last week, so with a little help from my friends™ I have moved the overlay to a new place. We also splitted the overlay in two, so please be sure to use the contrib overlay, which is where the media-video/r5u870 belongs.

I hope this change will make things better, so have a nice time using your camera and remember to thank the driver authors (thanks Alex & Sam!) and report packaging bugs if you encounter any problem ;-)

by hario at March 18, 2008 12:06 AM

March 16, 2008

Andrés J. Díaz

face of Andrés J. Díaz
Entanglement: the greatest mystery in physics

Book cover

Last days I was read the book titled “Entanglement: The greatest mystery in physics”, which is written by Ph.D. Amir D. Aczel, famous for his books about physics. This one is about quantum physics, particularly the entanglement phenomenon. The entanglement is an effect of quantum objects (if we can call them “objects”) consists in a relation between the quantum state of implicated objects, so when we alter one of them, the others “know” automagically the change, even though the objects are spatially separated.

I’m surprised at how easy is to read, it’s funny and clearly (as much as quantum theory allows) and I recommended to people who are interesting in quantum theory and it’s history.

by ajdiaz at March 16, 2008 12:09 AM

March 15, 2008

Adrián Pérez

face of Adrián Pérez
I hate hard disks

The hard disk of my old (but working) iBook G3 has died yesterday. This means all the stuff which was hanging on foobar.homeunix.org, including my Gentoo overlay, some photo albums and other random stuff will not be available in a while. This also includes mailing lists at ml.mine.nu. Sorry for the inconvenience, and expect updates as soon as I can fix up things. Fortunately I have a fairly complete backup…

by hario at March 15, 2008 01:24 AM

February 09, 2008

Andrés J. Díaz

face of Andrés J. Díaz
bash ini parser

In some situations i like to use INI files as configuration files, as python do. But bash do not provide a parser for these files, obviously you can use a awk code or a couple of sed calls, but if you are bash-priest and do not want to use nothing more, then you can try the following obscure code:

cfg.parser () {
    IFS=$'\n' && ini=( $(<$1) )              # convert to line-array
    ini=( ${ini[*]//;*/} )                   # remove comments
    ini=( ${ini[*]/#[/\}$'\n'cfg.section.} ) # set section prefix
    ini=( ${ini[*]/%]/ \(} )                 # convert text2function (1)
    ini=( ${ini[*]/=/=\( } )                 # convert item to array
    ini=( ${ini[*]/%/ \)} )                  # close array parenthesis
    ini=( ${ini[*]/%\( \)/\(\) \{} )         # convert text2function (2)
    ini=( ${ini[*]/%\} \)/\}} )              # remove extra parenthesis
    ini[0]=''                                # remove first element
    ini[${#ini[*]} + 1]='}'                  # add the last brace
    eval "$(echo "${ini[*]}")"               # eval the result
}

And then you can parse your ini files as following:

# parse the config file called 'myfile.ini', with the following
# contents::
#   [sec2]
#   var2='something'
cfg.parser 'myfile.ini'

# enable section called 'sec2' (in the file [sec2]) for reading
cfg.section.sec2

# read the content of the variable called 'var2' (in the file
# var2=XXX). If your var2 is an array, then you can use
# ${var[index]}
echo "$var2"

Unfortunately, the cfg.parser() function do no support embedded spaces
in section names… yet

by ajdiaz at February 09, 2008 06:42 PM

February 08, 2008

Andrés J. Díaz

face of Andrés J. Díaz
bashdoc: just another documentation tool

bashdoc is a small utility to make documentation automatically from bash scripts, using awk to frontend parser (and you can add your own frontends in awk language), and reStructuredText as backend parser. bashdoc parse the object script (using awk) and create an intermediate documentation in RST, which is parsed in next step using RST backend.

The fronted allows you to parse more complicated scripts (or other than bash scripts) and the backend allows you to make the output in different formats.

You can download the source code from launchpad project page or using bzr version control system:

$ bzr get lp:bashdoc

by ajdiaz at February 08, 2008 10:27 PM

February 01, 2008

Andrés J. Díaz

face of Andrés J. Díaz
comida

comida is a bash script designed to create a FTP (or HTTP, or rsync or…) mirror and maintain the archive synchronized with the source. I design this tool when I was working at the Free Software Office (OSL) in the University of A Corunna, and decided to create a new mirror in Spain which host a lot of free software projects. But, we wanted a single tool to manage all mirrors in the archive, with full integration in our web page (yes, we wanted on-the-fly status page).

You can download the source code from launchpad project page or using bzr version control system:

$ bzr get lp:comida

by ajdiaz at February 01, 2008 09:37 PM

tcptraceroute

tcptraceroute was another friend of the network administrator. Probably you known classical traceroute, which use the TTL field in IP header to determinate the hops in the route to a specific destination. In each hop the TTL value is decreasing (according to internet protocol), and when TTL is equal to cero, a ICMP is returned to sender IP. So, the classical traceroute technique, send a UDP packet with TTL field setted to 1, and get the IP address of the first hop from returned ICMP, and likewise for other hops.

Unfortunately, today many host are firewalled and ICMPs are blocking. The classical traceroute design fails, and we only obtain a list of useless “*”. The tcptraceroute use TCP packets instead of UDP packets, and try to connect to usual port enabling the SYN flag. If port is closed, a RST flag is returned, and if port is open then return an ACK flag. So we don’t need ICMPs anymore.

by ajdiaz at February 01, 2008 09:28 PM

January 10, 2008

Óscar García

La mierda que nos vende Sanidad, el Bot Robin.

Anda que no habrá necesidades en España (si, ese país que “Is Different”) para que los subnormales de carrito del Ministerio de Sanidad se gasten la pasta (como por ejemplo la gratuidad de la vacuna contra el virus papiloma humano para todas las mujeres) que se la van a dar a los palurdos de Micro$oft para que estos se saquen de la chistera un bot que tan siquiera funciona y que además le da publicidad gratuita a su red privativa de mesajería instantánea.

Si, señoras y señores, en vez de crear un servicio como dios manda en el cual unos operadores resuelvan las dudas de sexualidad a nuestros jóvenes (y no tan jóvenes) y de una tacada generar empleo, vienen una serie de uniformados sin puta idea y les venden la moto de que esto se puede hacer fácilmente con un robot de charla, el cual dá unas respuestas genéricas, que no solo es exactamente lo mismo que consultar la Wikipedia (que por cierto es gratis), sino que ademas tan siquiera están adecuadas al público a las que van dirigidas.

Pero lo peor de todo no es esto ya que el invento ni siquiera funciona, he aquí mi proceder:

Añado a mi cliente de mensajería al bot, robin@msc.es.

Robin: This Microsoft Agent is powered by Windows Live Agents. Microsoft’s Privacy Statement (http://go.microsoft.com/fwlink/?LinkId=74170) applies to all information which you provide to this Microsoft Agent. Please be careful about information which you provide to online services and follow safety tips, some of which can be found at http://www.microsoft.com/athome/security/default.mspx.
12:21
Hola, soy ROBIN, el Robot del Ministerio de Sanidad y puedo ayudarte a resolver tus dudas sobre temas tan importantes como:
· Enfermedades de transmisión sexual (ETS)
· Evitar embarazos no deseados (IVE, píldora postcoital y anticoncepción)
· El alcohol (riesgos, composición, efectos, mitos, tratamiento, leyes, consejos, tratamiento).
¿De qué provincia eres?

Yo: (Le digo mi provincia)

Robin: Necesito algo de tiempo para pensar acerca de ello. Por favor, pregúntame más tarde.

Ojo, ya me esta dando largas…

Yo: ¿Hola?

Robin: Necesito algo de tiempo para pensar acerca de ello. Por favor, pregúntame más tarde.

Y no solo eso, sino que además tiene una gran variedad de vocablos en su lenguaje.

Yo: Ojito al bot. Buena mierda habéis programado.

Robin: Lo siento, mis circuitos están muy ocupados ahora. Por favor, pregúntame más tarde.

Tócate los cojones, cualquier robot medianamente bien hecho es capaz de atender a millones de peticiones simultaneas ¿No se supone que los de M$ son la hostia? ¿No tienen un operativo tan bueno y tan estable? ¿Pero que clase de bazofia han programado esos ineptos?

Yo: ¿Sabías que la wikipedia hace lo mismo que tú y además no le cuesta dinero al gobierno?

Robin: Hola, soy ROBIN, el Robot del Ministerio de Sanidad y puedo ayudarte a resolver tus dudas sobre temas tan importantes como:
· Enfermedades de transmisión sexual (ETS)
· Evitar embarazos no deseados (IVE, píldora postcoital y anticoncepción)
· El alcohol (riesgos, composición, efectos, mitos, tratamiento, leyes, consejos, tratamiento).
¿De qué provincia eres?
Necesito algo de tiempo para pensar acerca de ello. Por favor, pregúntame más tarde.

Increible.

by Lemming the Wizard at January 10, 2008 12:32 PM