unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH] doc: Mention "guix pull" during installation.
@ 2016-12-16  8:38 Petter
  2016-12-17 17:38 ` Leo Famulari
  2016-12-18 12:05 ` Theodoros Foradis
  0 siblings, 2 replies; 7+ messages in thread
From: Petter @ 2016-12-16  8:38 UTC (permalink / raw)
  To: guix-devel

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

Hi,

Some new users don't run `guix pull` before installing, and can have a 
less good experience because of this. Proposing a patch to add this to 
the manual.

Thanks,
Petter

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-doc-Mention-guix-pull-during-installation.patch --]
[-- Type: text/x-diff; name=0001-doc-Mention-guix-pull-during-installation.patch, Size: 1112 bytes --]

From 2340158e5454cbb3050840821bf0fd1965d2fe79 Mon Sep 17 00:00:00 2001
From: Petter <petter@mykolab.ch>
Date: Fri, 16 Dec 2016 09:28:32 +0100
Subject: [PATCH] doc: Mention "guix pull" during installation.

* doc/guix.texi (Proceeding with the Installation): Add "guix pull".
---
 doc/guix.texi | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/doc/guix.texi b/doc/guix.texi
index 46ed451..cda90ed 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -6863,6 +6863,14 @@ rather than kept in memory.  This is necessary because the first phase of
 the @command{guix system init} command (see below) entails downloads or
 builds to @file{/gnu/store} which, initially, is an in-memory file system.
 
+At this point it is advisable to update the system, especially if the
+installer is more than a few weeks old. Then most, if not all, packages
+will be available as substitutes.
+
+@example
+guix pull
+@end example
+
 Next, you have to edit a file and
 provide the declaration of the operating system to be installed.  To
 that end, the installation system comes with three text editors: GNU nano
-- 
2.10.1


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

* Re: [PATCH] doc: Mention "guix pull" during installation.
  2016-12-16  8:38 [PATCH] doc: Mention "guix pull" during installation Petter
@ 2016-12-17 17:38 ` Leo Famulari
  2016-12-18 11:00   ` Ludovic Courtès
  2016-12-18 12:05 ` Theodoros Foradis
  1 sibling, 1 reply; 7+ messages in thread
From: Leo Famulari @ 2016-12-17 17:38 UTC (permalink / raw)
  To: Petter; +Cc: guix-devel

On Fri, Dec 16, 2016 at 09:38:02AM +0100, Petter wrote:
> good experience because of this. Proposing a patch to add this to the
> manual.

Thanks for looking out for the new user experience, which one tends to
forget as time passes :)

> * doc/guix.texi (Proceeding with the Installation): Add "guix pull".

> +At this point it is advisable to update the system, especially if the
> +installer is more than a few weeks old. Then most, if not all, packages
> +will be available as substitutes.
> +
> +@example
> +guix pull
> +@end example

So far, in practice, this seems to become necessary as a given release
grows old. This is a negative side effect of some limitations of our
build farm infrastructure.

Specifically, we start to garbage collect the substitutes that
correspond to a release as time goes by, for two reasons: we need the
disk space, and more importantly, our method of registering garbage
collector roots [0] is still rather crude.

Some of us are working on a different method of registering garbage
collector roots that will allow us to tell Hydra, "Keep the substitutes
for release X", or "Keep the substitutes for the master branch in the
last 3 months".

I've recently gave an explanation of why I think using `guix pull`
before installing GuixSD should not be recommended unconditionally:

http://lists.gnu.org/archive/html/bug-guix/2016-11/msg00047.html

In the specific case of installing GuixSD 0.11.0 today, `guix pull` is
necessary, because we lack the substitutes, and some packages can't be
built at all now [1]. But, adding these lines to the manual now won't
make it show up in the 0.11.0 installer manual.

I think we should work on improving our infrastructure in the next
release cycle, and revisit this change to the manual if we are still
having problems before the 0.13.0 release.

What does everyone think?

[0]
https://www.gnu.org/software/guix/manual/html_node/Invoking-guix-gc.html

[1] For example:
http://git.savannah.gnu.org/cgit/guix.git/commit/?id=d404a6f9711c8dcc1cc6cf55d8c07901aa450192

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

* Re: [PATCH] doc: Mention "guix pull" during installation.
  2016-12-17 17:38 ` Leo Famulari
