From unknown Mon Jun 23 04:15:26 2025 X-Loop: help-debbugs@gnu.org Subject: bug#18747: Fixed-output derivations are not substituted Resent-From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Thu, 16 Oct 2014 15:27:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 18747 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: 18747@debbugs.gnu.org X-Debbugs-Original-To: bug-guix@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.14134731744881 (code B ref -1); Thu, 16 Oct 2014 15:27:01 +0000 Received: (at submit) by debbugs.gnu.org; 16 Oct 2014 15:26:14 +0000 Received: from localhost ([127.0.0.1]:46103 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XemwP-0001Ge-R4 for submit@debbugs.gnu.org; Thu, 16 Oct 2014 11:26:14 -0400 Received: from eggs.gnu.org ([208.118.235.92]:48442) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XemwN-0001GU-Oy for submit@debbugs.gnu.org; Thu, 16 Oct 2014 11:26:12 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XemwJ-00006O-3t for submit@debbugs.gnu.org; Thu, 16 Oct 2014 11:26:11 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,T_RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:54170) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XemwJ-00006K-0j for submit@debbugs.gnu.org; Thu, 16 Oct 2014 11:26:07 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:50097) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XemwC-0005a2-0E for bug-guix@gnu.org; Thu, 16 Oct 2014 11:26:06 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Xemw7-0008Vl-KB for bug-guix@gnu.org; Thu, 16 Oct 2014 11:25:59 -0400 Received: from hera.aquilenet.fr ([2a01:474::1]:33399) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xemw7-0008Vc-Cs for bug-guix@gnu.org; Thu, 16 Oct 2014 11:25:55 -0400 Received: from localhost (localhost [127.0.0.1]) by hera.aquilenet.fr (Postfix) with ESMTP id 99B0B3DB2 for ; Thu, 16 Oct 2014 17:25:54 +0200 (CEST) Received: from hera.aquilenet.fr ([127.0.0.1]) by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id O0HfUZHYaKRk for ; Thu, 16 Oct 2014 17:25:54 +0200 (CEST) Received: from pluto (pluto.bordeaux.inria.fr [193.50.110.57]) by hera.aquilenet.fr (Postfix) with ESMTPSA id 62678EFE for ; Thu, 16 Oct 2014 17:25:54 +0200 (CEST) From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 25 =?UTF-8?Q?Vend=C3=A9miaire?= an 223 de la =?UTF-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0xEA52ECF4 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 83C4 F8E5 10A3 3B4C 5BEA D15D 77DD 95E2 EA52 ECF4 X-OS: x86_64-unknown-linux-gnu Date: Thu, 16 Oct 2014 17:26:03 +0200 Message-ID: <87h9z4594k.fsf@gnu.org> User-Agent: Gnus/5.130011 (Ma Gnus v0.11) Emacs/24.3 (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: Error: Malformed IPv6 address (bad octet value). X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -5.0 (-----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 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: -5.0 (-----) With current =E2=80=98master=E2=80=99, fixed-output derivations are not sub= stituted, even though a substitute is available: --8<---------------cut here---------------start------------->8--- $ guix build -S acct The following file will be downloaded: /gnu/store/0sszdqmiqmb4mzbgs8h2185fh7p8bfd2-acct-6.6.1.tar.gz @ build-started /gnu/store/b7c2lgbdnr5anzklxkzhjvqxl14n7cqp-acct-6.6.1.tar.= gz.drv - x86_64-linux /var/log/guix/drvs/b7//c2lgbdnr5anzklxkzhjvqxl14n7cqp= -acct-6.6.1.tar.gz.drv.bz2 starting download of `/gnu/store/0sszdqmiqmb4mzbgs8h2185fh7p8bfd2-acct-6.6.= 1.tar.gz' from `http://ftpmirror.gnu.org/acct/acct-6.6.1.tar.gz'... following redirection to `http://gnu.cardse.net/acct/acct-6.6.1.tar.gz'... http://gnu.cardse.net/.../acct-6.6.1.tar.gz 100.0% of 2802.4 KiB @ build-succeeded /gnu/store/b7c2lgbdnr5anzklxkzhjvqxl14n7cqp-acct-6.6.1.ta= r.gz.drv - /gnu/store/0sszdqmiqmb4mzbgs8h2185fh7p8bfd2-acct-6.6.1.tar.gz $ sudo cat /var/guix/substitute-binary/cache/0sszdqmiqmb4mzbgs8h2185fh7p8bf= d2 (narinfo (version 1) (cache-uri "http://hydra.gnu.org") (date 1413472751) (= value "StorePath:... $ guix build -S libwebsockets The following file will be downloaded: /gnu/store/1k4c1a6nckhm2hjpprvdrlkxx6yifclw-libwebsockets-1.3 @ build-started /gnu/store/8x0jgw0819l7aqi1k1f6i772skmwq1zq-libwebsockets-1= .3.drv - x86_64-linux /var/log/guix/drvs/8x//0jgw0819l7aqi1k1f6i772skmwq1zq= -libwebsockets-1.3.drv.bz2 Cloning into '/gnu/store/1k4c1a6nckhm2hjpprvdrlkxx6yifclw-libwebsockets-1.3= '... C-c C-c $ sudo cat /var/guix/substitute-binary/cache/1k4c1a6nckhm2hjpprvdrlkxx6yifc= lw (narinfo (version 1) (cache-uri "http://hydra.gnu.org") (date 1413466633) (= value "StorePath:... --8<---------------cut here---------------end--------------->8--- Here, =E2=80=9CThe following file will be downloaded=E2=80=9D means that a = substitute is found and will be used, as seen also in the cache. But then we find ourselves performing the derivation locally regardless. Ludo=E2=80=99. From unknown Mon Jun 23 04:15:26 2025 X-Loop: help-debbugs@gnu.org Subject: bug#18747: Fixed-output derivations are not substituted Resent-From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Thu, 16 Oct 2014 15:44:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 18747 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: 18747@debbugs.gnu.org Received: via spool by 18747-submit@debbugs.gnu.org id=B18747.14134741996654 (code B ref 18747); Thu, 16 Oct 2014 15:44:01 +0000 Received: (at 18747) by debbugs.gnu.org; 16 Oct 2014 15:43:19 +0000 Received: from localhost ([127.0.0.1]:46125 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XenCx-0001jG-6k for submit@debbugs.gnu.org; Thu, 16 Oct 2014 11:43:19 -0400 Received: from hera.aquilenet.fr ([141.255.128.1]:53932) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XenCv-0001j6-4y for 18747@debbugs.gnu.org; Thu, 16 Oct 2014 11:43:17 -0400 Received: from localhost (localhost [127.0.0.1]) by hera.aquilenet.fr (Postfix) with ESMTP id B2B123DB2 for <18747@debbugs.gnu.org>; Thu, 16 Oct 2014 17:43:15 +0200 (CEST) Received: from hera.aquilenet.fr ([127.0.0.1]) by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id vTjEPygolhD2 for <18747@debbugs.gnu.org>; Thu, 16 Oct 2014 17:43:15 +0200 (CEST) Received: from pluto (pluto.bordeaux.inria.fr [193.50.110.57]) by hera.aquilenet.fr (Postfix) with ESMTPSA id 7DB49EFE for <18747@debbugs.gnu.org>; Thu, 16 Oct 2014 17:43:15 +0200 (CEST) From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) References: <87h9z4594k.fsf@gnu.org> Date: Thu, 16 Oct 2014 17:43:23 +0200 In-Reply-To: <87h9z4594k.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Thu, 16 Oct 2014 17:26:03 +0200") Message-ID: <874mv458bo.fsf@gnu.org> User-Agent: Gnus/5.130011 (Ma Gnus v0.11) Emacs/24.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 1.0 (+) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 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: 1.0 (+) I just realized that this is fixed by just removing #:local-build? #t from (guix download). Initially #:local-build? (aka. =E2=80=98preferLocalBuild=E2=80=99) meant = =E2=80=9Cavoid offloading this derivation=E2=80=9D, but Nix commit 55586527 (June 2013) ch= anged it to =E2=80=9Cavoid offloading *or substituting* this derivation=E2=80=9D,= which I somehow overlooked for all this time. I think we to distinguish between whether to offload and whether to substitute. Typically, we don=E2=80=99t want to offload downloads, because that=E2=80=99s inefficient. However, we may want to substitute downloads, because then if the upstream download URL has become invalid, we can still get the substitute from hydra.gnu.org. Until then, I think I=E2=80=99ll just comment out #:local-build? #t in (guix download) and friends. Thoughts? Thanks, Ludo=E2=80=99. From unknown Mon Jun 23 04:15:26 2025 X-Loop: help-debbugs@gnu.org Subject: bug#18747: Fixed-output derivations are not substituted Resent-From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Thu, 16 Oct 2014 15:47:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 18747 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: 18747@debbugs.gnu.org Received: via spool by 18747-submit@debbugs.gnu.org id=B18747.14134743727019 (code B ref 18747); Thu, 16 Oct 2014 15:47:01 +0000 Received: (at 18747) by debbugs.gnu.org; 16 Oct 2014 15:46:12 +0000 Received: from localhost ([127.0.0.1]:46133 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XenFj-0001p9-GX for submit@debbugs.gnu.org; Thu, 16 Oct 2014 11:46:12 -0400 Received: from hera.aquilenet.fr ([141.255.128.1]:53944) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XenFh-0001p0-IH for 18747@debbugs.gnu.org; Thu, 16 Oct 2014 11:46:09 -0400 Received: from localhost (localhost [127.0.0.1]) by hera.aquilenet.fr (Postfix) with ESMTP id 03A943DB7 for <18747@debbugs.gnu.org>; Thu, 16 Oct 2014 17:46:09 +0200 (CEST) Received: from hera.aquilenet.fr ([127.0.0.1]) by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id YBAh+irhefSM for <18747@debbugs.gnu.org>; Thu, 16 Oct 2014 17:46:08 +0200 (CEST) Received: from pluto (pluto.bordeaux.inria.fr [193.50.110.57]) by hera.aquilenet.fr (Postfix) with ESMTPSA id D1207EFE for <18747@debbugs.gnu.org>; Thu, 16 Oct 2014 17:46:08 +0200 (CEST) From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) References: <87h9z4594k.fsf@gnu.org> <874mv458bo.fsf@gnu.org> Date: Thu, 16 Oct 2014 17:46:18 +0200 In-Reply-To: <874mv458bo.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Thu, 16 Oct 2014 17:43:23 +0200") Message-ID: <87lhog3tmd.fsf@gnu.org> User-Agent: Gnus/5.130011 (Ma Gnus v0.11) Emacs/24.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 1.0 (+) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 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: 1.0 (+) ludo@gnu.org (Ludovic Court=C3=A8s) skribis: > Initially #:local-build? (aka. =E2=80=98preferLocalBuild=E2=80=99) meant = =E2=80=9Cavoid > offloading this derivation=E2=80=9D, but Nix commit 55586527 (June 2013) = changed > it to =E2=80=9Cavoid offloading *or substituting* this derivation=E2=80= =9D, which I > somehow overlooked for all this time. The relevant code is in libstore/build.cc: --8<---------------cut here---------------start------------->8--- /* We are first going to try to create the invalid output paths through substitutes. If that doesn't work, we'll build them. */ if (settings.useSubstitutes && !willBuildLocally(drv)) foreach (PathSet::iterator, i, invalidOutputs) addWaitee(worker.makeSubstitutionGoal(*i, buildMode =3D=3D bmRe= pair)); --8<---------------cut here---------------end--------------->8--- Ludo=E2=80=99. From unknown Mon Jun 23 04:15:26 2025 X-Loop: help-debbugs@gnu.org Subject: bug#18747: [PATCH] Distinguish between =?UTF-8?Q?=E2=80=9Coffloadability=E2=80=9D?= and =?UTF-8?Q?=E2=80=9Csubstitutability=E2=80=9D?= Resent-From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Wed, 01 Jul 2015 15:23:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 18747 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: 18747@debbugs.gnu.org, Eelco Dolstra Cc: nix-dev@lists.science.uu.nl Received: via spool by 18747-submit@debbugs.gnu.org id=B18747.14357641432674 (code B ref 18747); Wed, 01 Jul 2015 15:23:02 +0000 Received: (at 18747) by debbugs.gnu.org; 1 Jul 2015 15:22:23 +0000 Received: from localhost ([127.0.0.1]:36178 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZAJqA-0000h3-MF for submit@debbugs.gnu.org; Wed, 01 Jul 2015 11:22:23 -0400 Received: from eggs.gnu.org ([208.118.235.92]:50338) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZAJq8-0000gl-6X for 18747@debbugs.gnu.org; Wed, 01 Jul 2015 11:22:20 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZAJpy-00042C-IJ for 18747@debbugs.gnu.org; Wed, 01 Jul 2015 11:22:14 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.1 required=5.0 tests=BAYES_05,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:46023) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZAJpn-0003yq-5o; Wed, 01 Jul 2015 11:21:59 -0400 Received: from nocat-out.u-bordeaux.fr ([147.210.179.68]:42663 helo=pluto) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1ZAJpm-0004Vw-9V; Wed, 01 Jul 2015 11:21:58 -0400 From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) References: <87h9z4594k.fsf@gnu.org> <874mv458bo.fsf@gnu.org> <87lhog3tmd.fsf@gnu.org> Date: Wed, 01 Jul 2015 17:21:51 +0200 In-Reply-To: <87lhog3tmd.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Thu, 16 Oct 2014 17:46:18 +0200") Message-ID: <87d20boqcw.fsf_-_@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.6 (-----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 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: -5.6 (-----) --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi again, Nix commit 55586527 (June 2013) changed the semantics of =E2=80=98preferLocalBuild=E2=80=99 from =E2=80=9Cavoid offloading this deri= vation=E2=80=9D to =E2=80=9Cavoid offloading *or substituting* this derivation=E2=80=9D (see .) This patch introduces a new special key, =E2=80=98substitution=E2=80=99, to= specify whether a derivation should be substituted. =E2=80=98preferLocalBuild=E2= =80=99 is kept, but its initial semantics is restored. As a consequence, existing uses of =E2=80=98preferLocalBuild=E2=80=99 must = be audited to check what exactly is intended. WDYT? Thanks, Ludo=E2=80=99. --=-=-= Content-Type: text/x-patch Content-Disposition: inline diff --git a/nix/libstore/misc.cc b/nix/libstore/misc.cc index 6ecf878..bdb7a6d 100644 --- a/nix/libstore/misc.cc +++ b/nix/libstore/misc.cc @@ -67,6 +67,15 @@ Path findOutput(const Derivation & drv, string id) } +/* Return true if we are allowed to substitute DRV. This is the case, unless + DRV specifies 'substitution = "0"' in its environment. */ +static bool substitutionAllowed(const Derivation & drv) +{ + auto env = drv.env; + auto i = env.find("substitution"); + return i == env.end() || i->second != "0"; +} + void queryMissing(StoreAPI & store, const PathSet & targets, PathSet & willBuild, PathSet & willSubstitute, PathSet & unknown, unsigned long long & downloadSize, unsigned long long & narSize) @@ -120,7 +129,7 @@ void queryMissing(StoreAPI & store, const PathSet & targets, if (invalid.empty()) continue; todoDrv.insert(*i); - if (settings.useSubstitutes && !willBuildLocally(drv)) + if (settings.useSubstitutes && substitutionAllowed(drv)) query.insert(invalid.begin(), invalid.end()); } @@ -144,7 +153,7 @@ void queryMissing(StoreAPI & store, const PathSet & targets, PathSet outputs; bool mustBuild = false; - if (settings.useSubstitutes && !willBuildLocally(drv)) { + if (settings.useSubstitutes && substitutionAllowed(drv)) { foreach (DerivationOutputs::iterator, j, drv.outputs) { if (!wantOutput(j->first, i2.second)) continue; if (!store.isValidPath(j->second.path)) { --=-=-=-- From unknown Mon Jun 23 04:15:26 2025 X-Loop: help-debbugs@gnu.org Subject: bug#18747: [PATCH] Distinguish between =?UTF-8?Q?=E2=80=9Coffloadability=E2=80=9D?= and =?UTF-8?Q?=E2=80=9Csubstitutability=E2=80=9D?= Resent-From: Eelco Dolstra Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Wed, 01 Jul 2015 15:31:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 18747 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: Ludovic =?UTF-8?Q?Court=C3=A8s?= , 18747@debbugs.gnu.org Cc: nix-dev@lists.science.uu.nl Received: via spool by 18747-submit@debbugs.gnu.org id=B18747.14357646143489 (code B ref 18747); Wed, 01 Jul 2015 15:31:02 +0000 Received: (at 18747) by debbugs.gnu.org; 1 Jul 2015 15:30:14 +0000 Received: from localhost ([127.0.0.1]:36207 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZAJxk-0000u7-HO for submit@debbugs.gnu.org; Wed, 01 Jul 2015 11:30:13 -0400 Received: from mail-wg0-f45.google.com ([74.125.82.45]:36045) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZAJun-0000oz-64 for 18747@debbugs.gnu.org; Wed, 01 Jul 2015 11:27:10 -0400 Received: by wguu7 with SMTP id u7so40002016wgu.3 for <18747@debbugs.gnu.org>; Wed, 01 Jul 2015 08:27:03 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to :cc:subject:references:in-reply-to:content-type :content-transfer-encoding; bh=ii7ftUHgyefcfn7VAflTx6YjM14IL25aeWEAVZE5LT0=; b=iVca8mnx1dA76WZz/REBkNSJdE9Yx/1hE4dS/+ViEAYXkW1mFATTqzIrVMmzYC5eCf cTtybkFH/+khGKedHmIXxMARrsunnEYt+s/y5UFM6a1hKAn++GtNQRfuTP3QsFGLWkob Zul1z37QXpq1zVIjo9BdjySXolqq1cShz9KFZ5h1hkJy6TBFaZAWy3d7yLRYy5EZ705H 8BZGf0tDD640jpXrCUmsKGQzTlfkr8QmdEozOmQLIYFZ0ZxnTQQ/WxqnUy6gSp8mSjAT 7cA7e5ooj071n5Q9KD4xCoFmdVPXC0SWL1Ajwug1sXIh/MkuOMaisD6s9n5lLf8SaDck /QnQ== X-Gm-Message-State: ALoCoQnWav4GsSTqtbFjuU05ceDA/BjdVjtw5QcTMdKTy/VZb9hpuTHOKcuo2hLJUTtJgdv1jaLH X-Received: by 10.180.91.107 with SMTP id cd11mr6973676wib.51.1435764423531; Wed, 01 Jul 2015 08:27:03 -0700 (PDT) Received: from [192.168.178.12] (53577C27.cm-6-8b.dynamic.ziggo.nl. [83.87.124.39]) by mx.google.com with ESMTPSA id lj14sm3948839wic.18.2015.07.01.08.27.02 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 01 Jul 2015 08:27:02 -0700 (PDT) Message-ID: <559406C6.7040209@logicblox.com> Date: Wed, 01 Jul 2015 17:27:02 +0200 From: Eelco Dolstra User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 MIME-Version: 1.0 References: <87h9z4594k.fsf@gnu.org> <874mv458bo.fsf@gnu.org> <87lhog3tmd.fsf@gnu.org> <87d20boqcw.fsf_-_@gnu.org> In-Reply-To: <87d20boqcw.fsf_-_@gnu.org> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.0 (/) X-Mailman-Approved-At: Wed, 01 Jul 2015 11:30:06 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 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: -0.0 (/) Hi, On 01/07/15 17:21, Ludovic Courtès wrote: > Nix commit 55586527 (June 2013) changed the semantics of > ‘preferLocalBuild’ from “avoid offloading this derivation” to “avoid > offloading *or substituting* this derivation” (see > .) > > This patch introduces a new special key, ‘substitution’, to specify > whether a derivation should be substituted. ‘preferLocalBuild’ is kept, > but its initial semantics is restored. Have you seen https://github.com/NixOS/nix/commit/b64988bb3585478676585a0f0aecbcf4e11d4432, which essentially does the same thing? -- Eelco Dolstra | LogicBlox, Inc. | http://nixos.org/~eelco/ From unknown Mon Jun 23 04:15:26 2025 X-Loop: help-debbugs@gnu.org Subject: bug#18747: [PATCH] Distinguish between =?UTF-8?Q?=E2=80=9Coffloadability=E2=80=9D?= and =?UTF-8?Q?=E2=80=9Csubstitutability=E2=80=9D?= Resent-From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Wed, 01 Jul 2015 21:15:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 18747 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: Eelco Dolstra Cc: 18747@debbugs.gnu.org, nix-dev@lists.science.uu.nl Received: via spool by 18747-submit@debbugs.gnu.org id=B18747.143578530028877 (code B ref 18747); Wed, 01 Jul 2015 21:15:03 +0000 Received: (at 18747) by debbugs.gnu.org; 1 Jul 2015 21:15:00 +0000 Received: from localhost ([127.0.0.1]:36461 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZAPLP-0007Vh-Vu for submit@debbugs.gnu.org; Wed, 01 Jul 2015 17:15:00 -0400 Received: from eggs.gnu.org ([208.118.235.92]:55461) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZAPLO-0007VU-Dj for 18747@debbugs.gnu.org; Wed, 01 Jul 2015 17:14:58 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZAPLI-0008VN-DD for 18747@debbugs.gnu.org; Wed, 01 Jul 2015 17:14:53 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-3.5 required=5.0 tests=ALL_TRUSTED,BAYES_00, RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([208.118.235.10]:51857) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZAPLE-0008SC-MY; Wed, 01 Jul 2015 17:14:48 -0400 Received: from reverse-83.fdn.fr ([80.67.176.83]:37198 helo=pluto) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1ZAPLE-00076a-2k; Wed, 01 Jul 2015 17:14:48 -0400 From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) References: <87h9z4594k.fsf@gnu.org> <874mv458bo.fsf@gnu.org> <87lhog3tmd.fsf@gnu.org> <87d20boqcw.fsf_-_@gnu.org> <559406C6.7040209@logicblox.com> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 13 Messidor an 223 de la =?UTF-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0x3D9AEBB5 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, 01 Jul 2015 23:14:43 +0200 In-Reply-To: <559406C6.7040209@logicblox.com> (Eelco Dolstra's message of "Wed, 01 Jul 2015 17:27:02 +0200") Message-ID: <877fqjmvgc.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (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: 208.118.235.10 X-Spam-Score: -5.6 (-----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 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: -5.6 (-----) Eelco Dolstra skribis: > On 01/07/15 17:21, Ludovic Court=C3=A8s wrote: > >> Nix commit 55586527 (June 2013) changed the semantics of >> =E2=80=98preferLocalBuild=E2=80=99 from =E2=80=9Cavoid offloading this d= erivation=E2=80=9D to =E2=80=9Cavoid >> offloading *or substituting* this derivation=E2=80=9D (see >> .) >>=20 >> This patch introduces a new special key, =E2=80=98substitution=E2=80=99,= to specify >> whether a derivation should be substituted. =E2=80=98preferLocalBuild= =E2=80=99 is kept, >> but its initial semantics is restored. > > Have you seen > https://github.com/NixOS/nix/commit/b64988bb3585478676585a0f0aecbcf4e11d4= 432, > which essentially does the same thing? I hadn=E2=80=99t, but that=E2=80=99s perfect=E2=80=93we=E2=80=99re on the s= ame page. ;-) Thanks! Ludo=E2=80=99. From unknown Mon Jun 23 04:15:26 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.503 (Entity 5.503) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Subject: bug#18747: closed (Re: bug#18747: Fixed-output derivations are not substituted) Message-ID: References: <87bnfuw5p1.fsf@gnu.org> <87h9z4594k.fsf@gnu.org> X-Gnu-PR-Message: they-closed 18747 X-Gnu-PR-Package: guix Reply-To: 18747@debbugs.gnu.org Date: Thu, 02 Jul 2015 22:34:03 +0000 Content-Type: multipart/mixed; boundary="----------=_1435876443-30088-1" This is a multi-part message in MIME format... ------------=_1435876443-30088-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #18747: "preferLocalBuild" fails to distinguish between offload and substit= ute which was filed against the guix package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 18747@debbugs.gnu.org. --=20 18747: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D18747 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1435876443-30088-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 18747-done) by debbugs.gnu.org; 2 Jul 2015 22:33:28 +0000 Received: from localhost ([127.0.0.1]:38001 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZAn2u-0007oX-Dw for submit@debbugs.gnu.org; Thu, 02 Jul 2015 18:33:28 -0400 Received: from eggs.gnu.org ([208.118.235.92]:47512) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZAn2r-0007oK-Gb for 18747-done@debbugs.gnu.org; Thu, 02 Jul 2015 18:33:26 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZAn2j-00014t-94 for 18747-done@debbugs.gnu.org; Thu, 02 Jul 2015 18:33:20 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-3.5 required=5.0 tests=ALL_TRUSTED,BAYES_00, RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([208.118.235.10]:45704) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZAn2j-00014p-6d for 18747-done@debbugs.gnu.org; Thu, 02 Jul 2015 18:33:17 -0400 Received: from reverse-83.fdn.fr ([80.67.176.83]:44835 helo=pluto) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1ZAn2i-0007Pd-MH for 18747-done@debbugs.gnu.org; Thu, 02 Jul 2015 18:33:17 -0400 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: 18747-done@debbugs.gnu.org Subject: Re: bug#18747: Fixed-output derivations are not substituted References: <87h9z4594k.fsf@gnu.org> <874mv458bo.fsf@gnu.org> <87lhog3tmd.fsf@gnu.org> Date: Fri, 03 Jul 2015 00:33:14 +0200 In-Reply-To: <87lhog3tmd.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Thu, 16 Oct 2014 17:46:18 +0200") Message-ID: <87bnfuw5p1.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (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: 208.118.235.10 X-Spam-Score: -5.6 (-----) X-Debbugs-Envelope-To: 18747-done X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 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: -5.6 (-----) Fixed in 4a6aeb6. Note that there are still a few cases, in guix/*download.scm, where we haven=E2=80=99t yet reintroduced #:local-build? #t. We=E2=80=99ll do that = when daemons with the fix are more widely deployed. Ludo=E2=80=99. ------------=_1435876443-30088-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 16 Oct 2014 15:26:14 +0000 Received: from localhost ([127.0.0.1]:46103 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XemwP-0001Ge-R4 for submit@debbugs.gnu.org; Thu, 16 Oct 2014 11:26:14 -0400 Received: from eggs.gnu.org ([208.118.235.92]:48442) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XemwN-0001GU-Oy for submit@debbugs.gnu.org; Thu, 16 Oct 2014 11:26:12 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XemwJ-00006O-3t for submit@debbugs.gnu.org; Thu, 16 Oct 2014 11:26:11 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,T_RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:54170) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XemwJ-00006K-0j for submit@debbugs.gnu.org; Thu, 16 Oct 2014 11:26:07 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:50097) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XemwC-0005a2-0E for bug-guix@gnu.org; Thu, 16 Oct 2014 11:26:06 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Xemw7-0008Vl-KB for bug-guix@gnu.org; Thu, 16 Oct 2014 11:25:59 -0400 Received: from hera.aquilenet.fr ([2a01:474::1]:33399) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xemw7-0008Vc-Cs for bug-guix@gnu.org; Thu, 16 Oct 2014 11:25:55 -0400 Received: from localhost (localhost [127.0.0.1]) by hera.aquilenet.fr (Postfix) with ESMTP id 99B0B3DB2 for ; Thu, 16 Oct 2014 17:25:54 +0200 (CEST) Received: from hera.aquilenet.fr ([127.0.0.1]) by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id O0HfUZHYaKRk for ; Thu, 16 Oct 2014 17:25:54 +0200 (CEST) Received: from pluto (pluto.bordeaux.inria.fr [193.50.110.57]) by hera.aquilenet.fr (Postfix) with ESMTPSA id 62678EFE for ; Thu, 16 Oct 2014 17:25:54 +0200 (CEST) From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: bug-guix@gnu.org Subject: Fixed-output derivations are not substituted X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 25 =?utf-8?Q?Vend=C3=A9miaire?= an 223 de la =?utf-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0xEA52ECF4 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 83C4 F8E5 10A3 3B4C 5BEA D15D 77DD 95E2 EA52 ECF4 X-OS: x86_64-unknown-linux-gnu Date: Thu, 16 Oct 2014 17:26:03 +0200 Message-ID: <87h9z4594k.fsf@gnu.org> User-Agent: Gnus/5.130011 (Ma Gnus v0.11) Emacs/24.3 (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: Error: Malformed IPv6 address (bad octet value). X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 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: -5.0 (-----) With current =E2=80=98master=E2=80=99, fixed-output derivations are not sub= stituted, even though a substitute is available: --8<---------------cut here---------------start------------->8--- $ guix build -S acct The following file will be downloaded: /gnu/store/0sszdqmiqmb4mzbgs8h2185fh7p8bfd2-acct-6.6.1.tar.gz @ build-started /gnu/store/b7c2lgbdnr5anzklxkzhjvqxl14n7cqp-acct-6.6.1.tar.= gz.drv - x86_64-linux /var/log/guix/drvs/b7//c2lgbdnr5anzklxkzhjvqxl14n7cqp= -acct-6.6.1.tar.gz.drv.bz2 starting download of `/gnu/store/0sszdqmiqmb4mzbgs8h2185fh7p8bfd2-acct-6.6.= 1.tar.gz' from `http://ftpmirror.gnu.org/acct/acct-6.6.1.tar.gz'... following redirection to `http://gnu.cardse.net/acct/acct-6.6.1.tar.gz'... http://gnu.cardse.net/.../acct-6.6.1.tar.gz 100.0% of 2802.4 KiB @ build-succeeded /gnu/store/b7c2lgbdnr5anzklxkzhjvqxl14n7cqp-acct-6.6.1.ta= r.gz.drv - /gnu/store/0sszdqmiqmb4mzbgs8h2185fh7p8bfd2-acct-6.6.1.tar.gz $ sudo cat /var/guix/substitute-binary/cache/0sszdqmiqmb4mzbgs8h2185fh7p8bf= d2 (narinfo (version 1) (cache-uri "http://hydra.gnu.org") (date 1413472751) (= value "StorePath:... $ guix build -S libwebsockets The following file will be downloaded: /gnu/store/1k4c1a6nckhm2hjpprvdrlkxx6yifclw-libwebsockets-1.3 @ build-started /gnu/store/8x0jgw0819l7aqi1k1f6i772skmwq1zq-libwebsockets-1= .3.drv - x86_64-linux /var/log/guix/drvs/8x//0jgw0819l7aqi1k1f6i772skmwq1zq= -libwebsockets-1.3.drv.bz2 Cloning into '/gnu/store/1k4c1a6nckhm2hjpprvdrlkxx6yifclw-libwebsockets-1.3= '... C-c C-c $ sudo cat /var/guix/substitute-binary/cache/1k4c1a6nckhm2hjpprvdrlkxx6yifc= lw (narinfo (version 1) (cache-uri "http://hydra.gnu.org") (date 1413466633) (= value "StorePath:... --8<---------------cut here---------------end--------------->8--- Here, =E2=80=9CThe following file will be downloaded=E2=80=9D means that a = substitute is found and will be used, as seen also in the cache. But then we find ourselves performing the derivation locally regardless. Ludo=E2=80=99. ------------=_1435876443-30088-1--