[uylug-varios] paquetes rotos
Eduardo Trápani
etrapani at unesco.org.uy
Mon Apr 30 07:44:17 PDT 2012
> libpopt0 lo tengo instalado en versión de 64 bits, cuando probé instalar
> el de 32 bits me desinstaló un montonazo de paquetes que me desacomodó
> todo el sistema, por suerte encontré el log de dpkg y volví a instalar
> todos los paquetes que se habían borrado.
Sí, tiene muchas dependencias. Igual supongo que te avisó antes, ¿no?
Cuando dice que va a borrar mucho ... conviene repasar la selección.
Las dependencias hacen que un sólo paquete se pueda "llevar puesto"
medio sistema.
> Es una atada con alambre pero me sirve hasta que aparezca un paquete de
> 64 o encuentre una nueva solución.
Bueno, si llegaste a eso te paso otra solución. Es muuuy chaaaancha :),
pero es fácil y te quedan los paquetes instalados y no se queja más.
Lo que hacés es desarmar el paquete, cambiarle la declaración de
arquitectura, y volverlo a armar. No es peor que instalarlo con el
--force-architecture.
Entonces, en la carpeta donde estan los paquetes (habiéndolos
desinstalado), los abrís, después le extraés la metadata, modificás una
línea y después los armás con dpkg-deb. Lleva segundos nada más.
¡Animate! Te dejo los comandos reales, debería ser sólo copiar y pegar.
Extraés:
$ dpkg -x cnijfilter-common_3.30-1_i386.deb common
$ dpkg -x cnijfilter-mx340series_3.30-1_i386.deb mx
$ dpkg -e cnijfilter-mx340series_3.30-1_i386.deb mx/DEBIAN
$ dpkg -e cnijfilter-common_3.30-1_i386.deb common/DEBIAN
Ahora editás la metadata y cambiás la línea que dice "Architecture:
i386" por "Architecture: amd64" (si es ia64, entonces "Architecture: ia64"):
$ vi mx/DEBIAN/control # vi o gedit, o emacs, lo que uses
$ vi common/DEBIAN/control
Ahora armás los paquetes de nuevo, con la nueva declaración de arquitectura:
$ dpkg-deb -b mx /tmp
$ dpkg-deb -b common /tmp
Y ahí están, en el /tmp. Fijate de instalar los que son, con el nombre
de la arquitectura correcta (el dpkg-deb te imprime el nombre), con
"dpkg -i".
Eduardo.
More information about the Uylug-varios
mailing list