unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* guix environment guix doesn't provide guix dependencies?
@ 2016-09-28  4:18 Chris Marusich
  2016-09-28  4:54 ` John Darrington
  0 siblings, 1 reply; 11+ messages in thread
From: Chris Marusich @ 2016-09-28  4:18 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: Type: text/plain, Size: 855 bytes --]

Hi,

The manual says ((guix) Building from Git):

--8<---------------cut here---------------start------------->8---
   The easiest way to set up a development environment for Guix is, of
course, by using Guix!  The following command starts a new shell where
all the dependencies and appropriate environment variables are set up to
hack on Guix:

     guix environment guix
--8<---------------cut here---------------end--------------->8---

After running this command successfully, I get the following error while
running ./bootstrap:

--8<---------------cut here---------------start------------->8---
+ exec autoreconf -vfi
./bootstrap: line 5: exec: autoreconf: not found
--8<---------------cut here---------------end--------------->8---

This makes me wonder: has something changed, and the manual is now
incorrect?

-- 
Chris

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 818 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: guix environment guix doesn't provide guix dependencies?
  2016-09-28  4:18 guix environment guix doesn't provide guix dependencies? Chris Marusich
@ 2016-09-28  4:54 ` John Darrington
  2016-09-28  5:10   ` Chris Marusich
  0 siblings, 1 reply; 11+ messages in thread
From: John Darrington @ 2016-09-28  4:54 UTC (permalink / raw)
  To: Chris Marusich; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1619 bytes --]

On Tue, Sep 27, 2016 at 09:18:30PM -0700, Chris Marusich wrote:
     Hi,
     
     The manual says ((guix) Building from Git):
     
     --8<---------------cut here---------------start------------->8---
        The easiest way to set up a development environment for Guix is, of
     course, by using Guix!  The following command starts a new shell where
     all the dependencies and appropriate environment variables are set up to
     hack on Guix:
     
          guix environment guix
     --8<---------------cut here---------------end--------------->8---
     
     After running this command successfully, I get the following error while
     running ./bootstrap:
     
     --8<---------------cut here---------------start------------->8---
     + exec autoreconf -vfi
     ./bootstrap: line 5: exec: autoreconf: not found
     --8<---------------cut here---------------end--------------->8---
     
     This makes me wonder: has something changed, and the manual is now
     incorrect?
     

I don't think so.   Running ./bootstrap is not part of the normal process for *building*
guix - only for bootstrapping.  But you are right - it is common to want to do that.
For this reason I often run:

 guix environment guix --ad-hoc automake autoconf texinfo help2man


But perhaps you are right - the manual might want to mention this.

J'



-- 
Avoid eavesdropping.  Send strong encrypted email.
PGP Public key ID: 1024D/2DE827B3 
fingerprint = 8797 A26D 0854 2EAB 0285  A290 8A67 719C 2DE8 27B3
See http://sks-keyservers.net or any PGP keyserver for public key.


[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: guix environment guix doesn't provide guix dependencies?
  2016-09-28  4:54 ` John Darrington
@ 2016-09-28  5:10   ` Chris Marusich
  2016-09-28 12:46     ` Eric Bavier
  2016-09-28 21:20     ` Ludovic Courtès
  0 siblings, 2 replies; 11+ messages in thread
From: Chris Marusich @ 2016-09-28  5:10 UTC (permalink / raw)
  To: John Darrington; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1758 bytes --]

John Darrington <john@darrington.wattle.id.au> writes:

> On Tue, Sep 27, 2016 at 09:18:30PM -0700, Chris Marusich wrote:
>      Hi,
>      
>      The manual says ((guix) Building from Git):
>      
>      --8<---------------cut here---------------start------------->8---
>         The easiest way to set up a development environment for Guix is, of
>      course, by using Guix!  The following command starts a new shell where
>      all the dependencies and appropriate environment variables are set up to
>      hack on Guix:
>      
>           guix environment guix
>      --8<---------------cut here---------------end--------------->8---
>      
>      After running this command successfully, I get the following error while
>      running ./bootstrap:
>      
>      --8<---------------cut here---------------start------------->8---
>      + exec autoreconf -vfi
>      ./bootstrap: line 5: exec: autoreconf: not found
>      --8<---------------cut here---------------end--------------->8---
>      
>      This makes me wonder: has something changed, and the manual is now
>      incorrect?
>      
>
> I don't think so.   Running ./bootstrap is not part of the normal process for *building*
> guix - only for bootstrapping.  But you are right - it is common to want to do that.
> For this reason I often run:
>
>  guix environment guix --ad-hoc automake autoconf texinfo help2man
>
>
> But perhaps you are right - the manual might want to mention this.
>
> J'

That makes sense.  I feel like it used to provide all the dependencies,
including autoconf etc., but that was months ago, and I might be
mis-remembering.  It works fine when I add the needed bootstrap
dependencies with --ad-hoc.

-- 
Chris

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 818 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: guix environment guix doesn't provide guix dependencies?
  2016-09-28  5:10   ` Chris Marusich
