From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nikita Karetnikov Subject: Bootstrapping GHC Date: Mon, 30 Sep 2013 14:49:49 +0400 Message-ID: <87siwma8j6.fsf@karetnikov.org> Mime-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha1; protocol="application/pgp-signature" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:49871) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VQayT-0000Ag-5j for guix-devel@gnu.org; Mon, 30 Sep 2013 06:45:14 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VQayO-00085s-EI for guix-devel@gnu.org; Mon, 30 Sep 2013 06:45:09 -0400 Received: from [2a01:7e00::f03c:91ff:fedf:181] (port=50919 helo=cooksoni.karetnikov.org) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VQayO-00083c-9H for guix-devel@gnu.org; Mon, 30 Sep 2013 06:45:04 -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: guix-devel@gnu.org --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable I=E2=80=99ve been thinking about GHC recently. (A quick reminder: there are binary versions [1], but we can=E2=80=99t use them because some binaries po= int to =E2=80=98/bin/sh=E2=80=99.) I believe the following should work for x86= _64 and i686: 1. We fetch the source version [2] (manually), adjust =E2=80=98/bin/sh=E2= =80=99, and build everything using a non-Guix GHC. 2. Then we copy the needed binaries somewhere. 3. After that we write a build recipe. It should fetch the binary version of GHC [1], fix =E2=80=98/bin/sh=E2=80=99, and replace some bina= ries with the binaries from the second step. Questions: 1. We=E2=80=99d have to host the binaries (step 2) somewhere and repeat the process whenever the hash of =E2=80=98/bin/sh=E2=80=99 changes. How oft= en will this happen? 2. Does Guix allow to fetch files from multiple places? Is it possible to use =E2=80=98url-fetch=E2=80=99 plus a local file? Could you show an= example? [1] http://www.haskell.org/ghc/dist/7.0.1/ghc-7.0.1-i386-unknown-linux.tar.= bz2 [2] http://www.haskell.org/ghc/dist/7.0.1/ghc-7.0.1-src.tar.bz2 --=-=-= Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) iQIcBAEBAgAGBQJSSVdPAAoJEM+IQzI9IQ38/i0QAJ5uuRDTbZ7X41TNpqjghiMO uqQQT7PwYx+/8v9r1+36Q9oBh/RPsqrdvkaZPb0RvmCowulS884b0uUvrjIEaao5 XqUKc67/6kx6ZntuZU8hoitDj7MiUyad2X3u4RkaAueJnwArX89yrkOaMhkt+ABl N8ufVBtrE21bLIxN1DaiDm2CsaG9bl+eL/Og1cN7fapK5BNEqo8430SKSUk/OKtZ lZk5Y2G8wvktsZfpk+i46TEb3ZHKaghu9j9ewkDpi0MAhryurOBWCqtF393QYQYj rGD6dB4cs2iJmXSz+Lyf8h9L3ENbmY8hx1rxtiQOA5qbG08CgH+PNrUUH/7Zer6i /frlDOOoIxD8udZ4Udv5VMCMMjNbWLm0RvY8Z460j3T4hIxmmG4gbZWPd6Gp7szk mxp/lhtaj8q/o/Yc4xSJvV3XyqM0uj6nh5/6KY4Hd1+2WDAimJRyRrpMNNyTntgN yORR6KPdQP4oCEibB2h7gjjPtDarU5pmBkqep8Q+SfZ/64KhANphgieuV1QP/7Na w13q2sGpo6xJ1kVzesQRjg0DkMRgg6lnaeQvwSAlgW9ugHMbwBS+Bw9gvIUSwrv1 FUfN6vQzCnux+4DSm2Bx5Uyl8M68DZ/FMHfjKTOXKgn9hKrXXX0jnNSEKyqaWGj1 wtW7WpuwaGGUh5vpAymr =2Glk -----END PGP SIGNATURE----- --=-=-=--