Seahorse-agent writes an empty ~/.gnupg/gpg.conf on first run, breaking email signing in KDE

Bug #345727 reported by Mackenzie Morgan on 2009-03-20
This bug affects 1 person
Affects Status Importance Assigned to Milestone
seahorse-plugins (Ubuntu)
Ubuntu Desktop Bugs

Bug Description

Binary package hint: seahorse-plugins

When gpg is first run, it's supposed to copy /usr/share/gnupg/options.skel into ~/.gnupg/gpg.conf however seahorse-agent is part of the default ubuntu-desktop session. Seahorse-agent writes an empty file there on its first run. This means "use-agent" isn't in there. If the user then installs kubuntu-desktop, seahorse-agent will still run instead of gpg-agent.

Net effect, if the following sequence of events occurs:
1. User installs Ubuntu
2. User logs into a GNOME session in Ubuntu
3. User installs kubuntu-desktop
4. User logs into KDE and uses KMail

The result is:
seahorse-agent (which is not compatible with KMail) runs instead of gpg-agent (which is compatible)
KMail hangs when told to sign an email, finally throwing an error saying it couldn't get the passphrase

This is fixed by having use-agent in ~/.gnupg/ other words, by having the skeleton file there instead of an empty file. If this is the case, seahorse-agent still runs in GNOME but gpg-agent runs in KDE, allowing KMail to function properly.

Changed in seahorse-plugins (Ubuntu):
assignee: nobody → maco.m
importance: Undecided → Medium
status: New → In Progress
description: updated
Mackenzie Morgan (maco.m) wrote :
Changed in seahorse-plugins (Ubuntu):
status: In Progress → Fix Committed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package seahorse-plugins - 2.26.0-0ubuntu2

seahorse-plugins (2.26.0-0ubuntu2) jaunty; urgency=low

  * libseahorse/seahorse-gpg-options.c:
    - Copy gpg.conf skel instead of creating blank file
    (LP: #345727)

 -- Mackenzie Morgan <email address hidden> Fri, 20 Mar 2009 02:58:29 -0400

Changed in seahorse-plugins:
status: Fix Committed → Fix Released
Adam Schreiber (sadam) wrote :

Stuff like this should get pushed upstream.

OK. I wasn't sure if the skeleton conf file is in the same place on all systems
or if this was Ubuntu-specific, and if it was Ubuntu-specific, then the
hardcoded file path would need to be not-hardcoded. Are you saying it's ok as-
is, Adam?

Talked with maco and dtchen at UDS. Seems this regressed with last upload to jaunty (and appears to also be the case in karmic). Reopening and reassigning to myself.

Changed in seahorse-plugins (Ubuntu):
assignee: Mackenzie Morgan (maco.m) → Michael Casadevall (mcasadevall)
status: Fix Released → Triaged
Sebastien Bacher (seb128) wrote :

Could you open an upstream bug about that?

Sebastien Bacher (seb128) wrote :

the reason why the change is not applied in the current version is that somebody changed the diff.gz rather than using the debian directory and since the GNOME components have only their debian directory in bzr and no change out of the debian directory usually that change has been cleaned on the next version upload, next time do things correctly

Andreas Moog (ampelbein) wrote :

The changelog entry is misleading, it should mention the patch written, not the file patched. Nonetheless, this works correctly in karmic:

andreas@apophis:~$ mv .gnupg/gpg.conf .
andreas@apophis:~$ seahorse-agent
** Message: Another GPG agent already running

andreas@apophis:~$ cat .gnupg/gpg.conf
# These first three lines are not copied to the gpg.conf file in
# the users home directory.
# $Id: options.skel 4717 2008-03-25 14:47:48Z wk $
# Options for GnuPG
# Copyright 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
# This file is free software; as a special exception the author gives

Changed in seahorse-plugins (Ubuntu):
assignee: Michael Casadevall (mcasadevall) → Ubuntu Desktop Bugs (desktop-bugs)
status: Triaged → Fix Released
Changed in seahorse-plugins:
status: Unknown → New
ben (drache-deactivatedaccount) wrote :

Hi – Seems as if this ›Bug‹ also embarrasses gpg to run the pinentry-dialog-box! Putting the use-agent in the file solves…

Changed in seahorse-plugins:
importance: Unknown → Medium
status: New → Confirmed
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers


Remote bug watches

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