Nueva Mapple Store en Springfield

A estas alturas supongo que todos habréis visto ya el video, no sólo en webs de temática friki-apple si no que incluso en El País han comentado que en el último episodio de Los Simpsons han hecho una parodia de Apple, las keynotes de Steve Jobs y el iPhone. Bueno, por si hay algún despistado, ahí va (antes de que lo borren de Youtube, que ya han quitado varios):

CrossOver de gratis y otras ¿apuestas? ¿o marketing?

CodeWeavers, los creadores de CrossOver, una versión comercial de Wine que permite ejecutar aplicaciones y juegos nativos de Windows en Linux y MacOS X hicieron una apuesta hace unas semanas: si el precio de la gasolina bajaba de cierto límite, durante un día iban a dar licencias gratis de su software. El precio ha bajado y ese día es hoy. El software se puede bajar de aquí y pedir la licencia aquí, que debido a la sobrecarga de los servidores no se podrá activar hasta mañana (y por lo visto, sólo mañana).

Yo la verdad este tipo de emuladores al final sólo los uso para poder ejecutar Internet Explorer en el Mac y probar cómo se ve alguna web o acceder a otra que le pegue una patada a los estándares y no funcione correctamente con otros navegadores. Y a pesar de que IE se puede instalar también con la versión libre de Darwine e incluso un tío se curró un script para automatizarlo, CrossOver está bastante más pulido y toda la instalación es más simplona, click-click-click y ya tienes el Explorer (o el Word, o el Acrobat, o …) en Mac.

Y esto me recuerda a esa empresa de refrescos que apostó que si Guns N’ Roses cumplía la fecha de noviembre de 2008 para el lanzamiento de su nuevo disco iba a regalar un refresco a cada estadounidense. ¿Qué es ésto? ¿Una nueva forma de márqueting viral? ¿Una forma de conseguir titulares (y entradas en blogs ;-D) de forma gratuita? El tema con CodeWeavers lo veo claro, total es la discusión de siempre, copiar un software no cuesta NADA y menos si se distribuye a través de Internet con lo que no hay un soporte físico, así que dar el software, durante un día… tal vez sirve para hinchar los números de usuarios reales, o para hacerse una idea de los usuairos que realmente tienen (¿cuántos que tienen CrossOver pirata lo “legalizarán” hoy?). Sin embargo los de los refrescos si que van a tener que dar las latas, una a una. Ahí si que hay un gasto. ¿Realmente se esperaban que Axl y compañía cumplieran, o les ha salido el tiro por la culata? Aunque aún está por ver que el disco salga a tiempo, que después de 15 años a ver quién se fia ahora. ;-)

Soporte CalDAV en Google Calendar

Desde hace unos días Google Calendar soporta CalDAV, un protocolo para, igual que con iCal puedes descargar un calendario remoto, poder también subir los cambios que hagas en local mediante WebDAV. Vaya, una forma de tener sincronizado Google Calendar con el programa que uses en el ordenador, con lo que ya no hace falta GCalDaemon.

Eso si, según la documentación por ahora la única aplicacion de escritorio soporatda es el iCal de MacOS X. Que casualidad, el que yo uso. :-D

Un puntazo es que Calendar exporta también vía WebDAV todos los calendarios externos a él a los que te hayas suscrito, como p.ej. eventos recomendados por last.fm, con lo que es posible suscribirse a ellos también desde iCal a través de Calendar. Mola. :-)

Bisente: un año después

Título muy apropiado, en plan cómic de DC post-52. :-P

Me acabo de dar cuenta de que hace un año desde que me separé de mi ex. Un año desde que decidí que era hora de cambiar de trabajo, un trabajo que me tenía ya muy quemado de luchar siempre por las mismas causas imposibles, y cambiar también de ciudad. Casi un año desde aquellas entrevistas con Google… estuvo cerca… ;-) Un año desde que me compré el MacBook Pro y migré a MacOS X.

Los primeros meses en Madrid y el nuevo trabajo un tanto estresantes… muchos cambios de golpe, no acababa de encontrar mi sitio. Ahora estoy bastante más centrado, mucho trabajo, si, pero por lo menos va saliendo adelante y estoy aprendiendo cosas nuevas. Y me gusta la responsabilidad, aunque hay días que estoy bastante agobiado, pero espero que ésto sea un pico de carga pasajero y en cuestión de uno o dos meses se regularice todo.

Un año en el que en el tiempo libre he estado más centrado en mí mismo: he aprendido a bucear y he hecho dos viajes por gusto de ir a bucear en sitios distintos (Almería e Ibiza); me compré una guitarra eléctrica, pero la verdad es que a penas me he puesto a intentar aprender a tocarla; estoy haciendo más ejercicio que en toda mi vida, estoy bastante en forma; algún pequeño concierto y un festival de dos días; me fui cuatro días de fiesta a Hogueras, que hacía tiempo que no me las tomaba en plan desfase; me he comprado una moto ¡¡y mañana me voy de ruta!!

