From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Subject: bug#40612: guix build system --dry-run is broken Date: Tue, 21 Apr 2020 16:48:08 +0200 Message-ID: <87a734yjx3.fsf@gnu.org> References: <87wo6jax7c.fsf@netris.org> <20200414171632.41dae6fd@alma-ubu> <87d088sn6j.fsf@gnu.org> <87ftd1uc11.fsf@netris.org> <87y2qs68i9.fsf@gnu.org> <87mu775elg.fsf@netris.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:38530) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jQuCt-00049O-FY for bug-guix@gnu.org; Tue, 21 Apr 2020 10:49:03 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.90_1) (envelope-from ) id 1jQuCt-0005cm-0g for bug-guix@gnu.org; Tue, 21 Apr 2020 10:49:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:38966) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jQuCs-0005cT-Lg for bug-guix@gnu.org; Tue, 21 Apr 2020 10:49:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jQuCs-0003vz-H4 for bug-guix@gnu.org; Tue, 21 Apr 2020 10:49:02 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <87mu775elg.fsf@netris.org> (Mark H. Weaver's message of "Sun, 19 Apr 2020 17:50:56 -0400") List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane-mx.org@gnu.org Sender: "bug-Guix" To: Mark H Weaver Cc: 40612@debbugs.gnu.org Hi, Mark H Weaver skribis: > Ludovic Court=C3=A8s wrote: >> Mark H Weaver skribis: >> >>> Yes, of course, I agree that it's not possible to present a build plan >>> ahead of time when grafts are enabled. That was the case before these >>> changes, and it's the case today. >>> >>> The only part I don't understand is why you decided that "--dry-run" >>> should no longer imply "--no-grafts". Does it work better for other >>> people? For me, the "--dry-run" output has become utterly useless >>> unless "--no-grafts" is included. >> >> I explained the pros and cons of having =E2=80=98--dry-run=E2=80=99 no l= onger implying >> =E2=80=98--with-grafts=E2=80=99 here: >> >> https://lists.gnu.org/archive/html/guix-devel/2020-03/msg00337.html > > I read that message, but was unable to find any mention of the 'pros' of > having '--dry-run' no longer imply '--no-grafts'. Did I miss it? I > still don't know what is the argument in favor of that change. The =E2=80=9Cpro=E2=80=9D is not there, you=E2=80=99re right. It=E2=80=99s= basically about eliminating a special case. The ideal would be that the special case is unnecessary and grafts can be considered a special case of dynamic dependencies. I=E2=80=99m not saying we=E2=80=99re there yet, I pointed out weaknesses an= d you found other instances, but that=E2=80=99s the general direction I wanted to take. >> =E2=80=98guix package --dry-run=E2=80=99 overall works well IME, except = when a >> dependency of a fixed-output derivation is missing, as explained above. >> >> =E2=80=98guix system=E2=80=99 doesn=E2=80=99t work so well as you note (= though again, that >> depends on what you=E2=80=99re building vs. what you have in store). > > For what it's worth, I've found the --dry-run output to be similarly > useless when rebuilding my user profile as well. Not for me, but we could look at specific examples. Whether substitutes are used makes no difference, which is an improvement compared to the previous situation! Thanks for your feedback, Ludo=E2=80=99.