3 votos

gpg-agent dejó de funcionar

He estado utilizando con éxito el gnupg21 paquete de MacPorts durante varios meses. En los últimos días he actualizado mi instalación de MacPorts ( sudo port -d selfupdate ) y luego me aseguré de estar al día ( sudo port upgrade outdated ). Desde entonces gpgv2 ya no funciona:

tartarus:~ sbooth$ gpg2 -K
gpg: can't connect to the agent: IPC connect call failed

tartarus:~ sbooth$ gpg-connect-agent
gpg-connect-agent: no running gpg-agent - starting '/opt/local/bin/gpg-agent'
gpg-connect-agent: waiting for the agent to come up ... (5s)
gpg-connect-agent: waiting for the agent to come up ... (4s)
gpg-connect-agent: waiting for the agent to come up ... (3s)
gpg-connect-agent: waiting for the agent to come up ... (2s)
gpg-connect-agent: waiting for the agent to come up ... (1s)
gpg-connect-agent: can't connect to the agent: IPC connect call failed
gpg-connect-agent: error sending standard options: No agent running

tartarus:~ sbooth$ gpg-agent --help
Assertion failed: (res == 0), function enter_npth, file npth.c, line 123.
Abort trap: 6

He desinstalado completamente mi instalación de MacPorts ( rm -rf /opt/local ) y he reinstalado todo, sin éxito. ¿Hay algo más que pueda probar?

Estoy utilizando MacOS Sierra 10.12.1 (16B2657).

4voto

codebrewer Puntos 51

Estoy viendo exactamente el mismo problema y, según un Informe de errores de MacPorts viene de libgpg-error y no se ve con la versión 2.1.16 de GnuPG.

Así que parece que tenemos que esperar a que el gnupg21 puerto para pasar de 2.1.15 a 2.1.16 o modificar y reconstruir localmente el gnupg21 (¿y tal vez algunas de sus dependencias?) para actualizarlo antes de la actualización oficial. Sin embargo, no estoy seguro de querer hacer esto último con algo como GnuPG, aunque es sólo una reacción instintiva.

Solución

En lugar de actualizar gnupg21 He descubierto que bajando de categoría libgpg-error hace que el problema desaparezca (lo he probado por el comentario del Mensaje en la lista de correo de GnuPG vinculado desde el informe de errores que es la actualización de libgpg-error de 1,24 a 1,25 que ha causado el problema).

MacPorts proporciona orientación sobre la reducción de la categoría de un puerto y en uno de mis Macs todavía tenía disponible la versión 1.24 (instalé MacPorts sin privilegios de Root, de ahí la omisión de sudo aquí):

$ port installed inactive | grep libgpg
  libgpg-error @1.24
$ port activate libgpg-error @1.24
--->  Computing dependencies for libgpg-error
--->  Deactivating libgpg-error @1.25_0
--->  Cleaning libgpg-error
--->  Activating libgpg-error @1.24_0
--->  Cleaning libgpg-error
$ port installed inactive | grep libgpg
  libgpg-error @1.25
$ gpg2 -K

No error, much joy :)

No es tan sencillo si se ha eliminado la versión anterior, pero a mí también me funciona (y dada la referencia a los errores de enlace, podría ser prudente desinstalar y volver a instalar gnupg21 después de bajar de categoría libgpg-error si se utiliza el método anterior) :

$ svn checkout -r 150579
https://svn.macports.org/repository/macports/trunk/dports/devel/libgpg-error
Error validating server certificate for 'https://svn.macports.org:443':
 - The certificate is not issued by a trusted authority. Use the
   fingerprint to validate the certificate manually!
Certificate information:
 - Hostname: *.macports.org
 - Valid: from Mar  2 07:47:38 2016 GMT until May  2 01:19:52 2017 GMT
 - Issuer: GlobalSign Domain Validation CA - SHA256 - G2, GlobalSign nv-sa, BE
 - Fingerprint: 3E:AF:D7:EA:81:A4:92:33:B6:BC:DA:38:76:C3:15:54:9A:09:50:E0
(R)eject, accept (t)emporarily or accept (p)ermanently? t
A    libgpg-error/files
A    libgpg-error/files/patch-configure.diff
A    libgpg-error/Portfile
Checked out revision 150579.
$ cd libgpg-error/
$ port install
--->  Computing dependencies for libgpg-error
--->  Fetching distfiles for libgpg-error
--->  Verifying checksums for libgpg-error
--->  Extracting libgpg-error
--->  Applying patches to libgpg-error
--->  Configuring libgpg-error
--->  Building libgpg-error
--->  Staging libgpg-error into destroot
--->  Installing libgpg-error @1.24_0
--->  Deactivating libgpg-error @1.25_0
--->  Cleaning libgpg-error
--->  Activating libgpg-error @1.24_0
--->  Cleaning libgpg-error
--->  Updating database of binaries
--->  Scanning binaries for linking errors
--->  Found 16 broken file(s), matching files to ports
--->  Found 1 broken port(s), determining rebuild order
--->  Rebuilding in order
     gnupg21 @2.1.15 +pinentry_mac
Portfile changed since last build; discarding previous state.
--->  Computing dependencies for gnupg21
--->  Cleaning gnupg21
--->  Scanning binaries for linking errors
--->  Found 16 broken file(s), matching files to ports
--->  Found 1 broken port(s), determining rebuild order
--->  Rebuilding in order
     gnupg21 @2.1.15 +pinentry_mac
--->  Computing dependencies for gnupg21
--->  Fetching distfiles for gnupg21
--->  Verifying checksums for gnupg21
--->  Extracting gnupg21
--->  Configuring gnupg21
--->  Building gnupg21
--->  Staging gnupg21 into destroot
--->  Deactivating gnupg21 @2.1.15_0+pinentry_mac
--->  Cleaning gnupg21
--->  Uninstalling gnupg21 @2.1.15_0+pinentry_mac
--->  Cleaning gnupg21
--->  Computing dependencies for gnupg21
--->  Installing gnupg21 @2.1.15_0+pinentry_mac
--->  Activating gnupg21 @2.1.15_0+pinentry_mac

GPG 2.1 uses a new format for its key files. Therefore you cannot use it together with any earlier version of GPG. Neither can you
easily go back to an older version as the old version cannot read the new format.

--->  Cleaning gnupg21
--->  Updating database of binaries
--->  Scanning binaries for linking errors
--->  No broken files found.

0 votos

Es la primera vez que tengo un problema con MacPorts, pero lamentablemente es un gran problema. Esperemos que se muevan rápidamente en este caso.

0 votos

@sbooth - perdón por las múltiples ediciones a mi respuesta (y me pregunto si es mala forma editar una respuesta que ya ha sido aceptada (novato aquí...)).

0 votos

Bajar de categoría libgpg-error hizo el truco. Gracias por la sugerencia.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X