emerger un paquete tras modificar el codigo fuente

Tengo el codigo de un programa en un tar.bz2 situado en /usr/portage/distfiles (osea, un programa que me ha bajado portage) y he extraido el contenido del paquete, lo he modificado, lo he vuelto a comprimir y lo he colocado de nuevo en su sitio, pero cuando hago
#emerge elPaquete
me dice:
!!! Digest verification Failed:
!!!    /usr/portage/distfiles/elPaquete.tar.bz2
!!! Reason: Filesize does not match recorded size


¿Puedo pasarle alguna opcion a portage para que no chequee el tamaño?
De lo contrario, ¿como se podria hacer lo que quiero?

Gracias.
Tengo el codigo de un programa en un tar.bz2 situado en /usr/portage/distfiles (osea, un programa que me ha bajado portage) y he extraido el contenido del paquete, lo he modificado, lo he vuelto a comprimir y lo he colocado de nuevo en su sitio, pero cuando hago


Mal hecho ! Deberías haber hecho un parche y modificar el ebuild desde un overlay.

Para solucionar tu problema puedes (como root):

( v=$(equery which elPaquete) ;
cd ${v%/*.ebuild} ;
ebuild ${v##*/} digest )


PD: Es mejor que hagas lo que te he dicho en lugar de esto... pero tu mismo.

Salu2.Ferdy
Ferdy escribió:
Mal hecho ! Deberías haber hecho un parche y modificar el ebuild desde un overlay.


Oooh Ya me gustaria saber hacer eso!

De momento lo intento con la forma "rudimentaria" que me has indicado
root@localhost riot # ( v=$(equery which amule) ;
> cd ${v%/*.ebuild} ;
> ebuild ${v##*/} digest )
bash: equery: command not found
expecting two arguments.


No se si lo he echo bien pero no me funciona.

P.D: Perdon por mi ignorancia, voy poco a poco!
El equery está en el paquete gentoolkit ;)

Si no quieres instalarlo, pues vete al directorio donde está el ebuild tuyo y le pones la última linea que te pone Ferdy

ebuild nombreebuild digest


Chau
Riot escribió:Ya me gustaria saber hacer eso!

Es bastante más sencillo que modificar el fuente. diff -c old new > parche, cp parche overlay/paquete/files, añades epatch ${FILESDIR}/parche a src_unpack en el .ebuild, y listo. Muy a grosso modo, claro :P. Mírate unos pocos ebuilds y esto y verás que es la cosa más simple del mundo.
No solo es más fácil si no que además es la forma correcta de hacerlo.

Salu2.Ferdy
5 respuestas