@ 2016-12-18 11:00   ` Ludovic Courtès
  2016-12-19  7:41     ` Alex Sassmannshausen
  0 siblings, 1 reply; 7+ messages in thread
From: Ludovic Courtès @ 2016-12-18 11:00 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel, Petter

Hello!

Leo Famulari <leo@famulari.name> skribis:

> I've recently gave an explanation of why I think using `guix pull`
> before installing GuixSD should not be recommended unconditionally:
>
> http://lists.gnu.org/archive/html/bug-guix/2016-11/msg00047.html
>
> In the specific case of installing GuixSD 0.11.0 today, `guix pull` is
> necessary, because we lack the substitutes, and some packages can't be
> built at all now [1]. But, adding these lines to the manual now won't
> make it show up in the 0.11.0 installer manual.
>
> I think we should work on improving our infrastructure in the next
> release cycle, and revisit this change to the manual if we are still
> having problems before the 0.13.0 release.
>
> What does everyone think?

I agree with everything you wrote here.

Ludo’.

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

* Re: [PATCH] doc: Mention "guix pull" during installation.
  2016-12-16  8:38 [PATCH] doc: Mention "guix pull" during installation Petter
  2016-12-17 17:38 ` Leo Famulari
@ 2016-12-18 12:05 ` Theodoros Foradis
  2016-12-19  8:09   ` Ra
  2016-12-19 10:52   ` Ludovic Courtès
  1 sibling, 2 replies; 7+ messages in thread
From: Theodoros Foradis @ 2016-12-18 12:05 UTC (permalink / raw)
  To: guix-devel


Petter writes:

> Hi,
>
> Some new users don't run `guix pull` before installing, and can have a 
> less good experience because of this. Proposing a patch to add this to 
> the manual.
>
> Thanks,
> Petter

Just a sidenote here, that I mentioned in #guix irc channel the other
time. I tried to `guix pull` from the 0.11 USB installer, and it would
fail because some package couldn't be substituted,
module-import-compiled if I recall correctly.

Guix suggested as normal, that `--fallback` flag should be used, which
is a non-accepted flag for `guix pull`. I had to `guix system init
--fallback`, until that package was built, and then `guix pull`. Not
having run `guix pull`, building from source was failing anyway.

Is this intented behaviour, or something to be fixed?

Regards,
-- 
Theodoros Foradis

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

* Re: [PATCH] doc: Mention "guix pull" during installation.
  2016-12-18 11:00   ` Ludovic Courtès
@ 2016-12-19  7:41     ` Alex Sassmannshausen
  0 siblings, 0 replies; 7+ messages in thread
From: Alex Sassmannshausen @ 2016-12-19  7:41 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel, Petter


Ludovic Courtès writes:

> Hello!
>
> Leo Famulari <leo@famulari.name> skribis:
>
>> I've recently gave an explanation of why I think using `guix pull`
>> before installing GuixSD should not be recommended unconditionally:
>>
>> http://lists.gnu.org/archive/html/bug-guix/2016-11/msg00047.html
>>
>> In the specific case of installing GuixSD 0.11.0 today, `guix pull` is
>> necessary, because we lack the substitutes, and some packages can't be
>> built at all now [1]. But, adding these lines to the manual now won't
>> make it show up in the 0.11.0 installer manual.
>>
>> I think we should work on improving our infrastructure in the next
>> release cycle, and revisit this change to the manual if we are still
>> having problems before the 0.13.0 release.
>>
>> What does everyone think?
>
> I agree with everything you wrote here.
>
> Ludo’.

I think I too agree here.  Especially as my experience (running GuixSD
on i686 bare metal) suggests that `guix pull` can actually result in
packages that do not quite build reliably.  There currently seems to be
a `guix pull` sweet spot when the substitutes are not too old yet the
recipes not too new…

I think the best solution would definitely be guaranteed availability of
substitutes for releases until at least the next release — so I greatly
appreciate the work that is being done to on the infrastructure side.

My 2¢,

Alex

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

