From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Kost Subject: Re: Why do some vm-image VM packages display "OUTPUTS: (Package is obsolete)"? Date: Wed, 06 Jul 2016 20:43:59 +0300 Message-ID: <87a8hu64rk.fsf@gmail.com> References: <86vb0jscf6.fsf@gmail.com> 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]:49704) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bKqri-0001Fo-4k for help-guix@gnu.org; Wed, 06 Jul 2016 13:44:03 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bKqrd-0003Av-TK for help-guix@gnu.org; Wed, 06 Jul 2016 13:44:01 -0400 Received: from mail-lf0-x230.google.com ([2a00:1450:4010:c07::230]:34607) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bKqrd-0003AS-KT for help-guix@gnu.org; Wed, 06 Jul 2016 13:43:57 -0400 Received: by mail-lf0-x230.google.com with SMTP id h129so159594455lfh.1 for ; Wed, 06 Jul 2016 10:43:57 -0700 (PDT) In-Reply-To: <86vb0jscf6.fsf@gmail.com> (myglc2@gmail.com's message of "Tue, 05 Jul 2016 22:55:25 -0400") 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: myglc2 Cc: help-guix@gnu.org 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 =E2=80=93 when there is no such package (wi= th 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. 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 =E2=80=98%load-path=E2=80=99 there. I think the value of this variable wil= l not contain "/home//.config/guix/latest" when you have "obsolete" packages, and will contain it when everything is OK. --=20 Alex