From mboxrd@z Thu Jan 1 00:00:00 1970 From: Timothy Sample Subject: Re: Haskell dependencies for custom cabal builds Date: Tue, 12 Feb 2019 11:06:18 -0500 Message-ID: <87r2cd9ekl.fsf@ngyro.com> References: <87imxqaxic.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 ([209.51.188.92]:58696) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gtaiw-0004xl-Pf for guix-devel@gnu.org; Tue, 12 Feb 2019 11:15:58 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gtaa8-0000HR-OP for guix-devel@gnu.org; Tue, 12 Feb 2019 11:06:52 -0500 Received: from out2-smtp.messagingengine.com ([66.111.4.26]:60109) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gtaZu-00089W-26 for guix-devel@gnu.org; Tue, 12 Feb 2019 11:06:38 -0500 In-Reply-To: (John Soo's message of "Mon, 11 Feb 2019 13:56:51 -0800") 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: John Soo Cc: guix-devel@gnu.org Hi John, John Soo writes: > I=E2=80=99ll check out git-annex as a start. Custom Cabal builds would be= a > nice feature to add to the haskell-build-system. Would it be > sufficient to add some extra argument to the build system? At this point, I don=E2=80=99t know what the argument would do. :) The solution I came up with for git-annex only works for git-annex. I had to carefully read the build code, and carve out certain parts so that they could run in different environments. It is not something that could be enabled by an argument. The only idea I have would be switching from using =E2=80=9Crunhaskell Setu= p.hs=E2=80=9D to using the =E2=80=9Ccabal=E2=80=9D executable. Hopefully, Cabal would se= t up the GHC package database before running the custom code. If it worked, it could be enabled by a build-system argument. I=E2=80=99m definitely just guessing here, though. If you wanted to test this, you could copy out code from =E2=80=9Cguix/build/haskell-build-system.scm=E2=80=9D into custom phases in= your package. If it proves useful, we could adapt it into the build system. So far, custom builds have been extremely rare, so these issues are not very well explored. -- Tim