@ 2016-09-28 12:46     ` Eric Bavier
  2016-09-28 19:06       ` myglc2
  2016-09-30  6:52       ` Chris Marusich
  2016-09-28 21:20     ` Ludovic Courtès
  1 sibling, 2 replies; 11+ messages in thread
From: Eric Bavier @ 2016-09-28 12:46 UTC (permalink / raw)
  To: Chris Marusich; +Cc: guix-devel

On Tue, 27 Sep 2016 22:10:31 -0700
Chris Marusich <cmmarusich@gmail.com> wrote:

> John Darrington <john@darrington.wattle.id.au> writes:
> 
> > On Tue, Sep 27, 2016 at 09:18:30PM -0700, Chris Marusich wrote:
> >      Hi,
> >      
> >      The manual says ((guix) Building from Git):
> >      
> >      --8<---------------cut here---------------start------------->8---
> >         The easiest way to set up a development environment for Guix is, of
> >      course, by using Guix!  The following command starts a new shell where
> >      all the dependencies and appropriate environment variables are set up to
> >      hack on Guix:
> >      
> >           guix environment guix
> >      --8<---------------cut here---------------end--------------->8---
> >      
> >      After running this command successfully, I get the following error while
> >      running ./bootstrap:
> >      
> >      --8<---------------cut here---------------start------------->8---
> >      + exec autoreconf -vfi
> >      ./bootstrap: line 5: exec: autoreconf: not found
> >      --8<---------------cut here---------------end--------------->8---
> >      
> >      This makes me wonder: has something changed, and the manual is now
> >      incorrect?
> >      
> >
> > I don't think so.   Running ./bootstrap is not part of the normal process for *building*
> > guix - only for bootstrapping.  But you are right - it is common to want to do that.
> > For this reason I often run:
> >
> >  guix environment guix --ad-hoc automake autoconf texinfo help2man
> >
> >
> > But perhaps you are right - the manual might want to mention this.
> >
> > J'  
> 
> That makes sense.  I feel like it used to provide all the dependencies,
> including autoconf etc., but that was months ago, and I might be
> mis-remembering.  It works fine when I add the needed bootstrap
> dependencies with --ad-hoc.

You can also do 

  guix environment -e "(@ (gnu packages package-management) guix)"

which points to 'guix-devel' and includes everything needed to build
from a git clone.

`~Eric

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: guix environment guix doesn't provide guix dependencies?
  2016-09-28 12:46     ` Eric Bavier
@ 2016-09-28 19:06       ` myglc2
  2016-09-30  6:52       ` Chris Marusich
  1 sibling, 0 replies; 11+ messages in thread
From: myglc2 @ 2016-09-28 19:06 UTC (permalink / raw)
  To: Eric Bavier; +Cc: guix-devel

Eric Bavier <ericbavier@openmailbox.org> writes:

