Message ID | 82b3233597949c866c26628054117ee3@mykolab.ch |
---|---|
State | New |
Headers |
Received: (qmail 68743 invoked by uid 89); 16 Dec 2016 08:38:28 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Checked: by ClamAV 0.99.2 on sourceware.org X-Virus-Found: No X-Spam-SWARE-Status: No, score=-4.9 required=5.0 tests=AWL, BAYES_00, RP_MATCHES_RCVD, SPF_PASS autolearn=ham version=3.3.2 spammy=Installation, advisable, substitutes X-Spam-Status: No, score=-4.9 required=5.0 tests=AWL, BAYES_00, RP_MATCHES_RCVD, SPF_PASS autolearn=ham version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on sourceware.org X-Spam-Level: X-HELO: lists.gnu.org Received: from lists.gnu.org (HELO lists.gnu.org) (208.118.235.17) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 16 Dec 2016 08:38:18 +0000 Received: from localhost ([::1]:59101 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from <guix-devel-bounces+patchwork=sourceware.org@gnu.org>) id 1cHo1w-00063A-NJ for patchwork@sourceware.org; Fri, 16 Dec 2016 03:38:16 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:56743) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from <petter@mykolab.ch>) id 1cHo1s-0005y3-Bj for guix-devel@gnu.org; Fri, 16 Dec 2016 03:38:13 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from <petter@mykolab.ch>) id 1cHo1m-0003di-CO for guix-devel@gnu.org; Fri, 16 Dec 2016 03:38:12 -0500 Received: from mx.kolabnow.com ([95.128.36.1]:22438 helo=mx-out03.mykolab.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from <petter@mykolab.ch>) id 1cHo1l-0003bX-V8 for guix-devel@gnu.org; Fri, 16 Dec 2016 03:38:06 -0500 X-Virus-Scanned: amavisd-new at kolabnow.com Received: from mx03.mykolab.com (mx03.mykolab.com [10.20.7.101]) by mx-out03.mykolab.com (Postfix) with ESMTPS id 0C6AA21F2C for <guix-devel@gnu.org>; Fri, 16 Dec 2016 09:38:03 +0100 (CET) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=_542ae4f98965161b9c8ab3c722f60d09" Date: Fri, 16 Dec 2016 09:38:02 +0100 From: Petter <petter@mykolab.ch> To: guix-devel@gnu.org Subject: [PATCH] doc: Mention "guix pull" during installation. Message-ID: <82b3233597949c866c26628054117ee3@mykolab.ch> X-Sender: petter@mykolab.ch X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 95.128.36.1 X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." <guix-devel.gnu.org> List-Unsubscribe: <https://lists.gnu.org/mailman/options/guix-devel>, <mailto:guix-devel-request@gnu.org?subject=unsubscribe> List-Archive: <http://lists.gnu.org/archive/html/guix-devel/> List-Post: <mailto:guix-devel@gnu.org> List-Help: <mailto:guix-devel-request@gnu.org?subject=help> List-Subscribe: <https://lists.gnu.org/mailman/listinfo/guix-devel>, <mailto:guix-devel-request@gnu.org?subject=subscribe> Errors-To: guix-devel-bounces+patchwork=sourceware.org@gnu.org Sender: "Guix-devel" <guix-devel-bounces+patchwork=sourceware.org@gnu.org> |
Commit Message
Petter
Dec. 16, 2016, 8:38 a.m. UTC
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
Comments
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
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’.
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,
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
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
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