From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:4a6f::]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id qECEHyiLYWDVdQEAgWs5BA (envelope-from ) for ; Mon, 29 Mar 2021 10:09:12 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id EHRsGSiLYWA6JwAA1q6Kng (envelope-from ) for ; Mon, 29 Mar 2021 08:09:12 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id F23491C154 for ; Mon, 29 Mar 2021 10:09:11 +0200 (CEST) Received: from localhost ([::1]:50128 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lQmxS-0004WR-UW for larch@yhetil.org; Mon, 29 Mar 2021 04:09:10 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:33638) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lQmxK-0004WI-Vs for bug-guix@gnu.org; Mon, 29 Mar 2021 04:09:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:36213) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lQmxK-0002va-N4 for bug-guix@gnu.org; Mon, 29 Mar 2021 04:09:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1lQmxK-00058d-HO for bug-guix@gnu.org; Mon, 29 Mar 2021 04:09:02 -0400 X-Loop: help-debbugs@gnu.org Subject: bug#47458: Terrible UX upgrading Emacs in Guix Resent-From: Leo Prikler Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Mon, 29 Mar 2021 08:09:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 47458 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: Mark H Weaver , 47458@debbugs.gnu.org Received: via spool by 47458-submit@debbugs.gnu.org id=B47458.161700528919693 (code B ref 47458); Mon, 29 Mar 2021 08:09:02 +0000 Received: (at 47458) by debbugs.gnu.org; 29 Mar 2021 08:08:09 +0000 Received: from localhost ([127.0.0.1]:47759 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lQmwH-000571-64 for submit@debbugs.gnu.org; Mon, 29 Mar 2021 04:08:09 -0400 Received: from mailrelay.tugraz.at ([129.27.2.202]:57246) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lQmwF-00056t-R1 for 47458@debbugs.gnu.org; Mon, 29 Mar 2021 04:07:56 -0400 Received: from nijino.local (194-96-13-79.adsl.highway.telekom.at [194.96.13.79]) by mailrelay.tugraz.at (Postfix) with ESMTPSA id 4F84vC72LGz3y7p; Mon, 29 Mar 2021 10:07:51 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tugraz.at; s=mailrelay; t=1617005272; bh=I6EKPUpFmi7JOGHSWpsjeve7ZX/jcB8VgMHeslmLNIM=; h=Subject:From:To:Date:In-Reply-To:References; b=ZBft4U0qKvP72RzOdtOXoItTX/uQjN6YZ3WLMUIPq8Q+tCLtUyhwiJ6EZ373JuhUy g6HtFCbybP6aooRkHj6ZiT/tl5Xc48MwpSoEtAvywv8Ayx53W47t/spN/y30vnjcH4 /RbMhl0PlEAjGPu/fb7dXEMVC7by8lly/sGDHlWA= Message-ID: From: Leo Prikler Date: Mon, 29 Mar 2021 10:07:51 +0200 In-Reply-To: <87o8f23eew.fsf@netris.org> References: <87o8f23eew.fsf@netris.org> Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.34.2 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-TUG-Backscatter-control: bt4lQm5Tva3SBgCuw0EnZw X-Spam-Scanner: SpamAssassin 3.003001 X-Spam-Score-relay: -1.9 X-Scanned-By: MIMEDefang 2.74 on 129.27.10.117 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-guix@gnu.org List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+larch=yhetil.org@gnu.org Sender: "bug-Guix" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1617005352; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=I6EKPUpFmi7JOGHSWpsjeve7ZX/jcB8VgMHeslmLNIM=; b=fXY3BPyQDFkrwWB+kytmpGQXmYV3FXn6l/hYXy8W8SFZDkjA7Jf+kA7h1OIsPRs4h8wu8r 8CXKzCywVB2x112ob9+bzanhnrNxDUCam+4IUZWwNX0PcQGIT3ABGON/7ZH6LfxZl5Cn84 ircNEpahzYYMPqes4nCS78GyQ0ZtMzhJ4Y3KAfdcssJjEkdZhPPM0s7RheEKwvo+58uR/C rCdigk2x7VqDQ0IHM2KXPfACyQ/xdZ0EJzV8b98qin2ZkC/ucB0JxjT4Ut2jYuY+eHA4mf sMVcGrAgdR/GZ/TFqUBTiz/75659frbrR4J8TAqfwXA0/p6kOi3TnVGbfDZd/w== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1617005352; a=rsa-sha256; cv=none; b=cowmdE9LfldGF7Z+qVdCDiQgzxGkJjw9Zvk9RBDKhSheKbnTWSbTznzH+jJfhsE1VcJJKs NetuHa+g91NvinLVsG5X2YwmvZYc2XOZYcXL2TIjH5l7zYXSdCHOFX9/aGDvWpPd63HHW0 qvWMj50nQecw3tMSoPdrYtsU1P2Iy0HJvEp2n6AxfnRaZ23LzgUhN3fl5pd95XtoLZQdVn wlYaEF1BHnYYQHWBxtZVLtp+R0aZduFUC1hVdCP9uH0omv2vAe2HoznYHWJpTgiUjW5vHa zF685GMEyFYPdEv+EXogZCTj86w2rzba1IFNkXkn0JhEdHiAr30V6QddllpPNw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=tugraz.at header.s=mailrelay header.b=ZBft4U0q; spf=pass (aspmx1.migadu.com: domain of bug-guix-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=bug-guix-bounces@gnu.org X-Migadu-Spam-Score: -1.32 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=tugraz.at header.s=mailrelay header.b=ZBft4U0q; dmarc=fail reason="SPF not aligned (relaxed)" header.from=student.tugraz.at (policy=none); spf=pass (aspmx1.migadu.com: domain of bug-guix-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=bug-guix-bounces@gnu.org X-Migadu-Queue-Id: F23491C154 X-Spam-Score: -1.32 X-Migadu-Scanner: scn0.migadu.com X-TUID: 1wTbtSVr/6H6 Am Sonntag, den 28.03.2021, 22:02 -0400 schrieb Mark H Weaver: > I just updated my Guix system, which included the Emacs update from > 27.1 > to 27.2. After "guix package -m mhw-manifest.scm" finished running > (which takes a long time for me, since I don't use substitutes), and > before I even noticed that it had finished, my existing Emacs session > started misbehaving badly. > > It failed to even open a plain text file in fundamental mode (a .drv > file) with an inscrutible error about 'arrayp'. I tried to enable > the > debugger with M-x toggle-debug-on-error, but then I started getting > errors about 'debug' not found. (I neglected to record the exact > messages). As you are probably aware by now, this is a result of parts of your EMACSLOADPATH being deleted. I don't think there's a good solution to this, but you could (as part of your early init file) resolve the symlinks in it, so that it behaves deterministically until it is garbage collected? > [...] > > Eventually, I realized what the problem was: > > (1) My existing emacs session started failing because > ~/.guix-profile/share/emacs/27.1 had disappeared out from under > it. > > (2) My newly launched emacs sessions were failing because my > EMACSLOADPATH variable was still set to its old value, pointing > at > /home/mhw/.guix-profile/share/emacs/27.1/lisp, which no longer > existed. > > I'm not sure why I've never run into this problem before. I'm also > not > sure what can be done to make this better, but if anyone has ideas, > that > would be good. If a 7+ year Guix veteran developer gets bitten badly > by > this, I doubt that less experienced users will be impressed. Remember the snippet, that tells you you might want to recompute your environment variables at the end of `guix package'? Well, this is just that. I've already made it a habit to close Emacs at that point (and you probably have as well), but as you said, you didn't even notice the update succeed, so that's what lead to the confusion. In a similar manner, if I see an Emacs version upgrade at the start of the transaction, I already know to prepare for a little environment variable dance to get it to start correctly. I think there has been an idea to update environment variables in GNOME Shell directly, for instance, but a. we're lacking the technology to do so at the moment (e.g. guile- dbus) b. it's not clear, that Guix itself should do such a thing rather than relying on the user to e.g. code up a oneshot shepherd service Regards, Leo