> On Tue, 27 Sep 2016 22:10:31 -0700
> Chris Marusich <cmmarusich@gmail.com> wrote:
>
>> John Darrington <john@darrington.wattle.id.au> writes:
>> 
>> > On Tue, Sep 27, 2016 at 09:18:30PM -0700, Chris Marusich wrote:
>> >      Hi,
>> >      
>> >      The manual says ((guix) Building from Git):
>> >      
>> >      --8<---------------cut here---------------start------------->8---
>> >         The easiest way to set up a development environment for Guix is, of
>> >      course, by using Guix!  The following command starts a new shell where
>> >      all the dependencies and appropriate environment variables are set up to
>> >      hack on Guix:
>> >      
>> >           guix environment guix
>> >      --8<---------------cut here---------------end--------------->8---
>> >      
>> >      After running this command successfully, I get the following error while
>> >      running ./bootstrap:
>> >      
>> >      --8<---------------cut here---------------start------------->8---
>> >      + exec autoreconf -vfi
>> >      ./bootstrap: line 5: exec: autoreconf: not found
>> >      --8<---------------cut here---------------end--------------->8---
>> >      
>> >      This makes me wonder: has something changed, and the manual is now
>> >      incorrect?
>> >      
>> >
>> > I don't think so.   Running ./bootstrap is not part of the normal process for *building*
>> > guix - only for bootstrapping.  But you are right - it is common to want to do that.
>> > For this reason I often run:
>> >
>> >  guix environment guix --ad-hoc automake autoconf texinfo help2man
>> >
>> >
>> > But perhaps you are right - the manual might want to mention this.
>> >
>> > J'  
>> 
>> That makes sense.  I feel like it used to provide all the dependencies,
>> including autoconf etc., but that was months ago, and I might be
>> mis-remembering.  It works fine when I add the needed bootstrap
>> dependencies with --ad-hoc.

The conversation above beautifully illustrates how maddening Guix is ...

... and the line below demonstrates it's beauty.

> You can also do 
>
>   guix environment -e "(@ (gnu packages package-management) guix)"

Someone, please add it to the manual!

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: guix environment guix doesn't provide guix dependencies?
  2016-09-28  5:10   ` Chris Marusich
  2016-09-28 12:46     ` Eric Bavier
@ 2016-09-28 21:20     ` Ludovic Courtès
  2016-09-30  0:46       ` Thompson, David
  1 sibling, 1 reply; 11+ messages in thread
From: Ludovic Courtès @ 2016-09-28 21:20 UTC (permalink / raw)
  To: Chris Marusich; +Cc: guix-devel

Hi Chris,

Chris Marusich <cmmarusich@gmail.com> skribis:

> John Darrington <john@darrington.wattle.id.au> writes:

[...]

>> I don't think so.   Running ./bootstrap is not part of the normal process for *building*
>> guix - only for bootstrapping.  But you are right - it is common to want to do that.
>> For this reason I often run:
>>
>>  guix environment guix --ad-hoc automake autoconf texinfo help2man
>>
>>
>> But perhaps you are right - the manual might want to mention this.
>>
>> J'
>
> That makes sense.  I feel like it used to provide all the dependencies,
> including autoconf etc., but that was months ago, and I might be
> mis-remembering.  It works fine when I add the needed bootstrap
> dependencies with --ad-hoc.

In fact there’s a small time window during which “guix environment guix”
doesn’t provide autoconf et al.: it’s when the ‘guix’ variable in (gnu
packages package-management) refers to a released tarball instead of a
Git checkout, since a build from tarball doesn’t depend on autoconf et
al.

So if you run “guix environment guix” on a commit different from
v0.11.0 + 1, you effectively get all the dependencies.

I admit this is a bit confusing.  Not sure how to document/improve that.

Ideas?

Ludo’.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: guix environment guix doesn't provide guix dependencies?
  2016-09-28 21:20     ` Ludovic Courtès
@ 2016-09-30  0:46       ` Thompson, David
  2016-09-30  6:40         ` Chris Marusich
  2016-09-30 12:06         ` Ludovic Courtès
  0 siblings, 2 replies; 11+ messages in thread
From: Thompson, David @ 2016-09-30  0:46 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel

On Wed, Sep 28, 2016 at 5:20 PM, Ludovic Courtès <ludo@gnu.org> wrote:
> Hi Chris,
>
> Chris Marusich <cmmarusich@gmail.com> skribis:
>
>> John Darrington <john@darrington.wattle.id.au> writes:
>
> [...]
>
>>> I don't think so.   Running ./bootstrap is not part of the normal process for *building*
>>> guix - only for bootstrapping.  But you are right - it is common to want to do that.
>>> For this reason I often run:
>>>
>>>  guix environment guix --ad-hoc automake autoconf texinfo help2man
>>>
>>>
>>> But perhaps you are right - the manual might want to mention this.
>>>
>>> J'
>>
>> That makes sense.  I feel like it used to provide all the dependencies,
>> including autoconf etc., but that was months ago, and I might be
>> mis-remembering.  It works fine when I add the needed bootstrap
>> dependencies with --ad-hoc.
>
> In fact there’s a small time window during which “guix environment guix”
> doesn’t provide autoconf et al.: it’s when the ‘guix’ variable in (gnu
> packages package-management) refers to a released tarball instead of a
> Git checkout, since a build from tarball doesn’t depend on autoconf et
> al.
>
> So if you run “guix environment guix” on a commit different from
> v0.11.0 + 1, you effectively get all the dependencies.
>
> I admit this is a bit confusing.  Not sure how to document/improve that.
>
> Ideas?

