Dagi3d v4

Beryl en Ubuntu

Ya conseguí instalar Beryl en mi ordenador siguiendo algunos de los muchos howtos que circulan por la red. La pega es que no conseguí que mi tarjeta funcionase con AIGLX(que viene ya por defecto con Ubuntu/Edgy) y estoy utilizando XGL junto a los paquetes del repositorio de subversion de Beryl.
De momento me ha parecido bastante estable y fluido y no noté ninguna merma en el rendimiento del sistema, así que me parece que lo dejaré un tiempo para ver que tal.
A pesar de que tiene algunos plugins que creo que no aportan nada en cuanto a usabilidad(como las ventanas de gelatina por ejemplo), creo que hay algunos muy interesantes como la generación de miniaturas en la barra de tareas o en el selector de ventanas, así como la reorganización de ventanas al más puro estilo Expose de MacOs.
Luego están esos pequeños toques que hacen que el escritorio se convierta en algo vistoso como el conocido plugin del cubo para moverse entre los escritorios virtuales o la transparencia y efectos de sombra de las ventanas.
Y todo esto sin apenas consumir recursos, de código abierto y por el módico precio de cero euros.






Convertir ficheros m4a a mp3 con ruby

Buscando cómo convertir  los ficheros de audio en formato m4a a mp3 bajo linux, vi que la solución más común era realizar un script en bash que se encargase de llamar a los programas mplayer y lame.
El problema es que si bien las soluciones que proponían eran totalmente funcionales, los scripts en bash siempre me han parecido un tanto crípticos, así que me decidí a implementar uno en ruby(el próximo paso será utilizar wxRuby para seguir trasteando y añadirle una interfaz al frontend):
#!/usr/bin/env ruby

if ARGV.length < 2
puts "usage: #{File.basename(__FILE__)} <source dir> <target dir>"
exit(1)
end

src = ARGV[0]
target = ARGV[1]

if !File.exist?(src) || !File.readable?(src) || !File.directory?(src)
puts "#{src} access denied"
exit(1)
end

if !File.exist?(target) || !File.writable?(target) || !File.directory?(target)
puts "#{target} access denied"
exit(1)
end

src_dir = Dir.new(src)

src_dir.entries.each do |entry|

src_file = File.join(src, entry)

if File.extname(src_file).downcase == ".m4a"

target_file = File.join(target, File.basename(src_file).gsub(/\.m4a$/i, ""))
puts "Converting #{src_file}"

%x(mplayer -ao pcm:file="#{target_file}.wav" "#{src_file}")
%x(lame -h -b 192 "#{target_file}.wav" "#{target_file}.mp3")
File.delete("#{target_file}.wav")
end

end
Tan sólo hay que indicarle al script en el primer parámetro el directorio origen que contiene los ficheros m4a, y como segundo parámetro dónde queremos que se generen los ficheros mp3.

Los Reincidentes se pasan al country

El otro día me compré el último disco de Reincidentes (sí señores de la SGAE, a pesar del p2p y demás inventos del diablo seguimos comprando música, que una cosa no quita la otra) y al meter el cd en el ordenador para escucharlo me saltó automáticamente el Sound Juice CD Extractor (ni sabía que lo tenía instalado :P) para pasar las pistas de audio al ordenador. Hasta ahí todo normal si no fuese porque el programa mostraba los siguientes títulos para las canciones:

WTF!

Lo primero que se me pasó por la cabeza es que se les había ido la olla al planchar los cd’s y nos habían regalado una bonita selección de canciones country. A continuación pensé que se trataba de un cd no compatible de estos que están tan de moda últimamente y que al meter el disco en el ordenador te sacaba un contenido alternativo, pero claro, no van a ser tan cabrones esta gente de los reinci y al final, como casi siempre, la solución más sencilla es la correcta: se trataba de un error en la base de datos de freedb.

El Fary recomienda Ubuntu

lol

Vía Planet Ubuntu

Imagen de Ubuntu

Mira que me gusta la distribución de Ubuntu (de hecho es la que uso habitualmente), pero es que las fotografías que usan para promocionarla me dan MUCHA GRIMA.