From unknown Thu Jun 12 08:36:32 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#38203 <38203@debbugs.gnu.org> To: bug#38203 <38203@debbugs.gnu.org> Subject: Status: "make as-derivation" no longer uses the checked-out branch Reply-To: bug#38203 <38203@debbugs.gnu.org> Date: Thu, 12 Jun 2025 15:36:32 +0000 retitle 38203 "make as-derivation" no longer uses the checked-out branch reassign 38203 guix submitter 38203 Mark H Weaver severity 38203 normal thanks From debbugs-submit-bounces@debbugs.gnu.org Thu Nov 14 00:12:40 2019 Received: (at submit) by debbugs.gnu.org; 14 Nov 2019 05:12:41 +0000 Received: from localhost ([127.0.0.1]:60591 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iV7Qu-0007ol-H4 for submit@debbugs.gnu.org; Thu, 14 Nov 2019 00:12:40 -0500 Received: from lists.gnu.org ([209.51.188.17]:55263) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iV7Qp-0007oZ-KP for submit@debbugs.gnu.org; Thu, 14 Nov 2019 00:12:39 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:49275) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iV7Qo-0003hg-44 for bug-guix@gnu.org; Thu, 14 Nov 2019 00:12:35 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,URIBL_BLOCKED, WEIRD_QUOTING autolearn=disabled version=3.3.2 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iV7Qm-0004te-LX for bug-guix@gnu.org; Thu, 14 Nov 2019 00:12:33 -0500 Received: from world.peace.net ([64.112.178.59]:51206) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iV7Qm-0004s6-Gt for bug-guix@gnu.org; Thu, 14 Nov 2019 00:12:32 -0500 Received: from mhw by world.peace.net with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1iV7Qk-0007Vx-3U; Thu, 14 Nov 2019 00:12:30 -0500 From: Mark H Weaver To: bug-guix@gnu.org Subject: "make as-derivation" no longer uses the checked-out branch Date: Thu, 14 Nov 2019 00:11:24 -0500 Message-ID: <8736er82js.fsf@netris.org> MIME-Version: 1.0 Content-Type: text/plain X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 64.112.178.59 X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit 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: -2.3 (--) First, some relevant background: I use 'guix' in an unusual way. I *never* run "guix pull". My ~/.config/guix directories are empty for all accounts. I always run 'guix' using './pre-inst-env' from a git checkout of my private branch. I build everything locally, and never use substitutes. My /etc/guix/acl has no keys, i.e. it contains "(acl)\n". My guix-daemon command-line includes: --no-substitutes --substitute-urls "" --gc-keep-derivations=yes --gc-keep-outputs=yes. A few times a year, I run "make as-derivation" and register GC roots to the resulting 'guix', to ensure that I always have a working copy of 'guix' from my private branch. I just tried to run "make as-derivation" for the first time since 21 Aug 2019, and it started to rebuild the world. It built bash-5.0.tar.xz, bison-3.4.1, flex-2.6.4, linux-libre-headers-4.19.56, and had started building glibc-intermediate-2.29 before I aborted it. It's surely relevant that my private branch includes the following commit, which is *not* on the master branch on Savannah: https://git.savannah.gnu.org/cgit/guix.git/commit/?h=core-updates&id=567cca260d54a4515097ff3f2dc277d10ceaf613 That commit unconditionally configures PGRP_PIPE for 'bash' on systems based on Linux (the kernel). That explains why the first thing built by "make as-derivation" was 'bash-5.0.tar.xz', but one without 'bash-linux-pgrp-pipe.patch', which is added by the above commit. Here's the derivation of the 'bash-5.0.tar.xz' built by "make as-derivation", formatted for readability: Derive([("out","/gnu/store/qpdpx2bd7wkcq0ndrp8m239w0hn5ib65-bash-5.0.tar.xz","","")], [("/gnu/store/07s3hslvih2wcy82a86i0mqk4vfp7lzz-bash50-002.drv",["out"]), ("/gnu/store/20s0n9jk6bjjl0bhhrmmjf79l3x9617h-bash50-005.drv",["out"]), ("/gnu/store/2i16ilici4y88pi7dysixk0mrrj57i2b-bash50-006.drv",["out"]), ("/gnu/store/6i0mn13pf7aw2dfxwrcdmdn0qccfqqkp-bash50-004.drv",["out"]), ("/gnu/store/7wqw4023spvggi15vcxyxvivxa4rmmv8-bootstrap-binaries-0.drv",["out"]), ("/gnu/store/b83bnh1xbbdsksns5a985y96mjg5x428-bash50-007.drv",["out"]), ("/gnu/store/cb7vcizsqc6m9nz0l0ziwwgiqi30hk1b-bash-5.0.tar.gz.drv",["out"]), ("/gnu/store/ms9j8g5cnm7ddwlc21lpd5xwiy8r717l-bash50-003.drv",["out"]), ("/gnu/store/piknghl5jc0pbjipwrrvwp5m03vppky2-bash50-001.drv",["out"]), ("/gnu/store/sbsq9bzfi41a52x50gpv6dl6plyb9kc3-guile-bootstrap-2.0.drv",["out"]), ("/gnu/store/xf24mqzdq0qj72mzalqbjdia9hmxn7wv-module-import-compiled.drv",["out"])], ["/gnu/store/knmq971a84fbczaz120rwpfx24333zhs-module-import", "/gnu/store/xcxaka53s5v88y7my1pwg2cz0fyrn6a5-bash-5.0.tar.xz-builder"], "x86_64-linux", "/gnu/store/lgi9x15a0w35mcpd7g1kb9274r6wy4pv-guile-bootstrap-2.0/bin/guile", ["--no-auto-compile", "-L", "/gnu/store/knmq971a84fbczaz120rwpfx24333zhs-module-import", "-C", "/gnu/store/5zk5949lgby9k3f3d5f3rdv2dqkyqkpf-module-import-compiled", "/gnu/store/xcxaka53s5v88y7my1pwg2cz0fyrn6a5-bash-5.0.tar.xz-builder"], [("guix properties","((type . origin) (patches . 7))"), ("out","/gnu/store/qpdpx2bd7wkcq0ndrp8m239w0hn5ib65-bash-5.0.tar.xz")]) Notably missing from the derivation's inputs above is 'bash-linux-pgrp-pipe.patch'. It looks as though "make as-derivation" is now using packages from the 'master' branch instead of from my private branch, which I have checked out in the build directory where I ran "make as-derivation". I guess the most likely reason that would have happened is because it used the 'guix' from my system profile (which is based on vanilla 'master') instead of the 'guix' from my PATH, which is a small shell script that runs the 'guix' from my git checkout using ./pre-inst-env. Historically, I have sometimes had similar patches on my private branch, and yet "make as-derivation" has not rebuilt the world. Has something changed since August 21st that might have affected this? Thanks, Mark