How about a public guix-devel package that always builds from the Git repo?

- Dave

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: guix environment guix doesn't provide guix dependencies?
  2016-09-30  0:46       ` Thompson, David
@ 2016-09-30  6:40         ` Chris Marusich
  2016-09-30 12:06         ` Ludovic Courtès
  1 sibling, 0 replies; 11+ messages in thread
From: Chris Marusich @ 2016-09-30  6:40 UTC (permalink / raw)
  To: Thompson, David; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1059 bytes --]

"Thompson, David" <dthompson2@worcester.edu> writes:

> On Wed, Sep 28, 2016 at 5:20 PM, Ludovic Courtès <ludo@gnu.org> wrote:
>> In fact there’s a small time window during which “guix environment guix”
>> doesn’t provide autoconf et al.: it’s when the ‘guix’ variable in (gnu
>> packages package-management) refers to a released tarball instead of a
>> Git checkout, since a build from tarball doesn’t depend on autoconf et
>> al.

How is it possible for this variable to refer to a released tarball in
one commit and a git checkout in another?  I believe you, but I don't
understand how that can happen.

>> So if you run “guix environment guix” on a commit different from
>> v0.11.0 + 1, you effectively get all the dependencies.
>>
>> I admit this is a bit confusing.  Not sure how to document/improve that.
>>
>> Ideas?
>
> How about a public guix-devel package that always builds from the Git repo?
>
> - Dave

That would certainly make it obvious and easy to use.  I think it's a
good idea.

-- 
Chris

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 818 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: guix environment guix doesn't provide guix dependencies?
  2016-09-28 12:46     ` Eric Bavier
  2016-09-28 19:06       ` myglc2
@ 2016-09-30  6:52       ` Chris Marusich
  1 sibling, 0 replies; 11+ messages in thread
From: Chris Marusich @ 2016-09-30  6:52 UTC (permalink / raw)
  To: Eric Bavier; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 933 bytes --]

Eric Bavier <ericbavier@openmailbox.org> writes:

> You can also do 
>
>   guix environment -e "(@ (gnu packages package-management) guix)"
>
> which points to 'guix-devel' and includes everything needed to build
> from a git clone.
>
> `~Eric
>

Are you sure?  I just tried this and it didn't work.  When I evaluate
this expression in Guile, I see:

--8<---------------cut here---------------start------------->8---
scheme@(guile-user)> (@ (gnu packages package-management) guix)
$1 = #<package guix@0.11.0 gnu/packages/package-management.scm:71 3345c00>
scheme@(guile-user)> 
--8<---------------cut here---------------end--------------->8---

Regardless, I appreciate you mentioning the -e option; that is useful to
know, and it highlights the difference between the name of the variable
used to refer to the package object and the name of the package, which I
often forget are not the same.

-- 
Chris

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 818 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: guix environment guix doesn't provide guix dependencies?
  2016-09-30  0:46       ` Thompson, David
  2016-09-30  6:40         ` Chris Marusich
@ 2016-09-30 12:06         ` Ludovic Courtès
  2016-09-30 15:22           ` Chris Marusich
  1 sibling, 1 reply; 11+ messages in thread
From: Ludovic Courtès @ 2016-09-30 12:06 UTC (permalink / raw)
  To: Thompson, David; +Cc: guix-devel

"Thompson, David" <dthompson2@worcester.edu> skribis:

> On Wed, Sep 28, 2016 at 5:20 PM, Ludovic Courtès <ludo@gnu.org> wrote:
>> Hi Chris,
>>
>> Chris Marusich <cmmarusich@gmail.com> skribis:
>>
>>> John Darrington <john@darrington.wattle.id.au> writes:
>>
>> [...]
>>
>>>> I don't think so.   Running ./bootstrap is not part of the normal process for *building*
>>>> guix - only for bootstrapping.  But you are right - it is common to want to do that.
>>>> For this reason I often run:
>>>>
>>>>  guix environment guix --ad-hoc automake autoconf texinfo help2man
>>>>
>>>>
>>>> But perhaps you are right - the manual might want to mention this.
>>>>
>>>> J'
>>>
>>> That makes sense.  I feel like it used to provide all the dependencies,
>>> including autoconf etc., but that was months ago, and I might be
>>> mis-remembering.  It works fine when I add the needed bootstrap
>>> dependencies with --ad-hoc.
>>
>> In fact there’s a small time window during which “guix environment guix”
>> doesn’t provide autoconf et al.: it’s when the ‘guix’ variable in (gnu
>> packages package-management) refers to a released tarball instead of a
>> Git checkout, since a build from tarball doesn’t depend on autoconf et
>> al.
>>
>> So if you run “guix environment guix” on a commit different from
>> v0.11.0 + 1, you effectively get all the dependencies.
>>
>> I admit this is a bit confusing.  Not sure how to document/improve that.
>>
>> Ideas?
>
> How about a public guix-devel package that always builds from the Git repo?

Good idea.  I guess it could essentially be an alias for the current
‘guix-devel’.  Could you look into it and update the docs accordingly?

Thanks!  :-)

Ludo’.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: guix environment guix doesn't provide guix dependencies?
  2016-09-30 12:06         ` Ludovic Courtès
