jueves, 5 de agosto de 2010

Un wallpaper nuevo cada día (con CFDG)

Trasteando con CFDG, por decirlo así, el "padre" en 2D de Structure Synth, y tras comprobar que tiene la misma capacidad que su versión en 3D de generar gráficos aleatorios "interesantes", y que el fondo de pantalla ya lleva un buen tiempo siendo el mismo, ¿que mejor que hacer que este lo genere un programa, haciendo que sea nuevo cada vez? :D

La idea es bastante simple, hacer un script que llame a CFDG sobre un código hecho antes cada vez que se quiera (que el usuario se loguee o cada cierto tiempo aprovechando cron).

El script en sí es bastante sencillo, algo así lo haría perfectamente


 #!/usr/bin/env bash

wide=1280
high=800

cfdg back.cfdg -oback.png -w $wide -h $high &


Por supuesto, habría que cambiar wide por el ancho de la pantalla y high por su alto, para generar una imágen óptima.

El resto no es más dificil, hacer un archivo de CFDG, este por ejemplo genera espirales que parecen hechas con rotulador (¿?) , es grande para incluir más variaciones:

startshape init

rule init{
    dot { saturation 1}
}

// Dot made
rule dot 0.01 {
     SQUARE { }
     dot { s 0.995 rotate 1 x 1 hue -1  }
}

rule dot  {
     SQUARE { }
     dot { s 0.995 rotate -1 x 1 hue 1 }
}

rule dot 0.9 {
     SQUARE { }
     dot { s 1.005 rotate 1 x - 1}
}

/*// Comment this for removing color
rule init 1000{
    dot { saturation 1 brightness 0.9 }
}

rule dot 0.01{
    dot { brightness 0.90 }
}

rule dot 0.01{
    dot { brightness 0 }
}

rule dot 0.01{
    dot { brightness 0.4 }
}

rule dot 0.005{
    dot { hue 180 }

}
//*/


(El /* se puede eliminar para tener algo de colorido, para gustos...)
Y la imagen resultante de ejecutar el script se utiliza de fondo de pantalla, el resultado podría ser algo así en este caso:

Aunque claro, la gracia está en el cambio. Cómo hacer que se ejecute el script es cosa de cada uno, la forma más facil en las distribuciones con gnome (para Xfce, KDE lo mismo) es a través de Sistema > Preferencias > Aplicaciones al inicio, aunque (como ya se dijo antés), cron puede ser una opción interesante para que se renueve incluso cuando no se hace logout.

Hasta otra.

ps: La instalación de CFDG no tiene ningún misterio, se descomprime, se hace make para compilar y sudo cp cfdg /usr/bin/ para instalar.

[Referencias]
CFDG HowTo

No hay comentarios:

Publicar un comentario