GLMatrix


xscreensaver.

Entrar a la página del xscreensaver, y descargamos la última versión del source code (código fuente).

www.jwz.org/xscreensaver/download.html

O lo podemos descargar directamente desde la terminal con wget, siempre sabiendo la version del mismo, en este caso 5.20:

 $ wget http://www.jwz.org/xscreensaver/xscreensaver-5.20.tar.gz

Lo descomprimimos:

 $ tar -xf xscreensaver-5.20.tar.gz

 2- Verificar sus dependencias.

Vamos a verificar que tenemos los paquetes necesarios para que se pueda usar el xscreensaver, para esto utilizaremos el ‘configure’. Hay que prestar atención a la salida (output) que nos den, para saber si nos falta algún paquete, o hay algún error. De faltar algún paquete, busquenlo y descarguenlo (puede ser por medio de synaptics, apt, pacman, etcétera – dependiendo de gustos y distros).

-Ingresamos a la carpeta recién descomprimida:

 $ cd xscreensaver-5.20/

Ejecutamos lo siguiente:

 $ ./configure

3- Verificamos correcto funcionamiento.

De no faltar ningún paquete, ni haber ningún error; procedemos a instalar el xscreensaver, para verificar que funcione correctamente.

Ejecutamos:

 $ make
Nota: el make suele tardar unos cuantos minutos, ya que genera todos los archivos a .o (executables) a partir de los .c (código), es decir compila el paquete.

Si no hay errores en el make, como usuario ‘root’ lo instalamos:

 # make install
Nota: no voy a explicar en detalle para los que no entiendan acerca de que hacen estos comandos, para más información busquen acerca de compilación y Makefiles.

Probamos:

 $ xscreensaver-demo

4- Modificar /hacks/glx/glmatrix.c

Habran con su editor de texto favorito (vim, nano, gedit, etc) en mi caso vi, el archivo que vamos a modificar en este caso:

 $ vi ./hacks/glx/glmatrix.c

Tienen que encontrar un bloque con la siguiente forma:
{
unsigned long p = XGetPixel (xi, x, y);
unsigned char r = (p >> rpos) & 0xFF;
unsigned char g = (p >> gpos) & 0xFF;
unsigned char b = (p >> bpos) & 0xFF;
unsigned char a = g;
g = 0xFF;
p = (r << rpos) | (g << gpos) | (b << bpos) | (a << apos);
XPutPixel (xi, x, y, p);
}

Se encuentra aproximadamente en la línea 760, pero buscando “a = g” deberían encontrarlo enseguida

Y agregamos de la siguiente manera el color deseado:
{
unsigned long p = XGetPixel (xi, x, y);
unsigned char r = (p >> rpos) & 0xFF;
unsigned char g = (p >> gpos) & 0xFF;
unsigned char b = (p >> bpos) & 0xFF;
unsigned char a = g;
r = 0x71;
g = 0x93;
b = 0xD1;

p = (r << rpos) | (g << gpos) | (b << bpos) | (a << apos);
XPutPixel (xi, x, y, p);
}

Siendo en Hexadecimal RGB (red-green-blue)

Por ejemplo, el característico azul de Arch Linux es el: #1793D1, quedando:

r = 0×71;
g = 0×93;
b = 0xD1;

Guardamos los cambios.

5- Recompilamos el nuevo xscreensaver con el glmatrix modificado.

En este punto haremos prácticamente lo mismo que en el punto 2, pero esta vez para plasmar los cambios que hicimos.

Ejecutamos:

 $ make clean

Luego:

 $ make

Si no salió ninguna clase de error en el make, como usuario ‘root’ ejecutamos:

 # make install

6- Ejecutamos, verificamos, configuramos y disfrutamos.

Ejecutamos:

 $ xscreensaver-demo

En la lista elegimos GLMatrix:

GLMatrix Preview

 

Y en la presentación debería ya verse del color que eligieron.

Nota: en algunos casos, puede que para que se efectuen los cambios tanto en el “Preview” como cuando se ejecuta, sea necesario reiniciar la computadora.

Configuren a gusto..y disfruten ;)

7- Algunos ejemplos de distintos colores. (+ TIP)

Color Hexadecimal: #9F03D9

 

Color Hexadecimal: #D41213

 

Color Hexadecimal: #E5E311

 

TIP: para saber un color en Hexadecimal utilizo GIMP, abrimos la paleta de colores y figura como “Notación HTML”. También podemos apretar la ‘o‘ y tomar el color de una imágen para saber cual es su color en Hex.

fuente:http://blog.desdelinux.net/hacking-the-glmatrix/

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s