@ 2016-09-30 15:22           ` Chris Marusich
  0 siblings, 0 replies; 11+ messages in thread
From: Chris Marusich @ 2016-09-30 15:22 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1918 bytes --]

ludo@gnu.org (Ludovic Courtès) writes:

> "Thompson, David" <dthompson2@worcester.edu> skribis:
>
>> On Wed, Sep 28, 2016 at 5:20 PM, Ludovic Courtès <ludo@gnu.org> wrote:
>>> Hi Chris,
>>>
>>> Chris Marusich <cmmarusich@gmail.com> skribis:
>>>
>>>> John Darrington <john@darrington.wattle.id.au> writes:
>>>
>>> [...]
>>>
>>>>> I don't think so.   Running ./bootstrap is not part of the normal process for *building*
>>>>> guix - only for bootstrapping.  But you are right - it is common to want to do that.
>>>>> For this reason I often run:
>>>>>
>>>>>  guix environment guix --ad-hoc automake autoconf texinfo help2man
>>>>>
>>>>>
>>>>> But perhaps you are right - the manual might want to mention this.
>>>>>
>>>>> J'
>>>>
>>>> That makes sense.  I feel like it used to provide all the dependencies,
>>>> including autoconf etc., but that was months ago, and I might be
>>>> mis-remembering.  It works fine when I add the needed bootstrap
>>>> dependencies with --ad-hoc.
>>>
>>> In fact there’s a small time window during which “guix environment guix”
>>> doesn’t provide autoconf et al.: it’s when the ‘guix’ variable in (gnu
>>> packages package-management) refers to a released tarball instead of a
>>> Git checkout, since a build from tarball doesn’t depend on autoconf et
>>> al.
>>>
>>> So if you run “guix environment guix” on a commit different from
>>> v0.11.0 + 1, you effectively get all the dependencies.
>>>
>>> I admit this is a bit confusing.  Not sure how to document/improve that.
>>>
>>> Ideas?
>>
>> How about a public guix-devel package that always builds from the Git repo?
>
> Good idea.  I guess it could essentially be an alias for the current
> ‘guix-devel’.  Could you look into it and update the docs accordingly?
>
> Thanks!  :-)

I'll give this a shot.  I'll send a little patch this weekend.

-- 
Chris

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 818 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2016-09-30 15:22 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-09-28  4:18 guix environment guix doesn't provide guix dependencies? Chris Marusich
2016-09-28  4:54 ` John Darrington
2016-09-28  5:10   ` Chris Marusich
2016-09-28 12:46     ` Eric Bavier
2016-09-28 19:06       ` myglc2
2016-09-30  6:52       ` Chris Marusich
2016-09-28 21:20     ` Ludovic Courtès
2016-09-30  0:46       ` Thompson, David
2016-09-30  6:40         ` Chris Marusich
2016-09-30 12:06         ` Ludovic Courtès
2016-09-30 15:22           ` Chris Marusich

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).