From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ricardo Wurmus Subject: Re: on cabal revisions Date: Fri, 14 Jun 2019 22:12:23 +0200 Message-ID: <87blz0q63c.fsf@elephly.net> References: <87v9xbmmid.fsf@ngyro.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:53566) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hbsYp-0001RK-Nl for guix-devel@gnu.org; Fri, 14 Jun 2019 16:12:32 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hbsYo-0007C2-MU for guix-devel@gnu.org; Fri, 14 Jun 2019 16:12:31 -0400 Received: from sender4-of-o53.zoho.com ([136.143.188.53]:21327) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hbsYo-0007An-9A for guix-devel@gnu.org; Fri, 14 Jun 2019 16:12:30 -0400 In-reply-to: <87v9xbmmid.fsf@ngyro.com> 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" To: Timothy Sample Cc: guix-devel@gnu.org, Robert Vollmert Hi, >> What I=E2=80=99m imagining is something roughly like this: >> >> (source >> (origin >> (method url-fetch) >> (uri =E2=80=9Chttps://hackage.haskell.org/package-sources.tar.gz= =E2=80=9D)) >> (sha256 =E2=80=A6)) >> (origin >> (destination =E2=80=9Cpackage.cabal=E2=80=9D) >> (method url-fetch) >> (uri =E2=80=9Chttps://hackage.haskell.org/package/1.cabal=E2=80= =9D) >> (sha256 =E2=80=A6))) >> >> probably with some way to specify how the sources should be >> combined, by default unpacking over the previous result >> sequentially. Would that be possible? A good idea even? > > This makes sense, but I=E2=80=99m not sure it=E2=80=99s a common enough u= se case to > warrant a specialized interface. Besides these Cabal revisions, only a > handful of packages (that I=E2=80=99ve seen) need to download extra non-p= atch > stuff. One notorious class of packages that could benefit from a general mechanism like this: the TeX Live packages. They consist of various subsets of a big SVN repository. Currently, we pick an arbitrary directory of the SVN repository as the main source and add all the other locations as native inputs. I wanted to add a procedure that accepts multiple locations in the SVN repository, creates a union, and computes the single hash of the union. This would make the texlive-* packages a lot simpler. -- Ricardo