help-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Using Guix API in a foreign distribution


From: sirgazil
Subject: Re: Using Guix API in a foreign distribution
Date: Sat, 15 Apr 2017 22:14:10 -0500
User-agent: Mozilla/5.0 (X11; Linux i686; rv:45.0) Gecko/20100101 Icedove/45.6.0

Hi Chris, thanks for checking.


On 15/04/17 18:04, Chris Marusich wrote:
> sirgazil <address@hidden> writes:
>
>> Hi,
>>
>> I'm using Guix 20170415.01 (binary installation) on Debian 8, and I was
>> hoping to use the Guix API by installing the guix package as a normal
>> user, but it seems Guile can't find guix modules:
>>
>> ----------------------------------------------------------------------
>>
>> $ guile
>> GNU Guile 2.2.0
>> Copyright (C) 1995-2017 Free Software Foundation, Inc.
>>
>> Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
>> This program is free software, and you are welcome to redistribute it
>> under certain conditions; type `,show c' for details.
>>
>> Enter `,help' for help.
>> scheme@(guile-user)> (use-modules (guix packages))
>> While compiling expression:
>> ERROR: no code for module (guix packages)
>>
>> ----------------------------------------------------------------------
>>
>> I'm using Guile from Guix, and I have all the environment variables set
>> as suggested by "guix package --search-paths". Also, I can install Guile
>> libraries from Guix and Guile finds them without problems.
>>
>> So, is anyone able to use the Guix API in this way, or do you have to
>> clone the Guix repository for that?
> It works for me on a foreign distro.  This is what I see:
>
> --8<---------------cut here---------------start------------->8---
> address@hidden:~$ guix package --list-installed | grep guix
> guix  0.12.0-6.73a4   out     
> /gnu/store/3xwb1alcv5xd2zgcxp1d1bqqgv0afxj2-guix-0.12.0-6.73a4
> address@hidden:~$ env | grep GUILE
> GUILE_LOAD_PATH=/home/marusich/.guix-profile/share/guile/site/2.0
> GUILE_LOAD_COMPILED_PATH=/home/marusich/.guix-profile/lib/guile/2.0/site-ccache:/home/marusich/.guix-profile/share/guile/site/2.0
> address@hidden:~$ find -L $(env | grep GUILE | cut -d = -f 2 | tr : '\n' | 
> sort | uniq) -name packages.scm
> /home/marusich/.guix-profile/share/guile/site/2.0/guix/packages.scm
> /home/marusich/.guix-profile/share/guile/site/2.0/gnu/packages.scm
> address@hidden:~$ guile
> GNU Guile 2.0.13
> Copyright (C) 1995-2016 Free Software Foundation, Inc.
>
> Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
> This program is free software, and you are welcome to redistribute it
> under certain conditions; type `,show c' for details.
>
> Enter `,help' for help.
> scheme@(guile-user)> (use-modules (guix packages))
> scheme@(guile-user)> 
> address@hidden:~$ 
> --8<---------------cut here---------------end--------------->8---
>
> Can you share the output of similar commands on your system?

Here it is:

$ guix package --list-installed | grep guix
guix    0.12.0-7.aabe    out   
/gnu/store/24fa9898h2aa7k7fcbp67kwrwgrxlgi5-guix-0.12.0-7.aabe
$ env | grep GUILE
GUILE_LOAD_PATH=/home/sirgazil/.guix-profile/share/guile/site/2.2
GUILE_LOAD_COMPILED_PATH=/home/sirgazil/.guix-profile/lib/guile/2.2/site-ccache:/home/sirgazil/.guix-profile/share/guile/site/2.2
$ find -L $(env | grep GUILE | cut -d = -f 2 | tr : '\n' | sort | uniq)
-name packages.scm
$

So, guix modules are available in ".guix-profile/share/guile/site/2.0"
but not in ".guix-profile/share/guile/site/2.2".

> By the way, I see you're using Guile 2.2.  Does this same problem occur
> when using Guile 2.0?  I think Guix is still compiled using Guile 2.0,
> so I get warnings when trying to import (guix packages) using Guile 2.2.
>

No. If I install guile 2.0.14, I can load guix modules just fine.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]