Truco: Modificar CSS Google Chrome / Chromium

Bien, por el motivo que sea, a mí al seleccionar un link con el teclado mediante (tab, or shift + tab), me sale un rectangulo en naranja que soy incapaz de verlo en algunas webs o directamente no se muestra, así que navegar con teclado entre links sea hace “a ciegas”, por tanto, la única solución que he encontrado, era mirar de modificar el CSS del navegador, por suerte he visto que no es tedioso en chrome/chromium, simplemente hay que editar un fichero llamado Custom.css


Linux => $HOME/.config/chromium o google-chrome/Default/User StyleSheets/Custom.css
Windows => %LOCALAPPDATA%\Google\Chrome\User Data\Default\User StyleSheets\Custom.css
Mac => /Users/YourUsername/Library/Application Support/Google/Chrome/Default/User StyleSheets/Custom.css

Por defecto el fichero esta vacio, podemos sobrescribir lo que queramos con css, yo simplemente he añadido estas lineas al Custom.css


/* :focus es para todo, puedes usar a:focus, input:focuss, textarea:focus etc */
:focus {
outline-color: purple !important;
outline-style: solid !important;
outline-width: 4px !important;
}

Ya que mi único objetivo era hacer que el recuadro naranja invisible para mí en muchas situaciones, se volviese más grande y de color lila.

Con este pequeño apaño, todo OK!

PD: Si por algún motivo no te sobrescribe el CSS, ejecuta el chrome/chromium con el parámetro “-enable-user-stylesheet”

JSLinux, un emulador de Linux realizado integramente con JavaScript

El autor del más que conocido qemu, ha realizado una emulación de Linux, realizado únicamente con JavaScript, sin duda un trabajo laborioso y bastante curioso.

http://bellard.org/jslinux

This PC emulator is written in Javascript. The emulated hardware consists in:

a 32 bit x86 compatible CPU
a 8259 Programmble Interrupt Controller
a 8254 Programmble Interrupt Timer
a 16450 UART.
The code is written in pure Javascript using Typed Arrays which are available in recent browsers. It was tested with Firefox 4 and Google Chrome 11 on Linux, Window and Mac (it does not work with Chrome 12 beta. As far as I know, it is a bug in the browser). In any case, a fast Javascript engine is needed to have good performance.

Instalar mod_pagespeed en Debian Etch & Otras desde el código fuente

Me propuse hoy instalar definitivamente mod_pagespeed, a pesar de que a priori la instalación de este módulo puede ser sencilla, la cosa se complica si tienes una distribución algo antigua y oficialmente no soportada, no obstante, una vez logrado el objetivo de instalar el módulo, mod_pagespeed funciona igual de bien que en las demás distribuciones soportadas, simplemente que los que no podemos actualizar a una versión más actual (Debian Lenny), tenemos que hacer “algo más” para hacerlo funcionar en nuestra distribución, este preceso, es válido para otras distribuciones que tampoco están oficialmente soportadas.

¿Que és mod_pagespeed?, creo que con el video nos va a quedar claro cual es la intención de este módulo

Para realizar este tutorial, tuvimos que abir un ticket a los desarolladores de google, para que nos intentasen solucionar errores que no salían durante la compilación, dónde alfinal todo fué más que correcto por parte de ellos :)

Como requisitos mínimos se exige tener instalado GCC 4.2, si embargo Debian Etch trae de serie GCC 4.1, pero esto no ha añadido ningún problema, ya que finalmente también permite la compilación del módulo con la versión 4.1, de hecho, primero se intentó compilarlo con 4.2, pero aún así daba exactamente los mismos errores de compilación.

Aquí teneís la guia oficial de compilación, para las distribuciones soportadas mediante los fuentes de mod_pagespeed, en la nuestra simplemente se añaden problemas/soluciones para la instalación en distribuciones no soportadas.

Vamos a compilar mod_pagespeed:

# cd /usr/local/src

# svn co http://src.chromium.org/svn/trunk/tools/depot_tools

bash: svn: command not found

# aptitude install subversion

# svn co http://src.chromium.org/svn/trunk/tools/depot_tools

# export PATH=$PATH:/usr/local/src/depot_tools

# mkdir mod_pagespeed

# cd mod_pagespeed

# gclient config http://modpagespeed.googlecode.com/svn/tags/0.9.1.1/src

# gclient sync --force

# cd src

# make BUILDTYPE=Release

make: flock: Command not found
make: *** [out/Release/obj.target/net/instaweb/libmod_pagespeed.so] Error 127

# cd /usr/local/src

# wget http://www.kernel.org/pub/linux/utils/util-linux-ng/v2.18/util-linux-ng-2.18.tar.gz

# tar xvfz util-linux-ng-2.18.tar.gz

# cd util-linux-ng-2.18
# mkdir -p /opt
# ./configure --prefix=/opt/util-linux-ng-2.18
# make
# make install

# export PATH=$PATH:/opt/util-linux-ng-2.18/bin

# cd /usr/local/src/mod_pagespeed/src/

# make BUILDTYPE=Release

CC(target) out/Release/obj.target/apr/third_party/apache/apr/src/locks/unix/proc_mutex.o
third_party/apache/apr/src/locks/unix/proc_mutex.c: In function ‘proc_mutex_proc_pthread_create’:
third_party/apache/apr/src/locks/unix/proc_mutex.c:385: error: ‘PTHREAD_MUTEX_ROBUST_NP’ undeclared (first use in this function)
third_party/apache/apr/src/locks/unix/proc_mutex.c:385: error: (Each undeclared identifier is reported only once
third_party/apache/apr/src/locks/unix/proc_mutex.c:385: error: for each function it appears in.)
third_party/apache/apr/src/locks/unix/proc_mutex.c:393: error: ‘PTHREAD_PRIO_INHERIT’ undeclared (first use in this function)
make: *** [out/Release/obj.target/apr/third_party/apache/apr/src/locks/unix/proc_mutex.o] Error 1

