From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Lepiller Subject: Re: Updating a very old Guix Date: Fri, 09 Nov 2018 15:51:28 +0100 Message-ID: <2adb18453b8eb8bab85b6ac07f806eb2@lepiller.eu> References: Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:59292) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gL88Z-0003E7-Bo for help-guix@gnu.org; Fri, 09 Nov 2018 09:51:56 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gL88W-0005l6-4V for help-guix@gnu.org; Fri, 09 Nov 2018 09:51:55 -0500 Received: from lepiller.eu ([2a00:5884:8208::1]:36352) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gL88V-0005dp-Rq for help-guix@gnu.org; Fri, 09 Nov 2018 09:51:52 -0500 Received: from webmail.lepiller.eu (static-176-182-42-79.ncc.abo.bbox.fr [176.182.42.79]) by lepiller.eu (OpenSMTPD) with ESMTPSA id 6324f4c6 (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256:NO) for ; Fri, 9 Nov 2018 14:49:42 +0000 (UTC) In-Reply-To: List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+gcggh-help-guix=m.gmane.org@gnu.org Sender: "Help-Guix" To: help-guix@gnu.org Le 2018-11-09 15:37, Konrad Hinsen a écrit : > Hi everyone, > > I have a computer that I don't use very often, with a rather old Guix > installation from nearly a year ago. So I though I should do an update. > > First try: "guix pull". > > Does a lot of downloading and compiling, then finishes. But guix no > longer works: > > ERROR: In procedure scm-error: > no code for module (gcrypt hash) > > Next try: I cloned the repository under a different user account (that > still had the old Guix). "guix environment guix", "bootstrap", and > then "configure" get me to the error message: > > configure: error: A recent Guile-SQLite3 could not be found; please > install it. > > But I cannot install a recent Guile-SQLite3 without doing a "guix pull" > first. > > One more option I can think of is installing everything required to > compile Guix manually, then compile from source. Not exactly an > attractive idea, all the more since the dependency list in the Guix > manual looks incomplete (it doesn't mention Guile, for example, nor > Guile-SQLite3). > > Are there any other options ? I would like to avoid deleting everything > and starting from scratch because there is one account on that machine > that has in its Guix profile my only working installation of the only > program I actually need this machine for. > > Konrad. If you have another machine with guix installed, you could try to use guix copy to copy a working guix pull profile (~/.config/guix/current) to that computer, and then you will be able to use that guix to run guix pull. Don't forget to create a key-pair on the other machine and to authorize the public key on the receiving end. So on a machine with a recent guix: guix archive --generate-key scp /etc/guix/signing-key.pub remote@machine On the first machine: guix archive --authorize < signing-key.pub On the machine with a recent guix: guix copy --to=remote@machine `readlink -f ~/.config/guix/latest` And finally on the machine with an old guix: /gnu/store/.../bin/guix pull # with ... the result of readlink on the machine with the recent guix. Hopefully, that will work :) See http://guix.info/manual/en/Invoking-guix-copy.html#Invoking-guix-copy and http://guix.info/manual/en/Invoking-guix-archive.html#Invoking-guix-archive for reference.