Pues al final, después de unos años con Debian GNU/linux, sin reinstalar ni una sola vez, me he pasado a la nueva versión de Ubuntu 10.04, para cambiar y aprovechar esta “Long Term Support”.  Todo ha ido muy bien hasta ahora, desde que probé Ubuntu por primera vez esta ha madurado mucho. No he tenido problemas con nada, salvo ahora con mi iPod nano 5th generation, con el cual nunca tuve problemas en Debian, pero al conectarlo por primera vez en Ubuntu 10.04 no se montaba.
Por supuesto Rhythmbox ni lo olÃa tampoco. Echando un vistazo con ‘dmesg’ vi que el SO lo detectaba sin problemas, y que lo podÃa montar a mano con ‘mount’ y el flag ‘-t vfat’, pero lo que yo querÃa es que me lo montara solo, e incluso que me preguntara si querÃa abrirlo con Rhythmbox.
Instalé ‘libgpod’ desde repos para ver si se solucionaba el problema, pero observé que el iPod se montaba de forma temporal en ‘/tmp’ pero nunca llegaba a abrirse de forma correcta con Nautilus por ejemplo, y Rhythmbox seguÃa a lo suyo…
Dije, bueno voy a quitar ‘libgpod’ y bajar la última versión desde su web y compilarla, pero antes probé otra vez a conectar el iPod y ahora para mi sorpresa si que era detectado (justo cuando habÃa desinstalado libgpod) pero a la hora de abrir el Rhythmbox este se cerraba.
Lo abrà desde terminal y vi que se debÃa a un fallo en una parte del código de ‘libgpod’, que provocaba que el reproductor se abortara.
Al final para solucionar todo esto, lo que hice fue bajar los sources de libgpod desde aquÃ:Â http://sourceforge.net/projects/gtkpod/files/
Descomprimirlos y editar el archivo  ”db-parse-context.c” que se encuentra en el directorio ’src’.
Lo que hice fue comentar las lÃneas 90 a 93 ambas inclusive, para los que no sepan, estaban asÃ:
90
91
92
93
| g_assert ((ctx->cur_pos - ctx->buffer) <= len);
if (ctx->header_len != 0) {
g_assert (len >= ctx->header_len);
} |
y las he dejado asÃ:
90
91
92
93
| //g_assert ((ctx->cur_pos - ctx->buffer) <= len);
//if (ctx->header_len != 0) {
//g_assert (len >= ctx->header_len);
//} |
Ahora ya se puede compilar el programa. Yo lo he hecho de la siguiente forma:
./configure –prefix=/usr/ (son dos guiones, no uno, wordpress lo muestra mal)
make
sudo make install
Puede que el ‘configure’ os muestre algún error de que os falta algún paquete, o que alguna versión de alguno es antigua. A mi concretamente con Ubuntu recién instalado de hace un par de semanas se me ha quejado de la versión de  ’intltool’ y de que no existÃa el paquete ’sqlite3′. Como están en repos se soluciona con:
sudo aptitude install intltool libsqlite3-dev
A configure le indico la ruta ‘/usr’ por que por defecto lo instala en ‘/usr/local’ y luego habrÃa que indicarle a Rhythmbox que utilizara ese PATH para cargar libgtkpod… Vamos que mejor instalarlo en ‘/usr’.
Y con todo esto se solucionó el problema, ahora cada vez que conecto el iPod se monta sin problemas en ‘/media/nombreiPod’, se muestra icono en el escritorio, se abre una ventana preguntando qué quiero hacer, y lo más importante, Rhythmbox lo detecta y lo maneja perfectamente

Apple, GNU/Linux, Multimedia, códigos, iPod
Comentarios recientes