can't install nautilus-dropbox: GpgmeError: Invalid crypto engine

Bug #1196253 reported by Adam Dingle
46
This bug affects 8 people
Affects Status Importance Assigned to Milestone
gpgme1.0 (Ubuntu)
Fix Released
High
Martin Pitt
nautilus-dropbox (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

I'm running the daily build of Ubuntu 13.10 (Saucy).

When I try to install nautilus-dropbox, I get a Python error

  gpgme.GpgmeError: (7, 150, u'Invalid crypto engine')

The full trace is below.

$ sudo apt-get install nautilus-dropbox
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following package was automatically installed and is no longer required:
  linux-image-generic
Use 'apt-get autoremove' to remove it.
The following NEW packages will be installed:
  nautilus-dropbox
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/94.5 kB of archives.
After this operation, 376 kB of additional disk space will be used.
Selecting previously unselected package nautilus-dropbox.
(Reading database ... 158616 files and directories currently installed.)
Unpacking nautilus-dropbox (from .../nautilus-dropbox_1.4.0-3_amd64.deb) ...
Processing triggers for man-db ...
Processing triggers for gnome-menus ...
Processing triggers for desktop-file-utils ...
Processing triggers for bamfdaemon ...
Rebuilding /usr/share/applications/bamf-2.index...
Processing triggers for mime-support ...
Processing triggers for hicolor-icon-theme ...
Setting up nautilus-dropbox (1.4.0-3) ...

Dropbox is the easiest way to share and store your files online. Want to learn more? Head to http://www.dropbox.com/

Downloading Dropbox... 100%
Traceback (most recent call last):
  File "/usr/bin/dropbox", line 1404, in <module>
    ret = main(sys.argv)
  File "/usr/bin/dropbox", line 1393, in main
    result = commands[argv[i]](argv[i+1:])
  File "/usr/bin/dropbox", line 817, in update
    download()
  File "/usr/bin/dropbox", line 556, in download
    name, i, total = one_member.next()
  File "/usr/bin/dropbox", line 278, in unpack
    if not verify_signature(StringIO.StringIO(DROPBOX_PUBLIC_KEY), signature, self.local_file):
  File "/usr/bin/dropbox", line 200, in verify_signature
    with gpgme_context([key_file]) as ctx:
  File "/usr/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "/usr/bin/dropbox", line 188, in gpgme_context
    result = ctx.import_(key_file)
gpgme.GpgmeError: (7, 150, u'Invalid crypto engine')
Please restart all running instances of Nautilus, or you will experience problems. i.e. nautilus --quit
Dropbox installation successfully completed! You can start Dropbox from your applications menu.
$

Revision history for this message
Andreas Olsson (andol) wrote :

Just experienced this myself, on my recently reinstalled Ubuntu 13.10 amd64 system. When I then tried the Dropbox package from the Dropbox website, of verison 1.6.0, I'm getting exact python-gpgme error on trying to verify the downloaded binary.

Possibly that this might be a python-gpgme bug instead, or that the Dropbox people have changed their download binary in some fashion.

Revision history for this message
Andreas Olsson (andol) wrote :

...except that both Ubuntu 13.04 and Ubuntu 13.10 uses python-gpgme 0.3-0ubuntu1 0

Instead I took at look at libgpgme11.

Downgrading libgpgme11 from the current Ubuntu 13.10 version 1.4.2-0.1ubuntu2 to the Ubuntu 13.04 verison 1.2.0-1.4ubuntu4 did the trick, and allowed Dropbox to verify its downloaded binary without complaining.

affects: pygpgme (Ubuntu) → gpgme1.0 (Ubuntu)
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in gpgme1.0 (Ubuntu):
status: New → Confirmed
Changed in nautilus-dropbox (Ubuntu):
status: New → Confirmed
Revision history for this message
supaiku (supaiku-ppa) wrote :

Still not fixed.

Revision history for this message
kaotiks@gmail.com (kaotiks) wrote :

I just force downgraded libgpgme to the Raring version and now I have it installed just fine.

Just did a quick `sudo apt-get install libgpgme11=1.2.0-1.4ubuntu4 --force-yes` and that was all it took. Mind you, in my case I had to reload the raring repos because it couldn't find the version in the saucy repos, but that is a quick suorces.list edit and update.

Juat thought I would share my experience. Not a fix, but a temporary workaround.

Revision history for this message
Raphaël Hertzog (hertzog) wrote :

Debian Unstable has libgpgme11 1.4.2-0.1 and I can't reproduce the problem. So this is somewhat Ubuntu specific. But the Ubuntu specific changes on gpgme1.0 are mainly tweaked dependencies so it would be a bit weird to have an entirely different behaviour just because of this.

Can you try in with libgpgme11 1.4.2-0.1ubuntu2 and with gnupg2 installed ?

Revision history for this message
Martin Pitt (pitti) wrote :

This is fallout from https://launchpad.net/ubuntu/+source/gpgme1.0/1.4.2-0.1ubuntu2, it gets built against gnupg2. This can also be seen from starting seahorse.

Changed in nautilus-dropbox (Ubuntu):
status: Confirmed → Invalid
Changed in gpgme1.0 (Ubuntu):
assignee: nobody → Martin Pitt (pitti)
importance: Undecided → High
milestone: none → ubuntu-13.07
status: Confirmed → In Progress
Martin Pitt (pitti)
Changed in gpgme1.0 (Ubuntu):
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package gpgme1.0 - 1.4.2-0.1ubuntu3

---------------
gpgme1.0 (1.4.2-0.1ubuntu3) saucy; urgency=low

  * debian/rules: Switch back to using /usr/bin/gpg and add back gnupg build
    dependency, as we don't install gnupg2 by default. This was missing in the
    previous upload, and unbreaks nautilus-dropbox, seahorse, bzr, and other
    libgpgme consumers. (LP: #1196253)
 -- Martin Pitt <email address hidden> Tue, 30 Jul 2013 10:34:24 +0200

Changed in gpgme1.0 (Ubuntu):
status: Fix Committed → Fix Released
Revision history for this message
KARTHIK (kannankarthik1992) wrote :

Currently using libgpgme11 - 1.4.2-0.1ubuntu3 in Ubuntu saucy.

Still facing the same problem when trying to install dropbox.

Downloading Dropbox... 100%
Traceback (most recent call last):
  File "/usr/bin/dropbox", line 1404, in <module>
    ret = main(sys.argv)
  File "/usr/bin/dropbox", line 1393, in main
    result = commands[argv[i]](argv[i+1:])
  File "/usr/bin/dropbox", line 817, in update
    download()
  File "/usr/bin/dropbox", line 556, in download
    name, i, total = one_member.next()
  File "/usr/bin/dropbox", line 278, in unpack
    if not verify_signature(StringIO.StringIO(DROPBOX_PUBLIC_KEY), signature, self.local_file):
  File "/usr/bin/dropbox", line 201, in verify_signature
    sigs = ctx.verify(sig_file, plain_file, None)
gpgme.GpgmeError: (7, 58, u'No data')
The installation of Dropbox failed.

Tried downgrading to 1.2.0-1.4ubuntu4 as suggested in one of the comments, but that too didn't solve the problem. Got the same above error with the older version also.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.