From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.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 gJgaDktWD2NPBwEAbAwnHQ (envelope-from ) for ; Wed, 31 Aug 2022 14:38:35 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id 4EERDktWD2N5YwAAauVa8A (envelope-from ) for ; Wed, 31 Aug 2022 14:38:35 +0200 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 D989B42222 for ; Wed, 31 Aug 2022 14:38:34 +0200 (CEST) Received: from localhost ([::1]:57656 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oTMzK-0006Kt-11 for larch@yhetil.org; Wed, 31 Aug 2022 08:38:34 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:50340) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oTMxq-0004e6-Ia for bug-guix@gnu.org; Wed, 31 Aug 2022 08:37:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:48721) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oTMxq-0006mg-A4 for bug-guix@gnu.org; Wed, 31 Aug 2022 08:37:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1oTMxp-0001HL-TA for bug-guix@gnu.org; Wed, 31 Aug 2022 08:37:01 -0400 X-Loop: help-debbugs@gnu.org Subject: bug#57315: guix upgrade --dry-run output is basically useless Resent-From: zimoun Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Wed, 31 Aug 2022 12:37:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 57315 X-GNU-PR-Package: guix X-GNU-PR-Keywords: notabug To: Ludovic =?UTF-8?Q?Court=C3=A8s?= , Csepp Cc: 57315@debbugs.gnu.org Received: via spool by 57315-submit@debbugs.gnu.org id=B57315.16619493944879 (code B ref 57315); Wed, 31 Aug 2022 12:37:01 +0000 Received: (at 57315) by debbugs.gnu.org; 31 Aug 2022 12:36:34 +0000 Received: from localhost ([127.0.0.1]:38470 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oTMxO-0001Gb-1m for submit@debbugs.gnu.org; Wed, 31 Aug 2022 08:36:34 -0400 Received: from mail-wr1-f48.google.com ([209.85.221.48]:36760) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oTMxJ-0001GK-0R for 57315@debbugs.gnu.org; Wed, 31 Aug 2022 08:36:32 -0400 Received: by mail-wr1-f48.google.com with SMTP id bu22so17745883wrb.3 for <57315@debbugs.gnu.org>; Wed, 31 Aug 2022 05:36:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from:from:to:cc; bh=+5VXHwm8aGT9lXzuerW8GJBc2HEwv1EgqfzIBBQ6reQ=; b=SeTu05GLYApgTnNkpi6RLQdCGAaf5SgzWd3G30W838q6y3PCupvItsRqM4Bk6FnWx0 HkkyzDKgKkeo6PNuJuXRRPNPIfAS5PjVIJkn4fZI34x3NZxvZSqUxWjPRCq9CFM+mDd8 tpEp/Fp8hn/UEoYoNBncEfnyNaATzvuACRTp9l4+/Gm4JjJbVajYLH9wTxX6N9uBPHU8 B1AH+8b+jWrGDkXcHT1jK3EVK+mpy4BfpLIbc3NmemwFztv73bL1qeQI8gMEMlH8lacR MRv//2EDvCEwD3HTjcaVGmIvzzwTNFSlm/As9Ph66LUftVWH+nUGJhuXOmrsxg2+Rdz/ EcYw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from:x-gm-message-state:from:to:cc; bh=+5VXHwm8aGT9lXzuerW8GJBc2HEwv1EgqfzIBBQ6reQ=; b=7Whg3tykuaq2SBh6EyQxKRjPda4KpikV8ifJA2+Cg7thnXsIJrEDz1ISnE0cNewoTU PKQBVHfc1JUG0xAqK3kLw0cFxtnRYXor20oy1eLJ8JzYj7KBfet4hHArqUbf76ySbhoI FYL7O08tGHFTlFB2C5otcp4hN5wdNUv4gM9QwMheryiIFzDhezRN5ll5h/1SMlGbB5Wd rA3N4m5hxdki7rQLzg5ASxE8wBOHvNPHoNol8p8irICdOCQxXv7aL07+Dp84UDg612nS gnoPoUil899vnz4JDxKJ3SuWd5AB/EHtRpRj0ss7YO/yjwey/8+JnacFxtnVnELbBhp3 eBBA== X-Gm-Message-State: ACgBeo0atmKDocU7jrlGY1l29LvjOodlblusugvtVILRjKrVY9xKVkgT 8Hlm7y9AdbKcYBJ8FDUp92fmtc3OZWw= X-Google-Smtp-Source: AA6agR6IeJvUquLT6aiyz1kqvW+70LAx07IpPrtY+XiSGeAN7bXDasR/u24EmVlGl+JG9BiBq5crGQ== X-Received: by 2002:a5d:64eb:0:b0:225:74d5:7b07 with SMTP id g11-20020a5d64eb000000b0022574d57b07mr12587520wri.616.1661949382884; Wed, 31 Aug 2022 05:36:22 -0700 (PDT) Received: from lili ([2a01:e0a:59b:9120:65d2:2476:f637:db1e]) by smtp.gmail.com with ESMTPSA id t12-20020a05600c198c00b003a2e92edeccsm2122208wmq.46.2022.08.31.05.36.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 31 Aug 2022 05:36:22 -0700 (PDT) From: zimoun In-Reply-To: <87k06odao5.fsf@gnu.org> References: <87pmgu3xc6.fsf@riseup.net> <87k06odao5.fsf@gnu.org> Date: Wed, 31 Aug 2022 14:29:42 +0200 Message-ID: <865yi8d2a1.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 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" X-Migadu-Flow: FLOW_IN X-Migadu-To: larch@yhetil.org X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1661949515; 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=+5VXHwm8aGT9lXzuerW8GJBc2HEwv1EgqfzIBBQ6reQ=; b=OdIinKbLjgP18OVmQMKhbsF4drig83S+pJslJ8Jq8YsM+kZLuRUah2AvIzg/F7ruOOnZVp QhukGoAl8eAHhL3rr2nuPFhfS3tfRYVKvDVnLId2mcGz8/NwWv30cLCQNIoZbwOdgTrFwv XwIGAeVrFJvMOgivwdKQulvsqkb0NLHlnsBHL6+Tjr1Dpzb8iDAufy3GHqMUUeW+S3ecgm KqrvDFURc5r5ld/wESc3GLVGG+Hx9KEK5VLyDGYQo+W9rpB4jh5s5rvpRmrC2VZcYzPMNt iRlcsJLf7qkR9qzjTcCAVHZUqjQ5FCGwBLKpJ0mIUAllRuxtYKSoWMxTOyC17w== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1661949515; a=rsa-sha256; cv=none; b=b1l9aNEuLlUnVPOD4+3iVlR6OYjUK2wtPpM/n4W21+Hho72VVBAE2Nsk7tAZBKEJNQmyQ+ 51/j5Hik0ngjb/2L/nzG465j5tFlHOMniXMpeqfcm1jMsXnM6jxQt4gkSRlGEt1CuKz5U9 zQBNjlzRBfCW/O67ms3C86liPRCUbyjQsy/2oEZreqqrPqs4Mi0lb3aQ1IiLCDvv+b0gGE KJ2P8wlnpcsOc+FyPp5NfCOCknC/MVRycXK0ZHWLj7DuzVze5jENoqPtkrf0svcRkUYJYw 64Z8i31G+AWETt1MiwEd8N3yriQOQo3/2afcZlyRIGp0It/pJ9Ooz3zgl6g8Bw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=SeTu05GL; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); 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" X-Migadu-Spam-Score: 7.72 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=SeTu05GL; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); 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" X-Migadu-Queue-Id: D989B42222 X-Spam-Score: 7.72 X-Migadu-Scanner: scn1.migadu.com X-TUID: IBj+2GfkHjDP Hi, Just to mention this report is somehow a duplicate of bug#40612 [1]. Maybe, they could be merged. WDYT? 1: On Wed, 31 Aug 2022 at 11:28, Ludovic Court=C3=A8s wrote: > I understand this is a source of confusion. It has to do with =E2=80=9Cg= rafts=E2=80=9D > (which themselves are about applying security updates): if substitutes > for a package are missing, Guix has a partial view of the dependency > graph, which is why it can only tell you about extra builds/downloads > later on in the process (it does report them, only later). > > (If you=E2=80=99re curious, see > for details.) Nice read! Quoting: [...] do a first pass lowering packages to derivations as if grafting was disabled, build all these derivations, and then do a second pass to determine which packages in the graph need to be grafted and to compute the relevant grafting derivation. [...] If we reify that second pass to the user interface code, it also addresses the user interface issue by allowing it to display, possibly, two build plans: the =E2=80=9Cungrafted=E2=80=9D one followed by the grafted one. Currently, these 2 plans are not well-exposed, IMHO. What it is expected (at least by me ;-)) when running =E2=80=9C--dry-run=E2=80=9D is t= o have a picture about what would going on. For example, --8<---------------cut here---------------start------------->8--- $ guix package -i opensurge --dry-run guix package: warning: Your Guix installation is 12 days old. guix package: warning: Consider running 'guix pull' followed by 'guix package -u' to get up-to-date packages and security updates. The following package would be installed: opensurge 0.5.2.1 substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0% substitute: updating substitutes from 'https://bordeaux.guix.gnu.org'... 10= 0.0% The following derivation would be built: /gnu/store/r89hmhbxwm3gs1jl2dhns7gnwvi2k6s1-opensurge-0.5.2.1.drv 42.1 MB would be downloaded --8<---------------cut here---------------end--------------->8--- What does it mean? Does it mean the substitute is missing? Or does it mean grafting is missing? Does it mean I am going to download 42.1MB and then a =E2=80=9Cquick=E2=80=9D application of grafts? Or does it mean = I am going to build from source the package and these 42.1MB correspond to source and build-time dependencies? When I run the option =E2=80=99--dry-run=E2=80=99, I accept to pay a bit mo= re and then compute as much as possible of derivations to have the most complete as possible graph to know beforehand and as accurately as possible: 1. what I need to download as substitutes 2. what I need to compile from source 3. what require grafts, e.g., require 1 graft for openal-1.20.1 ... require 4 grafts for sfml-2.5.1 ... require 6 grafts for mars-0.7.5.1.c855d04 ... Sometime, the plan looks exactly like that. Sometime, it is really confusing and you have unpleasant surprises when running it. Obviously, it is not as easy as it appears because of all the dynamic dependencies are not straightforward to track ahead of time. ;-) However, I also find the output of =E2=80=99--dry-run=E2=80=99 not enough r= eliable and I use a cross-finger* approach when I update. :-) Cheers, simon *cross-finger approach: Running Debian, I cross my fingers when I upgrade because many things can break and it is hard to roll back. Running Guix, I cross my fingers because the dry-run does not tell me some substitutes can be missing and then Guix automatically launches a local build=E2=80=A6 which often ends by=E2=80=A6 a build failure. Heh! No= free lunch. ;-)