"Guix is too old and cannot be upgraded" (guix package -u)

  • Done
  • quality assurance status badge
Details
5 participants
  • Jesse Gibbons
  • Ludovic Courtès
  • pelzflorian (Florian Pelz)
  • Ricardo Wurmus
  • melon
Owner
unassigned
Submitted by
melon
Severity
normal
M
(address . bug-guix@gnu.org)
87mufb3epg.fsf@muto.ca
I was attempting to upgrade my Guix (binary, on Linux Mint) installation
today using the 'guix package pull && guix package -u' commands, and Guix outputted the following error:

ERROR: In procedure raise:
Wrong type (expecting exact integer): #<condition &message [message: "Guix is too old and cannot be upgraded"] 7528ac0>
guix pull: error: You found a bug: the program '/gnu/store/y1kqj5ikxx9niyz2zx1gbikspi2xfmi4-compute-guix-derivation'
failed to compute the derivation for Guix (version: "7e143375d3649f3c0bd4c13958b26c086f364647"; system: "x86_64-linux";
host version: "aa4818c33b6b2fd8d602ee93a2f53005d9472f41"; pull-version: 0).
Please report it by email to <bug-guix@gnu.org>.

I searched the Web and mailing list archives for this error but could
not find anything. Maybe I used the wrong keywords.

Is there any way I can perform a "manual upgrade" to a newer Guix
version?
J
J
Jesse Gibbons wrote on 11 Sep 2019 03:29
24bccfebf40e114498af09d86a1032a2cd82075c.camel@gmail.com
On Tue, 2019-09-10 at 17:37 -0600, melon wrote:
Toggle quote (23 lines)
> I was attempting to upgrade my Guix (binary, on Linux Mint)
> installation
> today using the 'guix package pull && guix package -u' commands, and
> Guix outputted the following error:
>
> ERROR: In procedure raise:
> Wrong type (expecting exact integer): #<condition &message [message:
> "Guix is too old and cannot be upgraded"] 7528ac0>
> guix pull: error: You found a bug: the program
> '/gnu/store/y1kqj5ikxx9niyz2zx1gbikspi2xfmi4-compute-guix-derivation'
> failed to compute the derivation for Guix (version:
> "7e143375d3649f3c0bd4c13958b26c086f364647"; system: "x86_64-linux";
> host version: "aa4818c33b6b2fd8d602ee93a2f53005d9472f41"; pull-
> version: 0).
> Please report it by email to <bug-guix@gnu.org>.
>
> I searched the Web and mailing list archives for this error but could
> not find anything. Maybe I used the wrong keywords.
>
> Is there any way I can perform a "manual upgrade" to a newer Guix
> version?
>

Wow, now I want to keep guix up-to-date all the time. How long has it
been since you pulled/upgraded guix?

The first thing I thought of is manually remove the guix binary run
install script. But that might get complicated.

I think you can look at the git repo on savannah and pull a few commits
after your current commit (run "guix describe" to get the commit, then
"guix pull --commit=COMMIT" where COMMIT is about a hundred commits
after your current commit), repeating until "guix pull" brings guix
fully up-to-date.
P
P
pelzflorian (Florian Pelz) wrote on 11 Sep 2019 07:46
(name . melon)(address . shack@muto.ca)(address . 37374@debbugs.gnu.org)
20190911054604.dbne7tyofxomomxk@pelzflorian.localdomain
On Tue, Sep 10, 2019 at 05:37:47PM -0600, melon wrote:
Toggle quote (19 lines)
> I was attempting to upgrade my Guix (binary, on Linux Mint) installation
> today using the 'guix package pull && guix package -u' commands, and Guix outputted the following error:
>
> ERROR: In procedure raise:
> Wrong type (expecting exact integer): #<condition &message [message: "Guix is too old and cannot be upgraded"] 7528ac0>
> guix pull: error: You found a bug: the program '/gnu/store/y1kqj5ikxx9niyz2zx1gbikspi2xfmi4-compute-guix-derivation'
> failed to compute the derivation for Guix (version: "7e143375d3649f3c0bd4c13958b26c086f364647"; system: "x86_64-linux";
> host version: "aa4818c33b6b2fd8d602ee93a2f53005d9472f41"; pull-version: 0).
> Please report it by email to <bug-guix@gnu.org>.
>
> I searched the Web and mailing list archives for this error but could
> not find anything. Maybe I used the wrong keywords.
>
> Is there any way I can perform a "manual upgrade" to a newer Guix
> version?
>
>
>

A manual upgrade is possible using a Git checkout, but it may be
easiest to just remove Guix like
and then reinstall.

(Sorry for linking to the Arch wiki; are there uninstall/removal
instructions in the manual that I missed? They should be more
prominent.)

Regards,
Florian
R
R
Ricardo Wurmus wrote on 11 Sep 2019 09:01
(name . Jesse Gibbons)(address . jgibbons2357@gmail.com)
87woefpb99.fsf@elephly.net
Hi Jesse,

Toggle quote (3 lines)
> Wow, now I want to keep guix up-to-date all the time. How long has it
> been since you pulled/upgraded guix?

There’s no need to worry about that. The mechanism to upgrade Guix has
changed significantly over the past years and has since stabilized.
This error will usually only hit you if you’re using a *much* older
Guix that predates the changes how “guix pull” works.

(It’s still a good idea to keep Guix up-to-date, of course.)

--
Ricardo
L
L
Ludovic Courtès wrote on 11 Sep 2019 23:09
(name . Ricardo Wurmus)(address . rekado@elephly.net)
87sgp2o806.fsf@gnu.org
Hello,

Ricardo Wurmus <rekado@elephly.net> skribis:

Toggle quote (8 lines)
>> Wow, now I want to keep guix up-to-date all the time. How long has it
>> been since you pulled/upgraded guix?
>
> There’s no need to worry about that. The mechanism to upgrade Guix has
> changed significantly over the past years and has since stabilized.
> This error will usually only hit you if you’re using a *much* older
> Guix that predates the changes how “guix pull” works.

Specifically, the message “Guix is too old and cannot be upgraded”
appears when you’re running ‘guix pull’ from Guix before 0.15.0,
released in July 2018. (That seemed like prehistory to me but I realize
it’s only a bit more than one year old.)

But like Ricardo wrote, such problems are unlikely to show up again
because ‘guix pull’ since 0.15.0 is designed to handle all sorts of
bumps into future Guix revisions.

Anyway, the simplest option for now, melon, may be to remove your
current Guix installation and install 1.0 instead.

Ludo’.
L
L
Ludovic Courtès wrote on 20 Sep 2019 23:15
control message for bug #37374
(address . control@debbugs.gnu.org)
87lfuioejc.fsf@gnu.org
tags 37374 wontfix
close 37374
quit
?