# GYP_DEFINES="use_system_apache_dev=1" gclient runhooks

# make BUILDTYPE=Release

CXX(target) out/Release/obj.target/html_rewriter/net/instaweb/apache/apache_message_handler.o
net/instaweb/apache/apache_message_handler.cc:21:19: error: httpd.h: No such file or directory
net/instaweb/apache/apache_message_handler.cc:25:22: error: http_log.h: No such file or directory
…..
net/instaweb/apache/apache_message_handler.cc:61: error: ‘ap_log_error’ was not declared in this scope
make: *** [out/Release/obj.target/html_rewriter/net/instaweb/apache/apache_message_handler.o] Error 1

# aptitude install apache2-threaded-dev libapr1-dev libaprutil1-dev

# make BUILDTYPE=Release

!POR FIN COMPILA!

# cd installl
# make APACHE_ROOT=/etc/apache2 APACHE_MODULES=/usr/lib/apache2/modules APACHE_USER=www-data staging
# make APACHE_ROOT=/etc/apache2 APACHE_MODULES=/usr/lib/apache2/modules APACHE_USER=www-data install

Cosas a verificar:

Verificar los permisos, y que el módulo se esté cargando mediante el fichero pagespeed.conf

LoadModule pagespeed_module modules/mod_pagespeed.so
LoadModule deflate_module modules/mod_deflate.so

Permisos de escritura www-data en /var/mod_pagespeed
Include conf/pagespeed.conf en el fichero de Apache (apache2.conf o httpd.conf)

Ver las diferencias entre tener activado o no mod_pagesped:

http://www.webpagetest.org

El Dr.Hard informa: Ahora ya no hay excusa

Hace unos días, leí sobre el POWN2OWN, un certámen/evento donde se reune lo mejor de lo mejor en seguridad informática, dedicándose a encontrar las vulnerabilidades de los Sistemas Operativos y Navegadores.

pwn2own

Este año, ha quedado patente que Apple se lleva el premio a la peor empresa en seguridad, pues su flamante iPhone ha sido “reventado” en tan solo 20 segundos (con un premio en metálico de 10.000$) y el MacBook, mediante Safari, ha sido “violado” sin ni siquiera tocarlo, remotamente (con otro suculento premio de 10.000$).

No soy muy amante del iPhone, la verdad, y úlitimamente de Apple en general pero hay que reconocer que sus MacBook son auténticas máquinas. Bueno, a lo que íbamos. Resulta que de entre todos lo navegadores que se probaron, el que dio mejor resultado fue Chrome, Firefox, IExplorer8 (en este orden) y Safari. Opera ni lo tocaron.

Y ahora, me encuentro esto:

por que tienes que dejar de utilizar IE-590x313

En breve aparecerá HTML5 y estas capturas de pantalla nos muestran como de preparados estan nuestros navegadores para el nuevo estándard. Hasta ahora usábamos (y usamos) HTML4 pero pronto y paulatinamente, se irá implentando HTML5. Como véis, otra vez Chrome gana IExplorer. Firefox (imágen siguiente) está sobre el 101 sobre 160 y Safari no lo he probado.

firefox

Yo de momento, ya me he cambiado (hace días), Chrome en el portátil y Chromium en Ubuntu y lo que si puedo certificar es que va muchísimo más rápido que cualquier otro navegador. Ahora, lo unico que hecho en falta es el Roboform. ¿Aun tenéis excusas para no cambiar?

Fuente | Geekyplanet, Gran Angular

Página de test | HTML5test

Como habilitar el soporte Flash en Chromium para Ubuntu

El siguiente tutorial pretende mostrar como habilitar el Flash para disfrutar de, por ejemplo, sitios como youtube.com en nuestro navegador Chromium instalado en un Ubuntu 9.04.

Lo primero es tener Chromium instalado en nuestro sistema. Si no es el caso puedes hacer lo siguiente:

  • Primero de todo debes añadir un par de lineas a tu sources.list.
    sudo gedit /etc/apt/sources.list
    y añades
    deb http://ppa.launchpad.net/chromium-daily/ppa/ubuntu jaunty main
    deb-src http://ppa.launchpad.net/chromium-daily/ppa/ubuntu jaunty main
  • Seguidamente obtenemos la GPG Key con el siguiente comando
    sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xfbef0d696de1c72ba5a835fe5a9bf3bb4e5e17b5
  • Y ya solo debemos actualizar nuestra lista de repositorios e instalar Chromium.
    sudo apt-get update
    sudo apt-get install chromium-browser

Y ahora ya nos podemos dedicar al plugin del Flash.

  • Como primer paso debemos tener el plugin de Flash instalado
    sudo apt-get install flashplugin-nonfree
  • Una vez instalado, lo copiamos a la carpeta de plugins de Chromium.
    sudo cp /usr/lib/flashplugin-installer/libflashplayer.so /usr/lib/chromium-browser/plugins
  • Y ya solo nos queda iniciar Chromium
    chromium-browser –enable-plugins

Y si quieres lanzarlo desde el escritorio solo tienes que añadir el lanzador de Chromium (Applications->Internet->Chromium Browser) al Panel, y desde allí (botón derecho) modificas el comando a ejecutar por
chromium-browser --enable-plugins

Es lo unico que tenemos que hacer para disponer de Flash en nuestro “flamante” Chromium xD