guix package --show=openssh gnu/packages/curl.scm:55:4: error: libssh2: unbound variable

  • Done
  • quality assurance status badge
Details
4 participants
  • Jack Hill
  • Ludovic Courtès
  • Ricardo Wurmus
  • znavko
Owner
unassigned
Submitted by
Jack Hill
Severity
normal
J
J
Jack Hill wrote on 5 Apr 2019 04:25
(address . bug-guix@gnu.org)
alpine.DEB.2.20.1904042221010.30127@marsh.hcoop.net
Hi Guix,

When trying to run guix package --show with packages from the
(gnu packages ssh) module, such as openssh, guile-ssh, and libssh, I get
the following stack trace:

$ guix package --show=openssh
Backtrace:
In ice-9/boot-9.scm:
3014:26 19 (_)
In unknown file:
18 (primitive-load-path "gnu/packages/gnupg" #<procedure 1…>)
In gnu/packages/gnupg.scm:
34:0 17 (_)
In ice-9/boot-9.scm:
2874:4 16 (define-module* _ #:filename _ #:pure _ #:version _ # _ …)
2887:24 15 (_)
222:29 14 (map1 _)
222:29 13 (map1 _)
222:29 12 (map1 _)
222:29 11 (map1 _)
222:29 10 (map1 _)
222:17 9 (map1 (((gnu packages curl)) ((gnu packages crypto)) # …))
2800:17 8 (resolve-interface (gnu packages curl) #:select _ #:hide …)
In ice-9/threads.scm:
390:8 7 (_ _)
In ice-9/boot-9.scm:
2726:13 6 (_)
In ice-9/threads.scm:
390:8 5 (_ _)
In ice-9/boot-9.scm:
2994:20 4 (_)
2312:4 3 (save-module-excursion _)
3014:26 2 (_)
In unknown file:
1 (primitive-load-path "gnu/packages/curl" #<procedure 20…>)
In gnu/packages/curl.scm:
55:4 0 (_)

gnu/packages/curl.scm:55:4: error: libssh2: unbound variable

$ guix describe
Generation 123 Apr 04 2019 22:02:49 (current)
guix-at-duke a9674ec
branch: master
commit: a9674ec7b0decac94745c91df886817e2fc8a91b
guix 54c9d7b
branch: master
commit: 54c9d7bb69847c89a7193347f858bb4e9476f7df

To me, the error looks like a missing module import or simmilar, but I
can't spot it. Perhaps it is something else.

Best,
Jack
Z
Z
znavko wrote on 5 Apr 2019 08:53
Re: bug#35154: guix package --show=openssh gnu/packages/curl.scm:55:4: error: libssh2: unbound variable
(name . Jack Hill)(address . jackhill@jackhill.us)(address . 35154@debbugs.gnu.org)
LbgGTdS--3-1@tutanota.com
As I know it seems like need to run `guix pull` to update your scheme files.
I usually run updates for root and non-root users with this line:
`guix pull && guix package -u`

Also after update by root you may need to run `guix system reconfigure config.scm` with you config.scm file (that you need to have). This will update your guix-daemon.

Hope it helps!



Apr 5, 2019, 2:25 AM by jackhill@jackhill.us:

Toggle quote (56 lines)
> Hi Guix,
>
> When trying to run guix package --show with packages from the
> (gnu packages ssh) module, such as openssh, guile-ssh, and libssh, I get the following stack trace:
>
> $ guix package --show=openssh
> Backtrace:
> In ice-9/boot-9.scm:
> 3014:26 19 (_)
> In unknown file:
> 18 (primitive-load-path "gnu/packages/gnupg" #<procedure 1…>)
> In gnu/packages/gnupg.scm:
> 34:0 17 (_)
> In ice-9/boot-9.scm:
> 2874:4 16 (define-module* _ #:filename _ #:pure _ #:version _ # _ …)
> 2887:24 15 (_)
> 222:29 14 (map1 _)
> 222:29 13 (map1 _)
> 222:29 12 (map1 _)
> 222:29 11 (map1 _)
> 222:29 10 (map1 _)
> 222:17 9 (map1 (((gnu packages curl)) ((gnu packages crypto)) # …))
> 2800:17 8 (resolve-interface (gnu packages curl) #:select _ #:hide …)
> In ice-9/threads.scm:
> 390:8 7 (_ _)
> In ice-9/boot-9.scm:
> 2726:13 6 (_)
> In ice-9/threads.scm:
> 390:8 5 (_ _)
> In ice-9/boot-9.scm:
> 2994:20 4 (_)
> 2312:4 3 (save-module-excursion _)
> 3014:26 2 (_)
> In unknown file:
> 1 (primitive-load-path "gnu/packages/curl" #<procedure 20…>)
> In gnu/packages/curl.scm:
> 55:4 0 (_)
>
> gnu/packages/curl.scm:55:4: error: libssh2: unbound variable
>
> $ guix describe
> Generation 123 Apr 04 2019 22:02:49 (current)
> guix-at-duke a9674ec
> repository URL: > https://gitlab.oit.duke.edu/jackhill/guix-at-duke.git <https://gitlab.oit.duke.edu/jackhill/guix-at-duke.git>
> branch: master
> commit: a9674ec7b0decac94745c91df886817e2fc8a91b
> guix 54c9d7b
> repository URL: > https://git.savannah.gnu.org/git/guix.git <https://git.savannah.gnu.org/git/guix.git>
> branch: master
> commit: 54c9d7bb69847c89a7193347f858bb4e9476f7df
>
> To me, the error looks like a missing module import or simmilar, but I can't spot it. Perhaps it is something else.
>
> Best,
> Jack
>
Attachment: file
J
J
Jack Hill wrote on 5 Apr 2019 17:26
Re: bug#35154: guix package --show=openssh gnu/packages/curl.scm:55:4: error: libssh2: unbound variable
(address . znavko@tutanota.com)(address . 35154@debbugs.gnu.org)
alpine.DEB.2.20.1904051125160.30127@marsh.hcoop.net
On Fri, 5 Apr 2019, znavko@tutanota.com wrote:

Toggle quote (2 lines)
> As I know it seems like need to run `guix pull` to update your scheme files.

After guix pulling, I still see the problem with the latest Guix. My guix
describe information:

$ guix describe
Generation 124 Apr 05 2019 11:24:29 (current)
guix-at-duke a9674ec
branch: master
commit: a9674ec7b0decac94745c91df886817e2fc8a91b
guix 3a66563
branch: master
commit: 3a665637afc32a142dc24a77ce7ce9235eb6a3af

Best,
Jack
R
R
Ricardo Wurmus wrote on 5 Apr 2019 18:30
(name . Jack Hill)(address . jackhill@jackhill.us)
8736mwxvn6.fsf@elephly.net
Jack Hill <jackhill@jackhill.us> writes:

Toggle quote (18 lines)
> On Fri, 5 Apr 2019, znavko@tutanota.com wrote:
>
>> As I know it seems like need to run `guix pull` to update your scheme files.
>
> After guix pulling, I still see the problem with the latest Guix. My
> guix describe information:
>
> $ guix describe
> Generation 124 Apr 05 2019 11:24:29 (current)
> guix-at-duke a9674ec
> repository URL: https://gitlab.oit.duke.edu/jackhill/guix-at-duke.git
> branch: master
> commit: a9674ec7b0decac94745c91df886817e2fc8a91b
> guix 3a66563
> repository URL: https://git.savannah.gnu.org/git/guix.git
> branch: master
> commit: 3a665637afc32a142dc24a77ce7ce9235eb6a3af

I think (gnu packages curl) is not correct because it provides
libssh2-1.8.0, which inherits from a package that is in (gnu packages
ssh).

The definition of libssh2-1.8.0 should probably be moved to (gnu
packages ssh).

--
Ricardo
J
J
Jack Hill wrote on 5 Apr 2019 19:47
(name . Ricardo Wurmus)(address . rekado@elephly.net)
alpine.DEB.2.20.1904051337290.30127@marsh.hcoop.net
On Fri, 5 Apr 2019, Ricardo Wurmus wrote:

Toggle quote (7 lines)
> I think (gnu packages curl) is not correct because it provides
> libssh2-1.8.0, which inherits from a package that is in (gnu packages
> ssh).
>
> The definition of libssh2-1.8.0 should probably be moved to (gnu
> packages ssh).

Maybe. Here's an interesting twist: I thought I would try produce a patch
to move that definition. From a up-to-date checkout (commit
177bc62d63e89a1ce2f255879bca1fdc5f3769f1), I ran:

guix environment guix
./bootstrap
./configure --localstatedir=/var
make
./pre-inst-env guix package --show=openssh

And there is no error even though the definition had not been moved.

However, if I guix pull to the same commit, the problem persists.
L
L
Ludovic Courtès wrote on 7 Apr 2019 18:30
(name . Jack Hill)(address . jackhill@jackhill.us)
87ef6dlqwf.fsf@gnu.org
Hi Jack,

Jack Hill <jackhill@jackhill.us> skribis:

Toggle quote (6 lines)
> 1 (primitive-load-path "gnu/packages/curl" #<procedure 20…>)
> In gnu/packages/curl.scm:
> 55:4 0 (_)
>
> gnu/packages/curl.scm:55:4: error: libssh2: unbound variable

Fixed in 71b4974a40347bdc651c3a1f923780733d96ded7.

The lesson is: when inheriting from a package, do it in the module where
it’s defined.

Thanks,
Ludo’.
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 35154@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 35154
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch