From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id EEWjKP8j2F8BNAAA0tVLHw (envelope-from ) for ; Tue, 15 Dec 2020 02:48:31 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id UGHfI/8j2F98LQAAB5/wlQ (envelope-from ) for ; Tue, 15 Dec 2020 02:48:31 +0000 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 62BF894023D for ; Tue, 15 Dec 2020 02:48:31 +0000 (UTC) Received: from localhost ([::1]:44966 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kp0O6-0003CD-Bv for larch@yhetil.org; Mon, 14 Dec 2020 21:48:30 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:43734) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kp0Nr-0003C5-8g for guix-devel@gnu.org; Mon, 14 Dec 2020 21:48:15 -0500 Received: from world.peace.net ([64.112.178.59]:37474) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kp0Np-0003Bi-F6 for guix-devel@gnu.org; Mon, 14 Dec 2020 21:48:14 -0500 Received: from mhw by world.peace.net with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kp0Nn-0003Ki-NT; Mon, 14 Dec 2020 21:48:11 -0500 From: Mark H Weaver To: Greg Hogan , Tobias Geerinckx-Rice Subject: Re: Offline build failure In-Reply-To: References: <87y2i4j9z4.fsf@nckx> Date: Mon, 14 Dec 2020 21:47:21 -0500 Message-ID: <87ft47okdn.fsf@netris.org> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=64.112.178.59; envelope-from=mhw@netris.org; helo=world.peace.net X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: guix-devel@gnu.org Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Migadu-Flow: FLOW_IN X-Migadu-Spam-Score: -2.31 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-devel-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org X-Migadu-Queue-Id: 62BF894023D X-Spam-Score: -2.31 X-Migadu-Scanner: scn0.migadu.com X-TUID: Bjp7I8OzguiV Hi Greg, Greg Hogan writes: > For the Python-3.5.9 tarball the first version loads in the expected way. > The second tarball is restored to a new location: > > ---------------------------------------- > $ cp -a /gnu/store/f99fblkzb6ip268sg096shhs7wzjyp55-Python-3.5.9.tar.xz > Python-3.5.9.tar.xz > $ guix download Python-3.5.9.tar.xz > /gnu/store/f99fblkzb6ip268sg096shhs7wzjyp55-Python-3.5.9.tar.xz > 0jdh9pvx6m6lfz2liwvvhn7vks7qrysqgwn517fkpxb77b33fjn2 > > $ cp -a /gnu/store/nj79fxxl5wvnq7jpj2wgbx0591gkjw41-Python-3.5.9.tar.xz > Python-3.5.9.tar.xz > $ guix download Python-3.5.9.tar.xz > /gnu/store/9sa83nyjlm5dyhwys4imm1wa40mjaw1x-Python-3.5.9.tar.xz > 0rkn451qfz3gbni57la00a5fbgish9jmm5bmhmgmf223vxwya447 > ---------------------------------------- > > Since the tarball is not restored to the original location the guix build > command still attempts the download and fails the offline build. guix download will only work properly for the outputs of "fixed-output" derivations, i.e. derivations for which Guix knows, in advance, the sha256 hash of the resulting output. This roughly corresponds to store items that either downloaded or imported directly into the store from local files (e.g. patches). It will *not* work properly for the outputs of derivations that are computed somehow, where Guix does *not* know in advance the hash of the resulting output. In particular, it won't work properly for outputs that result from applying patches or snippets. My guess is that the second tarball above was the result of applying patches to the downloaded tarball. To copy arbitrary store items from one machine to another, you need "guix copy" or "guix archive". Regards, Mark