From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:303:e16b::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms8.migadu.com with LMTPS id 8F89O5VlX2XoUAAAG6o9tA:P1 (envelope-from ) for ; Thu, 23 Nov 2023 15:45:42 +0100 Received: from aspmx1.migadu.com ([2001:41d0:303:e16b::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id 8F89O5VlX2XoUAAAG6o9tA (envelope-from ) for ; Thu, 23 Nov 2023 15:45:42 +0100 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 6B3A15DA11 for ; Thu, 23 Nov 2023 15:45:41 +0100 (CET) Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=posteo.de header.s=2017 header.b=hZaPGuR2; spf=pass (aspmx1.migadu.com: domain of "bug-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="bug-guix-bounces+larch=yhetil.org@gnu.org"; dmarc=fail reason="SPF not aligned (strict)" header.from=posteo.de (policy=none) ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1700750741; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc: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=l8WjaEYYPcYe2VXQQdFdNVQD9eu2yb4p1KDbDKCgqoo=; b=dTmq1DQTsH+3yOP+05HM9DVtzaUgiibMU/jGhwAA0oMPcZAHNmzd21TOk8xxTFc+sir9Y0 +NvjPhrP6NYhV/ylXjcD4Fz0sOTV9tDlOYtoQChBRM/gVPlqfbxO//HRG04jMrqVlNzGH/ Ps3WX9tHGYOTpzgx+Q+krvElsXfmCHldFAi5WjMsMh7EDIJjEk5tK01W8QSmMSOJ7h8Vf1 ukjGN0inptWJV6Q9BysxW/KCuvr1YP26TQD9UD4RzGrKnxWvNh59UxANU4r3J2l4Elssuq 1jgAiIlxcLqF/3o6+uL/7gj3iQh3P1NZIVFRNOlLIGKRbdYKlekzNzYhDjUorg== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=posteo.de header.s=2017 header.b=hZaPGuR2; spf=pass (aspmx1.migadu.com: domain of "bug-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="bug-guix-bounces+larch=yhetil.org@gnu.org"; dmarc=fail reason="SPF not aligned (strict)" header.from=posteo.de (policy=none) ARC-Seal: i=1; s=key1; d=yhetil.org; t=1700750741; a=rsa-sha256; cv=none; b=ky6jml0USU17pzlrv1fMEbpzTDTSZC+5zVCoZ+oVBnP7uH/SQ21DvHsQP9zmD8fxJ7asSV LaGsOxe1c80jhUeYYf7Vt31p3sed0syR3EkRRk7bztpyzed1FR3qw/dPFWd1iBxp2ALSMh fd06Sz2V0M3ouwtWDQsj9ZRHvna/d4lZqA3FidKieLpM6AK62i81/2h/OyQyJ7XNfOAwLV 9kbSIjaeMl+tN5oxR2JW6bIWkMsJHD4EjVWDYP2V6rmbWAz08ut16XTASuWodj2BW6zDWJ XpEkZd4QbwyJBNZbE6s+kUeSbcVEaqPW/+8Fre5WVLoaFqW5M0DWxnTqFJ7FUQ== Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r6Awx-0003fD-Ij; Thu, 23 Nov 2023 09:45:03 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r6Awu-0003ea-UJ for bug-guix@gnu.org; Thu, 23 Nov 2023 09:45:01 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r6Aws-0006LO-Kw for bug-guix@gnu.org; Thu, 23 Nov 2023 09:44:59 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1r6Aww-0006pK-HK for bug-guix@gnu.org; Thu, 23 Nov 2023 09:45:02 -0500 X-Loop: help-debbugs@gnu.org Subject: bug#67292: emacs / emacs-transient collisions and bundling Resent-From: Mekeor Melire Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Thu, 23 Nov 2023 14:45:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 67292 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: Maxime Devos Cc: 67292@debbugs.gnu.org, Simon Tournier Received: via spool by 67292-submit@debbugs.gnu.org id=B67292.170075067826187 (code B ref 67292); Thu, 23 Nov 2023 14:45:02 +0000 Received: (at 67292) by debbugs.gnu.org; 23 Nov 2023 14:44:38 +0000 Received: from localhost ([127.0.0.1]:32980 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r6AwX-0006oH-Jp for submit@debbugs.gnu.org; Thu, 23 Nov 2023 09:44:38 -0500 Received: from mout01.posteo.de ([185.67.36.65]:36607) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r6AwU-0006ny-AZ for 67292@debbugs.gnu.org; Thu, 23 Nov 2023 09:44:36 -0500 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 280F124002A for <67292@debbugs.gnu.org>; Thu, 23 Nov 2023 15:44:24 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.de; s=2017; t=1700750664; bh=ifTr/ne4iaJszB2H2WHlV09N+xG8rMHhbarDxARrLsY=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version: Content-Transfer-Encoding:From; b=hZaPGuR22pag3QLmzfaOxYyLayEnQO76JZiif5teDrftnxSAvdCrqvg6UtPFDWT64 LylmmrAnWcmBAwNo9PhYqTADAyQAqkvsEkor8fwhW+Buv/33K9obeTH/fHgCurfJva RrcsnuuGsUvH3/j4CiMC6ukoX0bk4DMeffPTVrCC8OL3eQX7g74/RCwcPBLVhYiRfB Eq/9t1GbtPjLAv5keSk6GIif3wESw05O7mcxU5y60anNmwA6/tPyrCZibGdFGSJgSM sVaRzc4qPt14UlWgEXr/PocV7oLo+QBRhOS9XZMX19pmIubpd+XRJjbER95Shy+xcY oqYYNpJQ4k4Vw== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4SbgqW1Wtvz6txp; Thu, 23 Nov 2023 15:44:23 +0100 (CET) References: <5b74251c-e6ab-bb39-7892-3a792ed6854d@telenet.be> <86r0kk208a.fsf@gmail.com> From: Mekeor Melire Date: Thu, 23 Nov 2023 14:17:02 +0000 In-reply-to: Message-ID: <87jzq8bke0.fsf@posteo.de> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable 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-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US X-Migadu-Spam-Score: 2.68 X-Spam-Score: 2.68 X-Migadu-Queue-Id: 6B3A15DA11 X-Migadu-Scanner: mx13.migadu.com X-TUID: iC03djkUEm1u Hello Maxime, 2023-11-20 13:39 maximedevos@telenet.be: > Op 20-11-2023 om 11:22 schreef Simon Tournier: > > On Sun, 19 Nov 2023 at 23:44, Maxime Devos=20 > > > > wrote: > >> Bug 1: emacs bundles emacs-transient. > >> (Likewise for quite a few other Emacs packages.) > > This is not a bug. transient.el is part of Emacs since=20 > > version 28, > This does not answer how the bundling is not a bug. > > Unbundling is not incompatible with keeping builtins -- for=20 > example, > emacs-minimal could be the =E2=80=98minimalistic Emacs, without the=20 > typical > bundled =E2=80=98built-in=E2=80=99 stuff=E2=80=99, and emacs could be 'em= acs-minimal +=20 > the > unbundled stuff in propagated-inputs=E2=80=99. > > (Well, preferably not propagated, but that's just a matter of=20 > wrapping > or unions etc..) > > Another option could be to unbundle things in the 'source' of=20 > emacs / > emacs-minimal and copy over source code from the=20 > 'emacs-=E2=80=98builtin=E2=80=99' > packages during a build phase. > > (IIUC, emacs-minimal is for compiling Emacs packages and for=20 > scripts, > of which most probably have no need for keyboard-driven menus --=20 > and > if they do have need,) It might be possible to cut out some parts of Emacs so that emacs-minimal i= s more minimal. But I think this could become quite complicated because we = don't know exactly which parts of Emacs are needed to build Emacs-related p= ackages since they might rely on any Elisp code during compile-time. Also, = more generally, it'd be hard to decide which parts are not needed, i.e. whe= re to draw the line etc. All in all, I don't think that it's worth the effo= rt and maintenance. > >> Bug 2: no collision handling. As far as I know, Guix does not provide a facility to prioritize a=20 file from one package over the same file from another package. But also, I don't think this is necessary here, because in a Guix-installed= Emacs, the paths to Guix-installed Emacs-related packages appear first in = Emacs' load-path variable, whereas the paths to the elisp-directories from = Emacs itself come last. Thus, emacs-transient's transient.el is always pref= erred over Emacs' transient.el. Finally, here's a list an incomplete list of Emacs-related packages that ar= e both built into Emacs itself, as well as distributed separately over GNU = Elpa and thus also as separate packages in Guix: emacs-eglot emacs-eldoc emacs-external-completion emacs-jsonrpc emacs-let-alist emacs-map emacs-ntlm emacs-project emacs-so-long emacs-soap-client emacs-use-package emacs-xref If you want to know which built-in packages are distributed separately via = GNU Elpa, search the following file for ":core". Note that only a subset of= those might be packaged separately in Guix. https://git.savannah.gnu.org/cgit/emacs/elpa.git/tree/elpa-packages TANGENTIALLY: I'd like to mention that this topic becomes sort of a problem= when (1) you have installed Emacs with "guix install emacs-next --with-bra= nch=3Demacs-next=3Dmaster" or similar; and (2) you installed some Emacs-rel= ated package via Guix, which propagates another Emacs-related package that = is also built into Emacs. This would cause a downgrade of that propagated, = built-in, Emacs-related package. E.g. this happens with emacs-consult-eglot= which propagates emacs-eglot which is also built into Emacs itself. A work= -around is to overwrite the input like this: "guix install emacs-next emacs= -consult-eglot --with-input=3Demacs-eglot=3Demacs-next --with-branch=3Demac= s-next=3Dmaster".