Package: duplicity
Version: 0.7.14-1
Severity: important

Hello and thanks for maintaining duplicity in Debian.

I have experienced a new issue with duplicity for some weeks and I do
not understand what's going on.

When I backup my user data with duplicity, I do not have any X graphical
session open.
The command issued on the text console is:

  $ duplicity --encrypt-key XXXXXXXXXXXXXXXX \
      --full-if-older-than 30D \
      --include-filelist .duplicity.include . file://backup

When doing so, duplicity (or maybe gpg) complains that it could not
perform any decryption, since no passphrase was given:

  ===== Begin GnuPG log =====
  gpg: encrypted with XXXX-bit XXX key, ID 0xXXXXXXXXXXXXXXXX, created 
XXXX-XX-XX
  "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
  gpg: public key decryption failed: No passphrase given
  gpg: decryption failed: No secret key
  ===== End GnuPG log =====

After that, duplicity seems to go on and to correctly perform the backup
(at least, it says 0 errors and the statistics output looks OK).

However, at each backup, I see the above quoted error message.

The point is: no passphrase was ever asked for, hence no wonder
no passphrase was given!

At first I thought that I needed a pinentry-* package for non-graphical
environments: I only had pinentry-gtk2 installed.
Hence I installed pinentry-tty:

  $ aptitude search pinentry | grep ^i
  i A pinentry-gtk2 - GTK+-2-based PIN or pass-phrase entry dialog for GnuPG
  i  pinentry-tty - minimal dumb-terminal PIN or pass-phrase entry for GnuPG

But the issue persists.

I tried to restore one file from my backup (from inside an X graphical
session) and it seems to work correctly: it asks for the GPG key passphrase
(on the terminal emulator) and successfully restore a file identical to
the original.

  $ duplicity restore --file-to-restore tmp/foo file://backup Downloads/foo
  Local and Remote metadata are synchronized, no sync needed.
  Last full backup date: Sun Oct  8 01:06:24 2017
  GnuPG passphrase for decryption:
  $ diff -sq tmp/foo Downloads/foo
  Files tmp/foo and Downloads/foo are identical

However, when performing backups, duplicity seems to be unable to ask
for the passphrase.

Please note that this bug is similar to #565398, but the symptoms are
different in my case. I do not have a non-English locale:

  $ locale
  LANG=en_US.UTF-8
  LANGUAGE=en_US:en
  LC_CTYPE="en_US.UTF-8"
  LC_NUMERIC="en_US.UTF-8"
  LC_TIME="en_US.UTF-8"
  LC_COLLATE="en_US.UTF-8"
  LC_MONETARY="en_US.UTF-8"
  LC_MESSAGES="en_US.UTF-8"
  LC_PAPER="en_US.UTF-8"
  LC_NAME="en_US.UTF-8"
  LC_ADDRESS="en_US.UTF-8"
  LC_TELEPHONE="en_US.UTF-8"
  LC_MEASUREMENT="en_US.UTF-8"
  LC_IDENTIFICATION="en_US.UTF-8"
  LC_ALL=


What's going on?
Is there anything I failed to understand?

Please let me know.
Thanks for your time!


-- System Information:
Debian Release: buster/sid
  APT prefers testing
  APT policy: (800, 'testing'), (500, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 4.13.0-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_US:en (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages duplicity depends on:
ii  gnupg             2.2.1-4
ii  libc6             2.24-17
ii  librsync1         0.9.7-10+b1
ii  python            2.7.14-1
ii  python-fasteners  0.12.0-3
ii  python-lockfile   1:0.12.2-2

Versions of packages duplicity recommends:
ii  python-oauthlib  2.0.4-1
ii  python-paramiko  2.0.0-1
ii  python-pexpect   4.2.1-1
ii  python-urllib3   1.21.1-1
ii  rsync            3.1.2-2

Versions of packages duplicity suggests:
pn  lftp                <none>
pn  ncftp               <none>
pn  python-boto         <none>
pn  python-cloudfiles   <none>
pn  python-gdata        <none>
pn  python-swiftclient  <none>
pn  tahoe-lafs          <none>

-- no debconf information

Reply via email to