miércoles, 15 de julio de 2009

Iconos de ejecutables de Windows/Wine en Ubuntu con Gnome

Este truco lo descubrí hace algún tiempo de la mano del blog de Kaeltas. Si usas Wine o compartes disco con una instalación de Windows y te molesta no ver los iconos de los archivos nativos de Windows aquí esta una posible solución. Eso si, solo válida para el entorno de escritorio Gnome...

Empieza por instalar el paquete icoutils:
sudo aptitude install icoutils
Comprueba que existe la carpeta ~/.local/share/mime/packages De no existir creala:

mkdir -p ~/.local/share/mime/packages
Ahora crea el archivo de MIME que definirá a como se verán los tipos de archivo *.exe:
gedit ~/.local/share/mime/packages/exemime.xml
Pega el texto de este enlace en el archivo:

http://www.megaupload.com/?d=XINN69YU
Guarda y cierra el archivo. Recarga ahora la base de datos de los tipos MIME:

update-mime-database .local/share/mime/
Ahora tienes que crear un script que se encargue de extraer los iconos de los *.exe usando el paquete que instalaste al principio, icoutils...
sudo gedit /usr/bin/icono-exe.sh
Este será el contenido del script:
#!/bin/sh

f=`mktemp`

if wrestool "$1" -x -t14 > $f && [ -s $f ]; then
id=`icotool -l $f | awk '{
ci=int(substr($2,index($2,"=")+1));
cw=int(substr($3,index($3,"=")+1));
cb=int(substr($5,index($5,"=")+1));

if (cw > w || (cw == w && cb > b)) {
b = cb;
w = cw;
i = ci;
}
}
END {
print i;
}'`

icotool -x --index=$id $f -o "$2"
convert -resize 48×48 "$2" "$2" # optional
else
cp '/usr/share/icons/Tango/scalable/apps/ms-library.svg' "$2"
fi

rm $f


Sal de gedit guardando el archivo y dale permisos de ejecución:

sudo chmod +x /usr/bin/icono-exe.sh
Ya solo queda establecer la nueva regla en el editor de configuración de Gnome. Podríamos hacerlo gráficamente usando gconf-tool, pero ya os digo yo los comandos que es más rápido:

gconftool --type string --set /desktop/gnome/thumbnailers/application@x-exe/command "icono-exe.sh %i %o"

gconftool --type bool --set /desktop/gnome/thumbnailers/application@x-exe/enable true


Y con esto ya terminamos, hasta la proxima!

Fuente: Kaeltas Blog

2 comentarios:

  1. ahora estamos en el 2013 ,como seria la manera de hacerlo? puesto que el paquete iconutils no esta mas en repositorios cual seria el candidato mas idoneo para remplazarlo?

    ResponderEliminar
  2. icoutils si esta en repositorios. Al menos a mi me aparece.

    ResponderEliminar