Menu

Enigmail cannot find GnuPG binary (Windows)

2017-02-05
2017-02-05
  • Neil Richardson

    Neil Richardson - 2017-02-05

    Hello.

    I feel like this has come up before, but I tried searching Google, the support forum on SourceForge, and the mailing list, but couldn't find a match so I have to ask for help.

    I previously had success using Windows Thunderbird + GnuPG + Enigmail, but then "something broke" and I was without GnuPG for a while; eventually I reinstalled the OS and GnuPG started working again but Enigmail is giving me a few errors that I think are all related to the same root cause.

    SYMPTOM #1: When I go to menu option "Enigmail | About Enigmail" I first receive this error:

    Enigmail: Error in accessing Enigmail service
    In order to use Enigmail, GnuPG is required. If you did not install GnuPG yet, the easiest way to do this is using the "Setup Wizard" button below."

    SYMPTOM #2: When I dismiss the dialog, the "About Enigmail" window appears:

    Running Enigmail version 1.9.6.1 (20161116-1713)
    ERROR: Failed to access Enigmail core service!

    SYMPTOM #3: When I go to menu option "Enigmail | Setup Wizard," regardless of whether I select the standard/extended/manual configuration, I am taken to the "GnuPG Required" screen ("The wizard tried to locate the GnuPG executable, but it could not be found.") When I use the "Browse" button to locate the GnuPG binary, it says that the file selected (C:\Program Files (x86)\GNU\GnuPG\gpg2.exe) is "not a GnuPG executable."

    WHAT I TRIED:

    • I tried looking at the logs (inline, at bottom) for errors, but it looks like it DOES find the binary, and I see no 'ERROR' or 'WARN' level messages.
    • I also tried uninstalling the Enigmail plugin folder from my Thunderbird profile (plus manually deleting the remaining folder), but my settings persisted after reinstalling, so it's possible that some old installation data is causing a problem, but I haven't figured out where it might be coming from yet.
    • I saw a post that there can be errors if the wrong key is configured under the account settings (although that would seem to assume that Enigmail was running) so I went in to the account settings and updated the key to use, but that did not help (though it's further evidence that old configuration data is being persisted).
    • I considered that the whitespace in the default path name to the GnuPG binary is causing problems, but the timestamp below at 2017-02-05 07:04:17.651 shows it is quoting the full pathname of the file, so I ASSUME (which may be wrong) that this is not the problem...
    • Found post at https://sourceforge.net/p/enigmail/forum/support/thread/e6db078d/ ("Enigmail fails to find gnupg executable ") but that's Linux. I tried to use the nightly build that was linked as a fix (https://www.enigmail.net/download/nightly/enigmail-nightly-1.9.6.1.xpi) even though it looks like the same version as what was installed, but it did not fix the problem.

    ENVIRONMENT

    • Windows 7
    • Thunderbird (45.7.0 in this particular case)
    • Enigmail 1.9.6.1
    • Gpg4win 2.3.3 (gpg 2.0.30)

    ----->8===== ENIGMAIL DEBUG LOG (BEGIN CUT AND PASTE) =====8<-----

    Enigmail version 1.9.6.1
    OS/CPU=Windows NT 6.1; WOW64
    Platform=Windows
    Non-default preference values:
    keyCheckResult: {"expiredList":[],"lastCheck":1486248638971}
    autoDecrypt: false
    keyserver: hkp://subkeys.pgp.net, ldap://certserver.pgp.com, http://keys.gnupg.net, pgp.mit.edu, http://wwwkeys.us.pgp.net, wwwkeys.eu.pgp.net, random.sks.keyserver.penguin.de, search.keyserver.net, pgp.dtype.org, keyserver.mine.nu, keyserver.kjsl.com
    logDirectory: c:\notused\weekly\1\
    encryptAttachments: 0
    advancedUser: true
    configuredVersion: 1.9.6.1
    agentAdditionalParam: --homedir g:/
    disableSMIMEui: true
    gpgVersionWarnCount: 0
    recipientsSelectionOption: 2
    useDefaultComment: false
    maxIdleMinutes: 1
    composeHtmlAlertCount: 0
    
    2017-02-05 07:01:22.970 Mozilla Platform: Thunderbird 45.7.0
    2017-02-05 07:01:22.970 [DEBUG] keyRing.jsm: EnigmailKeyRing.clearCache
    2017-02-05 07:01:26.091 [DEBUG] mimeVerify.jsm: registerContentTypeHandler
    2017-02-05 07:01:30.831 [DEBUG] enigmailMsgHdrViewOverlay.js: this.msgHdrViewLoad
    2017-02-05 07:01:31.416 [DEBUG] enigmailMsgHdrViewOverlay.js: this.hdrViewLoad
    2017-02-05 07:01:31.465 [DEBUG] enigmailMessengerOverlay.js: Startup
    2017-02-05 07:01:31.465 [DEBUG] enigmailMessengerOverlay.js: overrideAttribute oncommand: oldValue=goDoCommand('cmd_print')
    2017-02-05 07:01:31.465 [DEBUG] enigmailMessengerOverlay.js: overrideAttribute oncommand: oldValue=goDoCommand('cmd_printpreview')
    2017-02-05 07:01:31.465 [DEBUG] enigmailMessengerOverlay.js: overrideAttribute oncommand: oldValue=goDoCommand('cmd_print')
    2017-02-05 07:01:31.466 [DEBUG] enigmailMessengerOverlay.js: *** UNABLE to override id=button-print
    2017-02-05 07:01:31.466 [DEBUG] enigmailMessengerOverlay.js: overrideAttribute oncommand: oldValue=Enigmail.msg.msgPrint('cmd_print');
    2017-02-05 07:01:31.466 [DEBUG] enigmailMessengerOverlay.js: overrideAttribute oncommand: oldValue=Enigmail.msg.msgPrint('cmd_printpreview');
    2017-02-05 07:01:31.466 [DEBUG] enigmailMessengerOverlay.js: overrideLayoutChange
    2017-02-05 07:01:32.318 [DEBUG] enigmailMessengerOverlay.js: setAttachmentReveal
    2017-02-05 07:01:32.322 [DEBUG] enigmailMessengerOverlay.js: setAttachmentReveal
    2017-02-05 07:01:32.327 [DEBUG] enigmailMessengerOverlay.js: setAttachmentReveal
    2017-02-05 07:01:39.267 [DEBUG] enigmailMessengerOverlay.js: messageFrameUnload
    2017-02-05 07:01:39.267 [DEBUG] enigmailMessengerOverlay.js: messageCleanup
    2017-02-05 07:01:39.267 [DEBUG] enigmailMessengerOverlay.js: setAttachmentReveal
    2017-02-05 07:01:48.716 [DEBUG] enigmailMessengerOverlay.js: setAttachmentReveal
    2017-02-05 07:02:31.274 [DEBUG] enigmailMessengerOverlay.js: updateOptionsDisplay: 
    2017-02-05 07:02:31.274 [DEBUG] funcs.jsm: collapseAdvanced:
    2017-02-05 07:02:31.468 [DEBUG] expiry.jsm: keyExpiryCheck()
    2017-02-05 07:02:31.468 [DEBUG] expiry.jsm: getNewlyExpiredKeys()
    2017-02-05 07:02:33.048 [DEBUG] enigmailAbout.js: enigAboutLoad
    2017-02-05 07:02:33.048 [DEBUG] enigmailCommon.jsm: getFrame: name=contentFrame
    2017-02-05 07:02:33.048 [DEBUG] app.jsm: getVersion
    2017-02-05 07:02:33.048 [DEBUG] app.jsm: installed version: 1.9.6.1
    2017-02-05 07:02:33.049 [DEBUG] enigmail.js: svc = [xpconnect wrapped nsIEnigmail]
    2017-02-05 07:02:33.049 [DEBUG] app.jsm: getVersion
    2017-02-05 07:02:33.050 [DEBUG] app.jsm: installed version: 1.9.6.1
    2017-02-05 07:02:33.050 [DEBUG] app.jsm: getVersion
    2017-02-05 07:02:33.050 [DEBUG] app.jsm: installed version: 1.9.6.1
    2017-02-05 07:02:33.050 [DEBUG] enigmail.js: Enigmail.initialize: START
    2017-02-05 07:02:33.051 [DEBUG] enigmail.js: Logging debug output to c:\notused\weekly\1\/enigdbug.txt
    2017-02-05 07:02:33.053 [DEBUG] enigmail.js: Enigmail.initialize: Ec.envList = GNUPGHOME=g:/,ALLUSERSPROFILE=C:\ProgramData,APPDATA=C:\Users\Neil\AppData\Roaming,COMMONPROGRAMFILES=C:\Program Files (x86)\Common Files,COMSPEC=C:\Windows\system32\cmd.exe,HOMEDRIVE=C:,HOMEPATH=\Users\Neil,PATH=C:\Program Files (x86)\Mozilla Thunderbird;C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Live;c:\Program Files (x86)\Intel\iCLS Client\;c:\Program Files\Intel\iCLS Client\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x86;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x64;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Sony\VAIO Improvement\;C:\Program Files (x86)\Sony\VAIO Startup Setting Tool;C:\Program Files (x86)\Windows Live\Shared;c:\Program Files (x86)\PuTTY\;C:\Program Files\Git\cmd;C:\Program Files (x86)\Common Files\Adobe\AGL;C:\Program Files (x86)\QuickTime\QTSystem\;C:\Program Files (x86)\GNU\GnuPG\pub;C:\Program Files\MiKTeX 2.9\miktex\bin\x64\,PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC,PROGRAMFILES=C:\Program Files (x86),SYSTEMDRIVE=C:,SYSTEMROOT=C:\Windows,TEMP=C:\Users\Neil\AppData\Local\Temp,TMP=C:\Users\Neil\AppData\Local\Temp,USERPROFILE=C:\Users\Neil,WINDIR=C:\Windows
    2017-02-05 07:02:33.053 [DEBUG] gpgAgent.jsm: resetGpgAgent
    2017-02-05 07:02:33.054 [DEBUG] files.jsm: resolvePath: filePath=gpg2.exe;gpg.exe;gpg1.exe
    2017-02-05 07:02:33.054 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Mozilla Thunderbird/gpg2.exe
    2017-02-05 07:02:33.055 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files\Common Files\Microsoft Shared\Windows Live/gpg2.exe
    2017-02-05 07:02:33.055 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Live/gpg2.exe
    2017-02-05 07:02:33.055 [DEBUG] files.jsm: resolvePath: checking for c:\Program Files (x86)\Intel\iCLS Client\/gpg2.exe
    2017-02-05 07:02:33.055 [DEBUG] files.jsm: resolvePath: checking for c:\Program Files\Intel\iCLS Client\/gpg2.exe
    2017-02-05 07:02:33.056 [DEBUG] files.jsm: resolvePath: checking for C:\Windows\system32/gpg2.exe
    2017-02-05 07:02:33.056 [DEBUG] files.jsm: resolvePath: checking for C:\Windows/gpg2.exe
    2017-02-05 07:02:33.056 [DEBUG] files.jsm: resolvePath: checking for C:\Windows\System32\Wbem/gpg2.exe
    2017-02-05 07:02:33.056 [DEBUG] files.jsm: resolvePath: checking for C:\Windows\System32\WindowsPowerShell\v1.0\/gpg2.exe
    2017-02-05 07:02:33.057 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x86/gpg2.exe
    2017-02-05 07:02:33.057 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x64/gpg2.exe
    2017-02-05 07:02:33.057 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files\Intel\Intel(R) Management Engine Components\DAL/gpg2.exe
    2017-02-05 07:02:33.057 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files\Intel\Intel(R) Management Engine Components\IPT/gpg2.exe
    2017-02-05 07:02:33.058 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL/gpg2.exe
    2017-02-05 07:02:33.058 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT/gpg2.exe
    2017-02-05 07:02:33.058 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files\Sony\VAIO Improvement\/gpg2.exe
    2017-02-05 07:02:33.058 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Sony\VAIO Startup Setting Tool/gpg2.exe
    2017-02-05 07:02:33.059 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Windows Live\Shared/gpg2.exe
    2017-02-05 07:02:33.059 [DEBUG] files.jsm: resolvePath: checking for c:\Program Files (x86)\PuTTY\/gpg2.exe
    2017-02-05 07:02:33.059 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files\Git\cmd/gpg2.exe
    2017-02-05 07:02:33.059 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Common Files\Adobe\AGL/gpg2.exe
    2017-02-05 07:02:33.060 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\QuickTime\QTSystem\/gpg2.exe
    2017-02-05 07:02:33.060 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\GNU\GnuPG\pub/gpg2.exe
    2017-02-05 07:02:33.061 [CONSOLE] EnigmailAgentPath=C:\Program Files (x86)\GNU\GnuPG\pub\gpg2.exe
    
    2017-02-05 07:02:33.061 [DEBUG] enigmail.js: Enigmail.setAgentPath: calling subprocess with 'C:\Program Files (x86)\GNU\GnuPG\pub\gpg2.exe'
    2017-02-05 07:02:33.061 [CONSOLE] enigmail> "C:\Program Files (x86)\GNU\GnuPG\pub\gpg2.exe" --version --version --batch --no-tty --charset utf-8 --display-charset utf-8
    2017-02-05 07:02:33.153 [DEBUG]   enigmail> DONE
    2017-02-05 07:02:33.153 [DEBUG] system.jsm: determineSystemCharset
    2017-02-05 07:02:33.153 [DEBUG] system.jsm: getWindowsCopdepage
    2017-02-05 07:02:33.357 [DEBUG] system.jsm: determineSystemCharset: charset='437'
    2017-02-05 07:02:33.358 [CONSOLE] gpgwrap (Gpg4win) 2.3.3 ;C:\Program Files (x86)\GNU\GnuPG\gpg2.exe
    gpg (GnuPG) 2.0.30 (Gpg4win 2.3.3)
    libgcrypt 1.6.6
    Copyright (C) 2015 Free Software Foundation, Inc.
    License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
    This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.
    
    Home: g:/
    Supported algorithms:
    Pubkey: RSA, RSA, RSA, ELG, DSA
    Cipher: IDEA, 3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH,
            CAMELLIA128, CAMELLIA192, CAMELLIA256
    Hash: MD5, SHA1, RIPEMD160, SHA256, SHA384, SHA512, SHA224
    Compression: Uncompressed, ZIP, ZLIB, BZIP2
    
    2017-02-05 07:02:33.358 [CONSOLE] gpg4win-gpgwrapper detected; EnigmailAgentPath=C:\Program Files (x86)\GNU\GnuPG\gpg2.exe
    
    2017-02-05 07:02:33.358 [DEBUG] enigmail.js: detected GnuPG version '2.0.30'
    2017-02-05 07:02:33.359 [DEBUG] enigmail.js: Enigmail.setAgentPath: gpgconf found: yes
    2017-02-05 07:02:33.359 [DEBUG] enigmail.js: detectGpgAgent
    2017-02-05 07:02:33.359 [DEBUG] enigmail.js: detectGpgAgent: no GPG_AGENT_INFO variable set
    2017-02-05 07:02:33.359 [DEBUG] enigmail.js: detectGpgAgent: gpg 2.0.16 or newer - not starting agent
    2017-02-05 07:02:33.372 [DEBUG] enigmailCommon.js: EnigInitCommon: id=enigmailAlertDlg
    2017-02-05 07:02:33.389 [DEBUG] enigmailCommon.jsm: dispatchEvent f=resizeDlg
    2017-02-05 07:02:33.499 [DEBUG] enigmailCommon.jsm: dispatchEvent running mainEvent
    2017-02-05 07:03:05.655 [DEBUG] enigmailMessengerOverlay.js: updateOptionsDisplay: 
    2017-02-05 07:03:05.655 [DEBUG] funcs.jsm: collapseAdvanced:
    2017-02-05 07:03:06.835 [DEBUG] enigmailAbout.js: enigAboutLoad
    2017-02-05 07:03:06.836 [DEBUG] enigmailCommon.jsm: getFrame: name=contentFrame
    2017-02-05 07:03:06.836 [DEBUG] app.jsm: getVersion
    2017-02-05 07:03:06.836 [DEBUG] app.jsm: installed version: 1.9.6.1
    2017-02-05 07:03:06.837 [DEBUG] enigmail.js: svc = [xpconnect wrapped nsIEnigmail]
    2017-02-05 07:03:06.837 [DEBUG] app.jsm: getVersion
    2017-02-05 07:03:06.837 [DEBUG] app.jsm: installed version: 1.9.6.1
    2017-02-05 07:03:06.837 [DEBUG] app.jsm: getVersion
    2017-02-05 07:03:06.838 [DEBUG] app.jsm: installed version: 1.9.6.1
    2017-02-05 07:03:06.838 [DEBUG] enigmail.js: Enigmail.initialize: START
    2017-02-05 07:03:06.838 [DEBUG] enigmail.js: Logging debug output to c:\notused\weekly\1\/enigdbug.txt
    2017-02-05 07:03:06.839 [DEBUG] enigmail.js: Enigmail.initialize: Ec.envList = GNUPGHOME=g:/,ALLUSERSPROFILE=C:\ProgramData,APPDATA=C:\Users\Neil\AppData\Roaming,COMMONPROGRAMFILES=C:\Program Files (x86)\Common Files,COMSPEC=C:\Windows\system32\cmd.exe,HOMEDRIVE=C:,HOMEPATH=\Users\Neil,PATH=C:\Program Files (x86)\Mozilla Thunderbird;C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Live;c:\Program Files (x86)\Intel\iCLS Client\;c:\Program Files\Intel\iCLS Client\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x86;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x64;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Sony\VAIO Improvement\;C:\Program Files (x86)\Sony\VAIO Startup Setting Tool;C:\Program Files (x86)\Windows Live\Shared;c:\Program Files (x86)\PuTTY\;C:\Program Files\Git\cmd;C:\Program Files (x86)\Common Files\Adobe\AGL;C:\Program Files (x86)\QuickTime\QTSystem\;C:\Program Files (x86)\GNU\GnuPG\pub;C:\Program Files\MiKTeX 2.9\miktex\bin\x64\,PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC,PROGRAMFILES=C:\Program Files (x86),SYSTEMDRIVE=C:,SYSTEMROOT=C:\Windows,TEMP=C:\Users\Neil\AppData\Local\Temp,TMP=C:\Users\Neil\AppData\Local\Temp,USERPROFILE=C:\Users\Neil,WINDIR=C:\Windows
    2017-02-05 07:03:06.840 [DEBUG] gpgAgent.jsm: resetGpgAgent
    2017-02-05 07:03:06.840 [DEBUG] files.jsm: resolvePath: filePath=gpg2.exe;gpg.exe;gpg1.exe
    2017-02-05 07:03:06.840 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Mozilla Thunderbird/gpg2.exe
    2017-02-05 07:03:06.841 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files\Common Files\Microsoft Shared\Windows Live/gpg2.exe
    2017-02-05 07:03:06.841 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Live/gpg2.exe
    2017-02-05 07:03:06.841 [DEBUG] files.jsm: resolvePath: checking for c:\Program Files (x86)\Intel\iCLS Client\/gpg2.exe
    2017-02-05 07:03:06.841 [DEBUG] files.jsm: resolvePath: checking for c:\Program Files\Intel\iCLS Client\/gpg2.exe
    2017-02-05 07:03:06.842 [DEBUG] files.jsm: resolvePath: checking for C:\Windows\system32/gpg2.exe
    2017-02-05 07:03:06.842 [DEBUG] files.jsm: resolvePath: checking for C:\Windows/gpg2.exe
    2017-02-05 07:03:06.842 [DEBUG] files.jsm: resolvePath: checking for C:\Windows\System32\Wbem/gpg2.exe
    2017-02-05 07:03:06.843 [DEBUG] files.jsm: resolvePath: checking for C:\Windows\System32\WindowsPowerShell\v1.0\/gpg2.exe
    2017-02-05 07:03:06.843 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x86/gpg2.exe
    2017-02-05 07:03:06.843 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x64/gpg2.exe
    2017-02-05 07:03:06.843 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files\Intel\Intel(R) Management Engine Components\DAL/gpg2.exe
    2017-02-05 07:03:06.844 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files\Intel\Intel(R) Management Engine Components\IPT/gpg2.exe
    2017-02-05 07:03:06.844 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL/gpg2.exe
    2017-02-05 07:03:06.844 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT/gpg2.exe
    2017-02-05 07:03:06.844 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files\Sony\VAIO Improvement\/gpg2.exe
    2017-02-05 07:03:06.845 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Sony\VAIO Startup Setting Tool/gpg2.exe
    2017-02-05 07:03:06.845 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Windows Live\Shared/gpg2.exe
    2017-02-05 07:03:06.845 [DEBUG] files.jsm: resolvePath: checking for c:\Program Files (x86)\PuTTY\/gpg2.exe
    2017-02-05 07:03:06.845 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files\Git\cmd/gpg2.exe
    2017-02-05 07:03:06.845 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Common Files\Adobe\AGL/gpg2.exe
    2017-02-05 07:03:06.846 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\QuickTime\QTSystem\/gpg2.exe
    2017-02-05 07:03:06.846 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\GNU\GnuPG\pub/gpg2.exe
    2017-02-05 07:03:06.846 [CONSOLE] EnigmailAgentPath=C:\Program Files (x86)\GNU\GnuPG\pub\gpg2.exe
    
    2017-02-05 07:03:06.846 [DEBUG] enigmail.js: Enigmail.setAgentPath: calling subprocess with 'C:\Program Files (x86)\GNU\GnuPG\pub\gpg2.exe'
    2017-02-05 07:03:06.847 [CONSOLE] enigmail> "C:\Program Files (x86)\GNU\GnuPG\pub\gpg2.exe" --version --version --batch --no-tty --charset utf-8 --display-charset utf-8
    2017-02-05 07:03:06.880 [DEBUG]   enigmail> DONE
    2017-02-05 07:03:06.880 [DEBUG] system.jsm: determineSystemCharset
    2017-02-05 07:03:06.880 [DEBUG] system.jsm: determineSystemCharset: charset='437'
    2017-02-05 07:03:06.881 [CONSOLE] gpgwrap (Gpg4win) 2.3.3 ;C:\Program Files (x86)\GNU\GnuPG\gpg2.exe
    gpg (GnuPG) 2.0.30 (Gpg4win 2.3.3)
    libgcrypt 1.6.6
    Copyright (C) 2015 Free Software Foundation, Inc.
    License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
    This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.
    
    Home: g:/
    Supported algorithms:
    Pubkey: RSA, RSA, RSA, ELG, DSA
    Cipher: IDEA, 3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH,
            CAMELLIA128, CAMELLIA192, CAMELLIA256
    Hash: MD5, SHA1, RIPEMD160, SHA256, SHA384, SHA512, SHA224
    Compression: Uncompressed, ZIP, ZLIB, BZIP2
    
    2017-02-05 07:03:06.881 [CONSOLE] gpg4win-gpgwrapper detected; EnigmailAgentPath=C:\Program Files (x86)\GNU\GnuPG\gpg2.exe
    
    2017-02-05 07:03:06.881 [DEBUG] enigmail.js: detected GnuPG version '2.0.30'
    2017-02-05 07:03:06.882 [DEBUG] enigmail.js: Enigmail.setAgentPath: gpgconf found: yes
    2017-02-05 07:03:06.882 [DEBUG] enigmail.js: detectGpgAgent
    2017-02-05 07:03:06.882 [DEBUG] enigmail.js: detectGpgAgent: no GPG_AGENT_INFO variable set
    2017-02-05 07:03:06.882 [DEBUG] enigmail.js: detectGpgAgent: gpg 2.0.16 or newer - not starting agent
    2017-02-05 07:03:06.896 [DEBUG] enigmailCommon.js: EnigInitCommon: id=enigmailAlertDlg
    2017-02-05 07:03:06.918 [DEBUG] enigmailCommon.jsm: dispatchEvent f=resizeDlg
    2017-02-05 07:03:07.045 [DEBUG] enigmailCommon.jsm: dispatchEvent running mainEvent
    2017-02-05 07:04:13.452 [DEBUG] enigmailMessengerOverlay.js: updateOptionsDisplay: 
    2017-02-05 07:04:13.453 [DEBUG] funcs.jsm: collapseAdvanced:
    2017-02-05 07:04:14.386 [DEBUG] enigmailMessengerOverlay.js: updateOptionsDisplay: 
    2017-02-05 07:04:14.386 [DEBUG] funcs.jsm: collapseAdvanced:
    2017-02-05 07:04:17.643 [DEBUG] enigmailHelp.js: enigLoadPage
    2017-02-05 07:04:17.644 [DEBUG] enigmail.js: svc = [xpconnect wrapped nsIEnigmail]
    2017-02-05 07:04:17.644 [DEBUG] app.jsm: getVersion
    2017-02-05 07:04:17.644 [DEBUG] app.jsm: installed version: 1.9.6.1
    2017-02-05 07:04:17.644 [DEBUG] app.jsm: getVersion
    2017-02-05 07:04:17.644 [DEBUG] app.jsm: installed version: 1.9.6.1
    2017-02-05 07:04:17.645 [DEBUG] enigmail.js: Enigmail.initialize: START
    2017-02-05 07:04:17.645 [DEBUG] enigmail.js: Logging debug output to c:\notused\weekly\1\/enigdbug.txt
    2017-02-05 07:04:17.646 [DEBUG] enigmail.js: Enigmail.initialize: Ec.envList = GNUPGHOME=g:/,ALLUSERSPROFILE=C:\ProgramData,APPDATA=C:\Users\Neil\AppData\Roaming,COMMONPROGRAMFILES=C:\Program Files (x86)\Common Files,COMSPEC=C:\Windows\system32\cmd.exe,HOMEDRIVE=C:,HOMEPATH=\Users\Neil,PATH=C:\Program Files (x86)\Mozilla Thunderbird;C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Live;c:\Program Files (x86)\Intel\iCLS Client\;c:\Program Files\Intel\iCLS Client\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x86;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x64;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Sony\VAIO Improvement\;C:\Program Files (x86)\Sony\VAIO Startup Setting Tool;C:\Program Files (x86)\Windows Live\Shared;c:\Program Files (x86)\PuTTY\;C:\Program Files\Git\cmd;C:\Program Files (x86)\Common Files\Adobe\AGL;C:\Program Files (x86)\QuickTime\QTSystem\;C:\Program Files (x86)\GNU\GnuPG\pub;C:\Program Files\MiKTeX 2.9\miktex\bin\x64\,PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC,PROGRAMFILES=C:\Program Files (x86),SYSTEMDRIVE=C:,SYSTEMROOT=C:\Windows,TEMP=C:\Users\Neil\AppData\Local\Temp,TMP=C:\Users\Neil\AppData\Local\Temp,USERPROFILE=C:\Users\Neil,WINDIR=C:\Windows
    2017-02-05 07:04:17.646 [DEBUG] gpgAgent.jsm: resetGpgAgent
    2017-02-05 07:04:17.646 [DEBUG] files.jsm: resolvePath: filePath=gpg2.exe;gpg.exe;gpg1.exe
    2017-02-05 07:04:17.646 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Mozilla Thunderbird/gpg2.exe
    2017-02-05 07:04:17.646 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files\Common Files\Microsoft Shared\Windows Live/gpg2.exe
    2017-02-05 07:04:17.646 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Live/gpg2.exe
    2017-02-05 07:04:17.647 [DEBUG] files.jsm: resolvePath: checking for c:\Program Files (x86)\Intel\iCLS Client\/gpg2.exe
    2017-02-05 07:04:17.647 [DEBUG] files.jsm: resolvePath: checking for c:\Program Files\Intel\iCLS Client\/gpg2.exe
    2017-02-05 07:04:17.647 [DEBUG] files.jsm: resolvePath: checking for C:\Windows\system32/gpg2.exe
    2017-02-05 07:04:17.647 [DEBUG] files.jsm: resolvePath: checking for C:\Windows/gpg2.exe
    2017-02-05 07:04:17.647 [DEBUG] files.jsm: resolvePath: checking for C:\Windows\System32\Wbem/gpg2.exe
    2017-02-05 07:04:17.648 [DEBUG] files.jsm: resolvePath: checking for C:\Windows\System32\WindowsPowerShell\v1.0\/gpg2.exe
    2017-02-05 07:04:17.648 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x86/gpg2.exe
    2017-02-05 07:04:17.649 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x64/gpg2.exe
    2017-02-05 07:04:17.649 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files\Intel\Intel(R) Management Engine Components\DAL/gpg2.exe
    2017-02-05 07:04:17.649 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files\Intel\Intel(R) Management Engine Components\IPT/gpg2.exe
    2017-02-05 07:04:17.649 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL/gpg2.exe
    2017-02-05 07:04:17.649 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT/gpg2.exe
    2017-02-05 07:04:17.650 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files\Sony\VAIO Improvement\/gpg2.exe
    2017-02-05 07:04:17.650 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Sony\VAIO Startup Setting Tool/gpg2.exe
    2017-02-05 07:04:17.650 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Windows Live\Shared/gpg2.exe
    2017-02-05 07:04:17.650 [DEBUG] files.jsm: resolvePath: checking for c:\Program Files (x86)\PuTTY\/gpg2.exe
    2017-02-05 07:04:17.650 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files\Git\cmd/gpg2.exe
    2017-02-05 07:04:17.650 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\Common Files\Adobe\AGL/gpg2.exe
    2017-02-05 07:04:17.651 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\QuickTime\QTSystem\/gpg2.exe
    2017-02-05 07:04:17.651 [DEBUG] files.jsm: resolvePath: checking for C:\Program Files (x86)\GNU\GnuPG\pub/gpg2.exe
    2017-02-05 07:04:17.651 [CONSOLE] EnigmailAgentPath=C:\Program Files (x86)\GNU\GnuPG\pub\gpg2.exe
    
    2017-02-05 07:04:17.651 [DEBUG] enigmail.js: Enigmail.setAgentPath: calling subprocess with 'C:\Program Files (x86)\GNU\GnuPG\pub\gpg2.exe'
    2017-02-05 07:04:17.652 [CONSOLE] enigmail> "C:\Program Files (x86)\GNU\GnuPG\pub\gpg2.exe" --version --version --batch --no-tty --charset utf-8 --display-charset utf-8
    2017-02-05 07:04:17.676 [DEBUG]   enigmail> DONE
    2017-02-05 07:04:17.676 [DEBUG] system.jsm: determineSystemCharset
    2017-02-05 07:04:17.676 [DEBUG] system.jsm: determineSystemCharset: charset='437'
    2017-02-05 07:04:17.677 [CONSOLE] gpgwrap (Gpg4win) 2.3.3 ;C:\Program Files (x86)\GNU\GnuPG\gpg2.exe
    gpg (GnuPG) 2.0.30 (Gpg4win 2.3.3)
    libgcrypt 1.6.6
    Copyright (C) 2015 Free Software Foundation, Inc.
    License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
    This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.
    
    Home: g:/
    Supported algorithms:
    Pubkey: RSA, RSA, RSA, ELG, DSA
    Cipher: IDEA, 3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH,
            CAMELLIA128, CAMELLIA192, CAMELLIA256
    Hash: MD5, SHA1, RIPEMD160, SHA256, SHA384, SHA512, SHA224
    Compression: Uncompressed, ZIP, ZLIB, BZIP2
    
    2017-02-05 07:04:17.677 [CONSOLE] gpg4win-gpgwrapper detected; EnigmailAgentPath=C:\Program Files (x86)\GNU\GnuPG\gpg2.exe
    
    2017-02-05 07:04:17.677 [DEBUG] enigmail.js: detected GnuPG version '2.0.30'
    2017-02-05 07:04:17.678 [DEBUG] enigmail.js: Enigmail.setAgentPath: gpgconf found: yes
    2017-02-05 07:04:17.678 [DEBUG] enigmail.js: detectGpgAgent
    2017-02-05 07:04:17.678 [DEBUG] enigmail.js: detectGpgAgent: no GPG_AGENT_INFO variable set
    2017-02-05 07:04:17.678 [DEBUG] enigmail.js: detectGpgAgent: gpg 2.0.16 or newer - not starting agent
    2017-02-05 07:04:17.688 [DEBUG] enigmailCommon.js: EnigInitCommon: id=enigmailAlertDlg
    2017-02-05 07:04:17.705 [DEBUG] enigmailCommon.jsm: dispatchEvent f=resizeDlg
    2017-02-05 07:04:17.815 [DEBUG] enigmailCommon.jsm: dispatchEvent running mainEvent
    2017-02-05 07:04:19.268 [DEBUG] enigmailCommon.jsm: getFrame: name=contentFrame
    

    ----->8===== ENIGMAIL DEBUG LOG (END CUT AND PASTE) =====8<-----

    Any help would be greatly appreciated. Thanks!

    -Neil R.

     
  • Patrick Brunschwig

    You are pointing Enigmail to the wrong executable. Gpg4win installs a wrapper called gpg2.exe, which is not gpg2 (but some gpg4win internal tool).

    You need to point Enigmail to:

    C:\Program Files (x86)\GNU\GnuPG\pub\gpg2.exe
    
     
  • Neil Richardson

    Neil Richardson - 2017-02-05

    Unfortunately that did not work either, I got the same error about not being a GnuPG executable file. :-(

    Glancing at the log, I still don't see any warnings or errors. Is there something else I can try? (My inclination at this point would be to do another "clean uninstall", removing all traces of it and trying again, but when I tried that before it still retained settings between attempts, so I don't think I did it right.)

    Thanks,
    -Neil R.

     
  • Patrick Brunschwig

    You set your GnuPG homedir to g:/ but I don't think that this would work. If you're on Windows, it needs to be G:.

    The log doesn't display any error. How about simply restarting Thunderbird?

     
  • Neil Richardson

    Neil Richardson - 2017-02-06

    Unfortunately, neither of these options helped either: I've been closing and reopening Thunderbird with every attempt, and changing the "Additional settings" parameter to --homedir G: from --homedir g:/ didn't help. New log attached (produced by opening Thunderbird, making the requested change, closing, re-opening, going to Enitmail | Debugging Options | View Log | Save to file).

     
  • Patrick Brunschwig

    I tried this on Windows.

    Your GNUPGHOME is still wrong. It must be "g:\". "g:/" will not work, and "g:" will not work either. Please change your GNUPGHOME environment variable and restart Thunderbird afterwards.

     
  • Neil Richardson

    Neil Richardson - 2017-02-06

    My apologies, I thought you were referring to the --homedir option within the Enigmail preferences, not the GNUPGHOME environment variable.

    Per your instructions, I:

    1. Changed the GNUPGHOME environment variable to be g:\
    2. Restarted Thunderbird
    3. Opened Enigmail preferences (Enigmail | Preferences)
    4. Navigated to the "Basic" tab (which now says "GnuPG was found in C:\Program Files (x86)\GNU\GnuPG\pub\gpg2.exe"!) and cleared the 'Override with' checkmark and value
    5. Navigated to the Advanced tab and cleared the --homedir G: from the "Additional parameters for GnuPG" field
    6. Restarted Thunderbird again

    Success! Thank you!!!

    As some follow-up testing, I closed Thunderbird, changed the environment variable back to g:/ from g:\ and when I restarted Thunderbird, it again reported that it could not find the GnuPG executable.

    As a second test, I changed the GNUPGHOME environment variable and got the following results (restarting Thunderbird after every change):

    GNUPGHOME Enigmail finds GnuPG binary
    c:\does_not_exist Yes
    c:\does_not_exist\ Yes
    g: Yes
    g:\ Yes
    g:/ No

    To me this all suggests there are two bugs, but before filing would like to get your thoughts:

    1. Inability to access GNUPGHOME directory (when pointing at a removable drive?) causes Enigmail to fail, reporting that it cannot find the GnuPG binary.
    2. Enigmail on Windows does not recognize Linux-style path separators for GNUPGHOME, even though GnuPG itself does.

    To confirm #2 I performed the following test:

    C:\notused\daily\1>type testall.cmd
    @echo off
    @for %%d in (c:\does_not_exist c:\does_not_exist\ g: g:\ g:/) do (
       set GNUPGHOME=%%d
       echo GNUGPGHOME set to !GNUPGHOME!
       gpg --list-keys 2>nul | find "E098F32E"
       echo Loop end.
    )
    
    C:\notused\daily\1>testall.cmd
    GNUGPGHOME set to c:\does_not_exist
    Loop end.
    GNUGPGHOME set to c:\does_not_exist\
    Loop end.
    GNUGPGHOME set to g:
    pub   1024D/E098F32E 2004-06-05
    Loop end.
    GNUGPGHOME set to g:\
    pub   1024D/E098F32E 2004-06-05
    Loop end.
    GNUGPGHOME set to g:/
    pub   1024D/E098F32E 2004-06-05
    Loop end.
    
    C:\notused\daily\1>
    

    To me, this seems pretty conclusive that GnuPG (on Windows) does not care if GNUPGHOME is set to use g:, g:\ (Windows-style) or g:/ (Linux-style). Maybe I'm missing something though, so I'll wait a day or so to see if there are any objections before I create bug reports for these two issues.

    Thanks again for your help, I'm really happy to have Enigmail working again! :-)
    -Neil R.

     
    • Rob

      Rob - 2017-02-06
      1. Enigmail on Windows does not recognize Linux-style path
        separators for GNUPGHOME, even though GnuPG itself does.

      To be pedantic, GnuPG really doesn't. Path separators are a OS issue.
      Don't use UNIX-style path separators on Windows. That makes about as much
      sense as trying to run a UNIX binary on Windows. The two operating systems
      are different.

      Under Windows the path separator is a backslash, except that sometimes
      (usually but not always) it will accept a forward separator. The particular
      rules on when it's allowed have changed considerably in the last decade.

       
  • Patrick Brunschwig

    The problem is that GnuPG reports an errror to Enigmail if you provide an invalid value for the home directory name to GnuPG. And it seems that invalid does not mean "not existing" but really an invalid value. GnuPG on Windows only accepts backslash for directory names; forward slashes will always cause GnuPG to fail for every type of operation.

    We can argue that Enigmail improperly reports that it cannot find GnuPG, but it remains a fact that the only way to determine if GnuPG is found successfully is to run "gpg --version" and expect a non-error exit status.

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.