From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp11.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id 4AMmKLFTyWOWLwAAbAwnHQ (envelope-from ) for ; Thu, 19 Jan 2023 15:29:05 +0100 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp11.migadu.com with LMTPS id SG5JKLFTyWN1ZgEA9RJhRA (envelope-from ) for ; Thu, 19 Jan 2023 15:29:05 +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 7DA743B76E for ; Thu, 19 Jan 2023 15:29:05 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pIVu9-0003D8-NW; Thu, 19 Jan 2023 09:28:37 -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 1pIVu7-0003Ck-AX for guix-devel@gnu.org; Thu, 19 Jan 2023 09:28:35 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pIVu6-0004lJ-AY; Thu, 19 Jan 2023 09:28:34 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To: From; bh=UcJ/vyse9XLaFPLiLgp/UPCjC49xdsp4UD/im+SdMrM=; b=MGg1DI6b/qZBp12I+8fs UWBATAiwM5pwRt0+bjvrEd/gHae1/7u3pOfpAkpkYGxXMOKY/NpsYUcjcCumkDbguhlT+6RwJIOfZ bWeLJRaU24VCB5ypciFFf1kaN6xTCDWxYrsy+tYyxbnssBK3X3id85DzBx89Z2U7zMUZmQ1jBTdaA IDER2RKPEYGlolaZ7waU7ikw+3LruCPHkvraOb5CrgpvGYuVJuh66At9zq/D+6jc2/kRu5FVY+iz3 NhjoPI9tePbKmsF9osjG2PzPfqYZjfZjR0bpsq36GjoVGYU0GCaHVPnXeq/ODSxA1HLXJhEHSsqA+ pDw+bTQ2isZ7bg==; Received: from [193.50.110.246] (helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pIVu5-0006Gp-79; Thu, 19 Jan 2023 09:28:34 -0500 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= To: Liliana Marie Prikler Cc: zimoun , "pelzflorian (Florian Pelz)" , guix-devel@gnu.org Subject: Re: Grandfathering store paths considered harmful References: <87tu0s7otg.fsf@inria.fr> <87fscbravp.fsf@pelzflorian.de> <87a62hdt6c.fsf@gnu.org> <867cxk224j.fsf@gmail.com> <861qns202s.fsf@gmail.com> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: =?utf-8?Q?D=C3=A9cadi?= 30 =?utf-8?Q?Niv=C3=B4se?= an 231 de la =?utf-8?Q?R=C3=A9volution=2C?= jour du Crible X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Thu, 19 Jan 2023 15:28:30 +0100 In-Reply-To: (Liliana Marie Prikler's message of "Wed, 18 Jan 2023 22:04:14 +0100") Message-ID: <87r0vqbnu9.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: guix-devel-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN ARC-Seal: i=1; s=key1; d=yhetil.org; t=1674138545; a=rsa-sha256; cv=none; b=CewAibesGynE27g8I3Wk16dWvCC2ffgkGweMyoqDMYuPv/MDMfjBs59cQCADgwVLpX5sst rccnZg58X/dimfuqB4c3sStil18WiZFKUl4xmJEaf6RxJv07WFX9lXebcIkYDVDA/fQurI ooVr1HUZGLmD72wEaTpe0Dfhi6NITTWLqPd557S47SSULOfx065u0mthkgKfizuOi/63ZN byseoNuIs0tA5kVEvJw48wSgiyvud6YTb38m0A2dG0rnQWSpF10u4epRVvbBir84R333Gt S01GYtjDxpTcaasWG7U8Eaw37qgOPvyJIg640aEWt+0dnMqwCVEA4hZrlfmB2g== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=gnu.org header.s=fencepost-gnu-org header.b=MGg1DI6b; dmarc=pass (policy=none) header.from=gnu.org; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1674138545; 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: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=UcJ/vyse9XLaFPLiLgp/UPCjC49xdsp4UD/im+SdMrM=; b=c92+hc3A+cZf6uONeCtPK3hWq0NQ3PX4bfNLRQ81OYJL7loCOQBBWV0xvz+KEDVC7jajHJ hYdvUaLmxrUVoVLibY45X70HaWlooVoMYAEGLtTYv/j0w3nlIuIkk2xulyqdPc1jTQ7KKc UxKS5kre3LLnVBKcSl1ynMOMzdcHmm10+vU3GhPG2aCvkeoi7MMeCSfuzBNu6zRqzE8/tg cTm6YpV0fTfM57VvosMua0lrBvpTE+0Gml9cM8caYNpqXSI1ZfJF4Z3+N5fXhXmWzln3rw CKVRw0EnL7vqx3/D6oMVpZyhwuJqmCUqFgXhZr+Mez3L5EQu+p4N2mF/64J7Kw== X-Spam-Score: -8.20 X-Migadu-Queue-Id: 7DA743B76E Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=gnu.org header.s=fencepost-gnu-org header.b=MGg1DI6b; dmarc=pass (policy=none) header.from=gnu.org; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org" X-Migadu-Scanner: scn0.migadu.com X-Migadu-Spam-Score: -8.20 X-TUID: 97AyktlGqZed Hi Liliana, Liliana Marie Prikler skribis: > For context, emacs uses a hash digest to more or less uniquely > fingerprint the version (much like guix does), so natively compiling > things with emacs-minimal won't speed up your packages when using emacs > or emacs-next and is thus next to pointless. If emacs-minimal lacks JIT support anyway, there=E2=80=99s nothing it can compile? Or am I missing something? (It=E2=80=99s called =E2=80=9CJIT=E2=80=9D but we keep talking about things= that need to be done ahead-of-time, this is confusing. :-)) > I witnessed the same type of bug in wpewebkit, which pulls in the much > larger webkitgtk, probably because the former uses #$output rather than > (assoc-ref outputs "out") in one of its phases =E2=80=93 see the attached= patch > for my proposed fix. I believe the attached patch has no effect. #$output expands to (getenv "out"), where "out" is an automatic environment variable of the derivation. > If my hunch is correct, this has some further reaching implications.=20 > It means, that uses of #$output and #$(this-package-input) =E2=80=93 whic= h we > want to promote instead of labels =E2=80=93 draw in additional inputs when > combined with inheritance, which in the context of this thread I hope > we can all agree is not good. =E2=80=98this-package-input=E2=80=99 is different from #$output because it= =E2=80=99s a purely host-side feature. It refers to inputs of the package in which it appears; thus, if you define a package B that inherits from A, and the =E2=80=98arguments=E2=80=99 of A contain (this-package-input "whatever"), t= hat is fine: B=E2=80=99s =E2=80=98arguments=E2=80=99 will refer to its own =E2=80=9Cwhat= ever=E2=80=9D=C2=B9. Now, independent of that, it=E2=80=99s easy to make mistakes when using inheritance heavily. The only good solution to that IMO is to avoid factorizing too much. That is, in some cases, it may be more robust to be explicit in inherited packages=E2=80=94e.g., explicitly providing =E2=80= =98inputs=E2=80=99 and =E2=80=98arguments=E2=80=99 fields=E2=80=94than to inherit all the fiel= ds from some distant parent package. I hope that makes sense! Ludo=E2=80=99. =C2=B9 See the bit about self-referential records in .