list-current-files fails if sync is needed
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Duplicity |
Fix Released
|
Medium
|
Unassigned |
Bug Description
If a sync is needed, then list-current-files now fails as follows:
GPGError: GPG Failed, see log below:
===== Begin GnuPG log =====
gpg: AES encrypted data
gpg: gcry_kdf_derive failed: Invalid data
gpg: encrypted with 1 passphrase
gpg: decryption failed: No secret key
===== End GnuPG log =====
Gpg is complaining because it is not given a passphrase, but the real issue seems to be that the collection is now initialized before the sync, rather than after it, and it is not properly updated, so duplicity looks for a sigtar.gpg file and tries to decrypt it even though it has already been decrypted and stored locally as part of the sync.
Also, the following check can cause a traceback on python 3, since sometimes a ParseResults sets a time, rather than start_time and end_time:
+ return parsed.end_time >= target_
+ parsed.start_time <= target_
Since parsed.start_time and parsed.end_time can be None, it looks as though the code may also behave incorrectly on python 2.
Related branches
- duplicity-team: Pending requested
-
Diff: 173 lines (+39/-18)4 files modifiedbin/duplicity (+9/-2)
duplicity/backends/imapbackend.py (+20/-12)
duplicity/patchdir.py (+8/-2)
setup.py (+2/-2)
- duplicity-team: Pending requested
-
Diff: 28 lines (+9/-2)1 file modifiedbin/duplicity (+9/-2)
Changed in duplicity: | |
status: | New → In Progress |
importance: | Undecided → Medium |
milestone: | none → 0.8.00 |
Changed in duplicity: | |
status: | In Progress → Fix Committed |
Changed in duplicity: | |
status: | Fix Committed → Fix Released |
Although the bug has been closed it is still apparent when using the Deja Dup GUI.
Versions:
- Ubuntu 20.10
- duplicity 0.8.11.1612-1
- deja-dup 42.2-1ubuntu1
Steps to reproduce:
- Create a backup of the user home folder to an external USB device
- Install a fresh Ubuntu 20.10
- Open "Backups" (= Deja Dup) and recovery
- Select the USB drive as source -> Next
- Select the latest backup date -> Next
Error message:
GPGError: GPG Failed, see log below:
===== Begin GnuPG log =====
gpg: AES encrypted data
gpg: gcry_kdf_derive failed: Invalid data
gpg: encrypted with 1 passphrase
gpg: decryption failed: No secret key
===== End GnuPG log =====
Bypassing Deja Dup:
- Switch to Terminal MySecretKey /media/ daniel/ USB-Drive/ daniel- ThinkPad- X1
- export PASSPHRASE=
- duplicity list-current-files file://
Duplicity lists all files - also recovery via Terminal works
duplicity --file-to-restore /home/daniel/.gnupg file:// /media/ daniel/ USB-Drive/ daniel- ThinkPad- X1 /home/daniel/.gnupg