No todo ha sido positivo, por supuesto. La separación, el divorcio… no me lo esperaba, fueron un duro golpe. Un año sin ver al Inu, echo mogollón de menos al cabroncete. También, dentro de un mes, un año desde que falleció mi madre. :’(

¿Balance? Distinto. Supongo que los cambios son positivos, o al menos es preferible tomarlos así. Estoy haciendo cosas que hacía tiempo que quería hacer, pero en el fondo los buenos momentos de los últimos años siguen pesando más que los malos y miro atrás con nostalgia. Pero hay que seguir adelante, así es la vida.

exec

  • english
  • spanish

exec is a built-in shell command that forces a binary to be executed by the currently running shell process instead of forking the process and running the binary on that child process.

When you run a command on a shell-script, it forks a child process and runs the command there. On a syscall level this is the classic:

if( (pid=fork()) == 0) { exec(command); exit(); } wait();

And this is usually what we want, because we will keep running commands after that one. Nevertheless, sometimes this is a problem, like when:

  • we have a program that’s going to monitor a given process, and it doesn’t run properly if there’s an intermediate shell process but we need to run this second process via a shel-script for whatever reasons (to initialize some variables, run the program with nice, whatever)
  • on MacOS we’re running a program via a shell-script and get two icons on the dock, one for the shell and another one for the program

Running a command with exec forces the shell not to fork, but to run the command directly over the shell process. An important thing to note here is that the shell-script will end there, no further commands of the shell script will be executed as the shell process will be substituted by the command process, so to speak.

#!/bin/sh # initialize variables, parse command-line parameters, etc. export IP=$1 exec nice command $*

Nokia 6085 e iSync

  • english
  • spanish

Today I’ve been playing around with iSync, trying to get it to sync my Mac’s addressbook with my Nokia 6086 mobile phone (a little bit old, I know, but it’s small and it works). After trying with several methods, the two that have given me the best results are:

Adiós mldonkey…

  • english
  • spanish

…hello rTorrent!

In the end mldonkey was too heavy for the slug. While downloading just one or two torrents it behaved quite well, but with some more and one of them big (>1Gb) it started eating up more and more memory and the slug became… sluggish. X-D

So I’m trying with different alternatives. Right now I’m running rTorrent on the server and nTorrent as a GUI on my Mac. Looks promising. :-)

Mi nuevo servidor

  • english
  • spanish

Ladies and gentleman, let me please introduce you to my new server, the one I’ve been blogging about lately:

dscf0042.JPG dscf0044.JPG

What? You don’t see it? Yes! The small grey box on top of the iomega disk, slightly bigger than the Fonera

In case you don’t know it yet, it’s a Linksys NSLU2, a small device around $100 that comes with two USB2 ports and an ethernet connection. Plug an external USB hard drive to it and it’ll become available over the network like a NAS share. And the best part is: you can flash its firmware and install Debian!! :-D

It’s not that powerful, it has an XScale (ARM) processor at 266Mhz and only 32Mb of RAM. There are pages explaining how to install up to 256Mb. Nevertheless, it works and is small, doesn’t make noise, and has a small electrical consumption.

Up to now I’m running the following on it and it works quite well:

top-nslu2.png

# cat /proc/cpuinfo Processor : XScale-IXP42x Family rev 2 (v5l) BogoMIPS : 266.24 Features : swp half fastmult edsp CPU implementer : 0x69 CPU architecture: 5TE CPU variant : 0x0 CPU part : 0x41f CPU revision : 2 Cache type : undefined 5 Cache clean : undefined 5 Cache lockdown : undefined 5 Cache format : Harvard I size : 32768 I assoc : 32 I line length : 32 I sets : 32 D size : 32768 D assoc : 32 D line length : 32 D sets : 32 Hardware : Linksys NSLU2 Revision : 0000 Serial : 0000000000000000 # free total used free shared buffers cached Mem: 29988 28988 1000 0 404 4808 -/+ buffers/cache: 23776 6212 Swap: 979924 41164 938760 # uname -a Linux eliza 2.6.18-6-ixp4xx #1 Tue Feb 12 00:57:53 UTC 2008 armv5tel GNU/Linux # pstree init-+-afpd---afpd |-atalkd |-atd |-avahi-daemon---avahi-daemon |-cnid_metad |-cron |-dbus-daemon |-events/0 |-getty |-khelper |-klogd |-ksoftirqd/0 |-kthread-+-aio/0 | |-kblockd/0 | |-khubd | |-3*[kjournald] | |-kmirrord | |-kpsmoused | |-kseriod | |-kswapd0 | |-2*[pdflush] | |-scsi_eh_0 | `-usb-storage |-mtdblockd |-nmbd |-papd |-portmap |-rpc.statd |-slpd |-smbd---smbd |-sshd---sshd---sshd---bash---su---bash---pstree |-svscanboot-+-readproctitle | `-svscan-+-supervise---dnscache | |-3*[supervise---multilog] | |-supervise---tinydns | `-supervise---mlnet---mlnet---mlnet |-syslogd `-udevd

Time Machine con netatalk

  • english
  • spanish

After recompiling netatalk the other day in order to get it to work with Leopard, the next step was getting Time Machine to make backups over the network (and a wireless one by the way). :-D

Problem is: despite the netatalk-powered network shares worked great for “regular” files, when Time Machine started preparing the backup it always gave me an error.

Googling about it I’ve found several stories with different soluctions, some of which worked for some people, some others didn’t. The one that did it for me is this one:

Basically it consists in creating a “sparse bundle” disk image on the local hard drive using MacOS X’s Disk Utility, giving it a specific name, moving it to the network share and then configure Time Machine to use that share.

Worked for me. :-)