gpgme 1.5.0 assumes gpgsm is always present if gpgconf is found

Daiki Ueno ueno at
Thu Jun 26 10:40:22 CEST 2014


I've just upgraded ruby-gpgme to gpgme 1.5.0 (from 1.4.3).  For some
reason, it locally rebuilds libgpg-error, libassuan, and gpgme tarballs.

Currently the gpgme build is failing on Travis CI:

  gpgsm --import ./cert_g10code_test1.der
  /bin/bash: gpgsm: command not found
  make[3]: *** [pubring.kbx] Error 127
(For more details, click 'after_failure' button at the bottom)

Apparently this is because of the following commit:

  commit a4c80126ae4754c8478c69a8a24a6ffd975485fc
  Author: Werner Koch <wk at>
  Date:   Fri Aug 2 15:25:23 2013 +0200

      Prefer GnuPG-2 engines over GnuPG-1.

      The default engines names are now taken from the output of gpgconf.
      If gpgconf is not installed gpg 1 is assumed and locate the same was
      as gpgconf.

This assumes that all GnuPG components are installed on the system, if
gpgconf is available, but some distributions split packages for gpgsm,
scdaemon, etc.  The Travis build VM seems to use Ubuntu 12.04 LTS, where
gpgsm is not installed.

Daiki Ueno

More information about the Gnupg-devel mailing list