* Re: [PATCH] doc: Mention "guix pull" during installation.
  2016-12-18 12:05 ` Theodoros Foradis
@ 2016-12-19  8:09   ` Ra
  2016-12-19 10:52   ` Ludovic Courtès
  1 sibling, 0 replies; 7+ messages in thread
From: Ra @ 2016-12-19  8:09 UTC (permalink / raw)
  To: Theodoros Foradis, guix-devel

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

Hi Theodoros,

On Sun, Dec 18, 2016 at 1:12 PM Theodoros Foradis <
theodoros.for@openmailbox.org> wrote:

>
> Petter writes:
>
> > Hi,
> >
> > Some new users don't run `guix pull` before installing, and can have a
> > less good experience because of this. Proposing a patch to add this to
> > the manual.
> >
> > Thanks,
> > Petter
>
> Just a sidenote here, that I mentioned in #guix irc channel the other
> time. I tried to `guix pull` from the 0.11 USB installer, and it would
> fail because some package couldn't be substituted,
> module-import-compiled if I recall correctly.
>
> Guix suggested as normal, that `--fallback` flag should be used, which
> is a non-accepted flag for `guix pull`. I had to `guix system init
> --fallback`, until that package was built, and then `guix pull`. Not
> having run `guix pull`, building from source was failing anyway.


Last week I tried to follow the manual (binary install with Ubuntu) and use
`guix pull` without success, `--fallback` option was there and I had a lot
of troubles with [module-import-compiled](
https://gist.github.com/helios/6d13037a7ae7be40f118573545cbccb3)
In #guix irc I found valuable helps (cbaines, rekado)  and I ended up using
the git source


git clone --recurse git://git.savannah.gnu.org/guix.git
cd guix

guix environment --fallback --pure --container -N guix --ad-hoc guile-cairo
guile-charting guile-rsvg -- sh -c "make clean; ./bootstrap &&
./configure --localstatedir=/var
&& make -j4"

ln -s ~/guix ~/.config/guix/latest
guix package -u

maybe the git/source install should be documented as well or at least
tested from scratch for newbies such as me.

--
Ra

[-- Attachment #2: Type: text/html, Size: 4860 bytes --]

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

* Re: [PATCH] doc: Mention "guix pull" during installation.
  2016-12-18 12:05 ` Theodoros Foradis
  2016-12-19  8:09   ` Ra
@ 2016-12-19 10:52   ` Ludovic Courtès
  1 sibling, 0 replies; 7+ messages in thread
From: Ludovic Courtès @ 2016-12-19 10:52 UTC (permalink / raw)
  To: Theodoros Foradis; +Cc: guix-devel

Hi Theodoros,

Theodoros Foradis <theodoros.for@openmailbox.org> skribis:

> Petter writes:
>
>> Hi,
>>
>> Some new users don't run `guix pull` before installing, and can have a 
>> less good experience because of this. Proposing a patch to add this to 
>> the manual.
>>
>> Thanks,
>> Petter
>
> Just a sidenote here, that I mentioned in #guix irc channel the other
> time. I tried to `guix pull` from the 0.11 USB installer, and it would
> fail because some package couldn't be substituted,
> module-import-compiled if I recall correctly.
>
> Guix suggested as normal, that `--fallback` flag should be used, which
> is a non-accepted flag for `guix pull`. I had to `guix system init
> --fallback`, until that package was built, and then `guix pull`. Not
> having run `guix pull`, building from source was failing anyway.
>
> Is this intented behaviour, or something to be fixed?

Something to be fixed!

The story is that Guile does not (yet!) build .go files in a
reproducible fashion:

  https://debbugs.gnu.org/cgi/bugreport.cgi?bug=20272

mirror.hydra.gnu.org occasionally has meta-data (.narinfo) and data
(.nar) out of sync, which is a problem for non-reproducible builds: the
next build of ‘module-import-compiled’ may not be bit-identical to the
previous one.  This problem was worsened by the fact that many things
had been GC’d from hydra.gnu.org.

Anyway, this is being fixed both on the Guile side and on the
infrastructure side.

Ludo’.

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

end of thread, other threads:[~2016-12-19 10:52 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-12-16  8:38 [PATCH] doc: Mention "guix pull" during installation Petter
2016-12-17 17:38 ` Leo Famulari
2016-12-18 11:00   ` Ludovic Courtès
2016-12-19  7:41     ` Alex Sassmannshausen
2016-12-18 12:05 ` Theodoros Foradis
2016-12-19  8:09   ` Ra
2016-12-19 10:52   ` Ludovic Courtès

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).