From debbugs-submit-bounces@debbugs.gnu.org Wed Jan 11 16:19:33 2017 Received: (at 22990) by debbugs.gnu.org; 11 Jan 2017 21:19:33 +0000 Received: from localhost ([127.0.0.1]:50226 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cRQIv-00047s-Dd for submit@debbugs.gnu.org; Wed, 11 Jan 2017 16:19:33 -0500 Received: from eggs.gnu.org ([208.118.235.92]:49280) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cRQIt-00047e-2K for 22990@debbugs.gnu.org; Wed, 11 Jan 2017 16:19:31 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cRQIk-0000ft-2Y for 22990@debbugs.gnu.org; Wed, 11 Jan 2017 16:19:26 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_50,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:56705) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cRQIj-0000fo-Up; Wed, 11 Jan 2017 16:19:21 -0500 Received: from reverse-83.fdn.fr ([80.67.176.83]:38774 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1cRQIj-0003BI-Cg; Wed, 11 Jan 2017 16:19:21 -0500 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: David Craven Subject: Re: bug#22990: Grafts leads to inefficient substitute info retrieval References: <8737rxx8gk.fsf@gnu.org> <87k2a5rzue.fsf@gnu.org> <877f633kt1.fsf@gnu.org> <874m15yl99.fsf@gnu.org> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 22 =?utf-8?Q?Niv=C3=B4se?= an 225 de la =?utf-8?Q?R?= =?utf-8?Q?=C3=A9volution?= 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-unknown-linux-gnu Date: Wed, 11 Jan 2017 22:19:19 +0100 In-Reply-To: (David Craven's message of "Wed, 11 Jan 2017 11:51:29 +0100") Message-ID: <87k2a1wazs.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -8.2 (--------) X-Debbugs-Envelope-To: 22990 Cc: 22990@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -8.2 (--------) David Craven skribis: >> On second thought, the whole idea of applying grafts on the final result >> (instead of applying grafts at each step like we do now) doesn=E2=80=99t= fly. >> It works well for things like a profile or the system derivation, but >> breaks for less trivial things. > >> For example, if you=E2=80=99re building a VM image or a binary tarball, = you >> really need to graft packages early on; trying to graft the VM image or >> binary tarball wouldn=E2=80=99t have the desired effect. > > Isn't a system derivation or a profile derivation an intermediate step > to these derivations? Yes, you=E2=80=99re right. However the implementation I had come up with r= elied on =E2=80=9Cbuild continuations=E2=80=9D, which only worked for the =E2=80= =9Ctop-level=E2=80=9D derivations (those you pass to =E2=80=98build-derivations=E2=80=99.) > Can't there be a flag or something called #:already-grafted? #t? Yeah, we need something like that. I need to chew a bit more on this to find a nice way to achieve that. Thanks for your feedback, I feel less lonely now. :-) Ludo=E2=80=99.