From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Heads-up: transition to Guile 2.2 Date: Tue, 09 May 2017 23:22:05 +0200 Message-ID: <87y3u5wwsi.fsf_-_@gnu.org> References: <87bmt28qnm.fsf@gnu.org> <87k26chy16.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:55409) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1d8CaA-0007Z8-Jv for guix-devel@gnu.org; Tue, 09 May 2017 17:22:11 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1d8Ca7-0007Uq-GT for guix-devel@gnu.org; Tue, 09 May 2017 17:22:10 -0400 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:47247) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1d8Ca7-0007Uk-Cp for guix-devel@gnu.org; Tue, 09 May 2017 17:22:07 -0400 Received: from reverse-83.fdn.fr ([80.67.176.83]:60470 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1d8Ca6-0000WR-Ph for guix-devel@gnu.org; Tue, 09 May 2017 17:22:07 -0400 In-Reply-To: <87k26chy16.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Sun, 23 Apr 2017 00:34:29 +0200") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: guix-devel Hello Guix! ludo@gnu.org (Ludovic Court=C3=A8s) skribis: > There=E2=80=99s a problem though, called =E2=80=9Cguix pull=E2=80=9D. ~/= .config/guix/latest > currently contains 2.0 .go files. Thus after reconfiguring GuixSD to > use Guix-for-2.2, running =E2=80=98guix=E2=80=99 typically gives loads of= warnings like: > > ;;; WARNING: loading compiled file /home/ludo/.config/guix/latest/guix/= derivations.go failed: > ;;; ERROR: In procedure load-thunk-from-memory: No such file or directo= ry With commit 838ba73d6e49bd2b1f2d4ed9329b65cc4e8c1f54, =E2=80=98guix pull=E2= =80=99 builds with the currently used Guile, be it 2.0 or 2.2. To achieve that, it tries hard to pick 2.0 or 2.2 packages for the dependencies of Guix. If it cannot find a =E2=80=9Cguile-ssh=E2=80=9D package for the Guile being= used (for instance, you=E2=80=99re using Guile 2.2 but lacking the =E2=80=9Cguile-ssh= =E2=80=9D package built with 2.2), then it simply skips modules that depend on Guile-SSH; they are optional anyway. For Guile-JSON, it just assumes that there is a matching Guile-JSON, which should be the case anyway. As I wrote before, =E2=80=98guix pull=E2=80=99 in its current form is prett= y fragile; please report any problems you have. In addition, with commit 7561881f2a5d2dc463c24713745eca03e67044bf, the =E2=80=9Cguix=E2=80=9D package is now built with Guile 2.2 instead of 2.0. = Thus, next time you update GuixSD, /run/current-system/profile/bin/guix will be using Guile 2.2. At that point, if ~/.config/guix/latest contains .go files for 2.0, you=E2=80=99ll get warnings as shown above, and you=E2=80=99= ll have to =E2=80=9Cguix pull=E2=80=9D to get rid of them. At this point, we=E2=80=99re still using Guile 2.0 (1) to build derivations= , and (2) in the Shepherd, mcron, and modules imported inside the Shepherd. In =E2=80=98core-updates=E2=80=99 we have addressed #1 and we=E2=80=99ll ad= dress #2 as well. Ludo=E2=80=99.