Duplicity BackendException: No module named 'paramiko'

  • Done
  • quality assurance status badge
Details
3 participants
  • Cayetano Santos
  • Cayetano Santos
  • Leo Famulari
Owner
unassigned
Submitted by
Cayetano Santos
Severity
normal
C
C
Cayetano Santos wrote on 10 Aug 2021 12:15
(address . bug-guix@gnu.org)
yu11r71obap.fsf@inventati.org
Context:

Using guix as a package manager under a foreign up to date
archlinux distribution.

The output of guix describe --format=channels is



Problem:

When using duplicity to backup to a sftp server, I get this error
message

BackendException: Could not initialize backend: No module
named 'paramiko'

I have installed python-paramiko, but this doesn't fixes the
problem.
L
L
Leo Famulari wrote on 11 Aug 2021 00:28
(name . Cayetano Santos)(address . cayetano.santos@inventati.org)(address . 49979@debbugs.gnu.org)
YRL9psusd4A5c3kQ@jasmine.lan
On Tue, Aug 10, 2021 at 12:15:44PM +0200, Cayetano Santos wrote:
Toggle quote (20 lines)
>
> Context:
>
> Using guix as a package manager under a foreign up to date archlinux
> distribution.
>
> The output of guix describe --format=channels is
>
> https://gitlab.com/csantosb/wikidata/-/blob/master/guix-profiles-backup/guix-channels.scm
>
>
> Problem:
>
> When using duplicity to backup to a sftp server, I get this error message
>
> BackendException: Could not initialize backend: No module named
> 'paramiko'
>
> I have installed python-paramiko, but this doesn't fixes the problem.

I don't use Duplicity. Can you give instructions to reproduce this?

It's likely that paramiko needs to be added as a dependency of the
duplicity package, but we should test that first.
C
C
Cayetano Santos wrote on 11 Aug 2021 11:49
(name . Leo Famulari)(address . leo@famulari.name)
yu1wnosmhv7.fsf@inventati.org
Toggle quote (34 lines)
>mer. 11 août 2021 at 00:28, Leo Famulari ...

> On Tue, Aug 10, 2021 at 12:15:44PM +0200, Cayetano Santos wrote:
>>
>> Context:
>>
>> Using guix as a package manager under a foreign up to date
>> archlinux
>> distribution.
>>
>> The output of guix describe --format=channels is
>>
>> https://gitlab.com/csantosb/wikidata/-/blob/master/guix-profiles-backup/guix-channels.scm
>>
>>
>> Problem:
>>
>> When using duplicity to backup to a sftp server, I get this
>> error message
>>
>> BackendException: Could not initialize backend: No module
>> named
>> 'paramiko'
>>
>> I have installed python-paramiko, but this doesn't fixes the
>> problem.
>
> I don't use Duplicity. Can you give instructions to reproduce
> this?
>
> It's likely that paramiko needs to be added as a dependency of
> the
> duplicity package, but we should test that first.

Sure. Just issue a

guix install duplicity

and then

duplicity /tmp sftp://dummy_user@sftp.server/dummy_backup

you’ll get a

BackendException: Could not initialize backend: No module named
'paramiko'

message.
L
L
Leo Famulari wrote on 11 Aug 2021 18:25
(name . Cayetano Santos)(address . csantosb@inventati.org)(address . 49979-done@debbugs.gnu.org)
YRP57QxC1nQcNFmO@jasmine.lan
On Wed, Aug 11, 2021 at 11:49:01AM +0200, Cayetano Santos wrote:
Toggle quote (14 lines)
> Sure. Just issue a
>
> guix install duplicity
>
> and then
>
> duplicity /tmp sftp://dummy_user@sftp.server/dummy_backup
>
> you’ll get a
>
> BackendException: Could not initialize backend: No module named 'paramiko'

> message.

Thanks! I tested by adding python-paramiko to native-inputs [0], changed
the dummy values to something meaningful, and tried your command:

------
$ duplicity /tmp sftp://leo@domain/dummy_backup
Local and Remote metadata are synchronized, no sync needed.
Last full backup date: none
GnuPG passphrase for decryption: %
------

I didn't go past that point but it seems to fix the specific bug you
reported. So, I pushed the change:


You can do `guix pull --commit=b1c97ff60b8 && guix package --upgrade=duplicity`
to get the new version of the package.

[0] It's unusual for run-time dependencies like paramiko to be a
native-input. Typically, native-inputs are just build-time dependencies.
Maybe there is some room for improvement in our Duplicity package...

Closed
C
C
Cayetano Santos wrote on 11 Aug 2021 20:22
(name . Leo Famulari)(address . leo@famulari.name)(address . 49979-done@debbugs.gnu.org)
yu1zgtnn8n9.fsf@inventati.org
Toggle quote (48 lines)
>mer. 11 août 2021 at 18:25, Leo Famulari ...

> On Wed, Aug 11, 2021 at 11:49:01AM +0200, Cayetano Santos wrote:
>> Sure. Just issue a
>>
>> guix install duplicity
>>
>> and then
>>
>> duplicity /tmp sftp://dummy_user@sftp.server/dummy_backup
>>
>> you’ll get a
>>
>> BackendException: Could not initialize backend: No module named
>> 'paramiko'
>
>> message.
>
> Thanks! I tested by adding python-paramiko to native-inputs [0],
> changed
> the dummy values to something meaningful, and tried your
> command:
>
> ------
> $ duplicity /tmp sftp://leo@domain/dummy_backup
> Local and Remote metadata are synchronized, no sync needed.
> Last full backup date: none
> GnuPG passphrase for decryption: %
> ------
>
> I didn't go past that point but it seems to fix the specific bug
> you
> reported. So, I pushed the change:
>
> https://git.savannah.gnu.org/cgit/guix.git/commit/?id=b1c97ff60b8ac8205d878fec3af8d02ffdf601fe
>
> You can do `guix pull --commit=b1c97ff60b8 && guix package
> --upgrade=duplicity`
> to get the new version of the package.
>
> [0] It's unusual for run-time dependencies like paramiko to be a
> native-input. Typically, native-inputs are just build-time
> dependencies.
> Maybe there is some room for improvement in our Duplicity
> package...
>
> https://guix.gnu.org/manual/en/html_node/package-Reference.html

Fixed, thanks !
Closed
?