[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Why do some vm-image VM packages display "OUTPUTS: (Package is obsol
Re: Why do some vm-image VM packages display "OUTPUTS: (Package is obsolete)"?
Tue, 12 Jul 2016 18:25:01 -0400
Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)
Alex Kost <address@hidden> writes:
> myglc2 (2016-07-06 05:55 +0300) wrote:
>> Why do some vm-image VM packages display "OUTPUTS: (Package is obsolete)"?
> Sorry, I have zero knowledge about VM things and I don't understand what
> you describe, but I have an idea...
> ... Emacs interface uses the term "obsolete" *wrongfully* (I have known
> about it since the very beginning :-)). It displays an installed
> package as obsolete in one case – when there is no such package (with
> the same name and the same version) in the Guix code base it uses. This
> leads to a problem you probably have: when an installed package is "from
> the future", it is displayed as obsolete.
Maybe you could say "mismatch" instead?
> For example, the current Guix code provides a definition for a package
> "foo-0.2". So if you have "foo-0.3" installed, it will be displayed by
> the Emacs UI as obsolete! Since Emacs can't get any info for the
> unknown package (Guix has "foo-0.2" package but not "foo-0.3"), it just
> displays "Package is obsolete".
> As you can see, "obsolete" is not a suitable term here, it would be
> better to display "Package not found" or something like this.
> Returning to you problem (which I don't understand at all), I guess it
> is similar to this: your "~/.config/guix/latest" is a symlink to the
> recent Guix code base (either your git checkout or a store directory
> made by "guix pull"). And your user/system profiles probably contain
> modern packages that came from this recent Guix.
> Now, if you remove (or rename) "~/.config/guix/latest" temporarily and
> try to use emacs interface, it will use package definitions from the
> older Guix (from the store). And it will display some new packages as
> obsolete, but they are not obsolete, they are actually too new, and the
> old Guix doesn't have package definitions for them.
> Sorry for verbosity, you can switch to *Guix REPL* buffer and enter
> ‘%load-path’ there. I think the value of this variable will not contain
> "/home/<user>/.config/guix/latest" when you have "obsolete" packages,
> and will contain it when everything is OK.
Not verbose. Rather this was very helpful ;-)
I removed "/home/<user>/.config/guix/latest" and saw what you describe.
And I thought I understood. Then I tried ...
address@hidden ~/src/guix$ sudo make -j5 install
... thinking this would fix the VM image. but still when I make a new
vm-image I see ...
> In the running "guest" VM, 'M-x guix-installed-system-packages'
> displayed 'git', 'git-manpages', 'guix', 'iw', 'magit', 'pciutils',
> 'screen' and 'wget' in red in the "*Guix Package List:..." buffer.
... so I am still confused ;=(. So I wonder...
Which guix version is used to build the vm-image?
Which guix version is in the vm-image
Why are these different?
BTW, I switched back to running GuixSD since the previous email. Results
TIA - George