From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: Proposal: prefetch tarballs in a batch Date: Sun, 13 Apr 2014 00:44:02 +0200 Message-ID: <87bnw6yxql.fsf@gnu.org> References: <87ha6jkyv8.fsf@karetnikov.org> <877g7epico.fsf@gnu.org> <87wqf8prau.fsf@karetnikov.org> <87ha6blwii.fsf@gnu.org> <87d2gznysk.fsf@karetnikov.org> <87vbuqvpsc.fsf@gnu.org> <87ha62dtmh.fsf@karetnikov.org> <87vbuhbnn8.fsf@gnu.org> <87ioqe2tdg.fsf@karetnikov.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:4830:134:3::10]:50895) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WZ6eg-0000FX-KT for guix-devel@gnu.org; Sat, 12 Apr 2014 18:44:15 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WZ6eb-0004sC-Bb for guix-devel@gnu.org; Sat, 12 Apr 2014 18:44:10 -0400 Received: from hera.aquilenet.fr ([2a01:474::1]:53852) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WZ6eb-0004rx-4m for guix-devel@gnu.org; Sat, 12 Apr 2014 18:44:05 -0400 In-Reply-To: <87ioqe2tdg.fsf@karetnikov.org> (Nikita Karetnikov's message of "Sun, 13 Apr 2014 00:19:23 +0400") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Nikita Karetnikov Cc: guix-devel@gnu.org Nikita Karetnikov skribis: >>> 1. Should the recursion stop when =E2=80=98fixed-output-derivation?=E2= =80=99 returns #t? > >> I think so. In general fixed-output derivations are the things you >> would like to pre-fetch; so you would typically call =E2=80=98build-deri= vations=E2=80=99 >> on these to do the actual pre-fetching. > > Could you show a package with a fixed-output derivation? My current > implementation calls itself indefinitely because the base case is never > satisfied. Any =E2=80=9Corigin=E2=80=9D that has no patches/snippet is a fixed-output = derivation. But! There was a bug in =E2=80=98fixed-output-derivation?=E2=80=99 (which = was actually unused until now.) Fixed in 99e17dc: --8<---------------cut here---------------start------------->8--- scheme@(guile-user)> (package-source-derivation s (package-source wget)) $12 =3D # /gnu/store/qz9vm8802v6pi69ci2kgnvfivrkr085r-wget-1.15.tar.x= z 2d1e730> scheme@(guile-user)> (fixed-output-derivation? $12) $13 =3D #t --8<---------------cut here---------------end--------------->8--- Thanks! Ludo=E2=80=99.