From 34d624cef51f0e4eb4e888622b60fc2befe31fa7 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sat, 8 Apr 2017 23:10:50 +0200 Subject: gnu: Build derivations with Guile 2.2 by default. * gnu/packages/guile.scm (guile-2.0/fixed): Remove. (guile-2.2)[source]: Switch from tar.lz to tar.xz. (guile-2.2/fixed): New variable. * gnu/packages/commencement.scm (guile-final): Use GUILE-2.2/FIXED instead of GUILE-2.2/FIXED. (canonical-package): Mention 2.2 instead of 2.0. --- gnu/packages/commencement.scm | 4 ++-- gnu/packages/guile.scm | 23 +++++++++++++---------- 2 files changed, 15 insertions(+), 12 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 92f6e6c2ea..09a82b6b94 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -821,7 +821,7 @@ (define-public guile-final ;; This package must be public because other modules refer to it. However, ;; mark it as hidden so that 'fold-packages' ignores it. (package-with-bootstrap-guile - (package-with-explicit-inputs (hidden-package guile-2.0/fixed) + (package-with-explicit-inputs (hidden-package guile-2.2/fixed) %boot4-inputs (current-source-location) #:guile %bootstrap-guile))) @@ -940,7 +940,7 @@ (define-public canonical-package the implicit inputs of 'gnu-build-system', return that one, otherwise return PACKAGE. -The goal is to avoid duplication in cases like GUILE-FINAL vs. GUILE-2.0, +The goal is to avoid duplication in cases like GUILE-FINAL vs. GUILE-2.2, COREUTILS-FINAL vs. COREUTILS, etc." ;; XXX: This doesn't handle dependencies of the final inputs, such as ;; libunistring, GMP, etc. diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 96fc84a960..46e6dea747 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -209,14 +209,6 @@ (define-public guile-2.0 (home-page "https://www.gnu.org/software/guile/") (license license:lgpl3+))) -(define-public guile-2.0/fixed - ;; A package of Guile 2.0 that's rarely changed. It is the one used - ;; in the `base' module, and thus changing it entails a full rebuild. - (package - (inherit guile-2.0) - (properties '((hidden? . #t))) ;people should install 'guile-2.0' - (replacement #f))) - (define-public guile-2.2 (package (inherit guile-2.0) (name "guile") @@ -224,11 +216,14 @@ (define-public guile-2.2 (replacement #f) (source (origin (method url-fetch) + + ;; Note: we are limited to one of the compression formats + ;; supported by the bootstrap binaries, so no lzip here. (uri (string-append "mirror://gnu/guile/guile-" version - ".tar.lz")) + ".tar.xz")) (sha256 (base32 - "083vp6754dp4d5pvcy4bqvxq60cayf92v5slf5cgij8bnvixgyvr")) + "05dmvhd1y135x7w5qfw4my42cfp6l8bbhjfxvchcc1cbdvzri0f1")) (modules '((guix build utils))) ;; Remove the pre-built object files. Instead, build everything @@ -247,6 +242,14 @@ (define-public guile-2.2 (files '("lib/guile/2.2/site-ccache" "share/guile/site/2.2"))))))) +(define-public guile-2.2/fixed + ;; A package of Guile 2.2 that's rarely changed. It is the one used + ;; in the `base' module, and thus changing it entails a full rebuild. + (package + (inherit guile-2.2) + (properties '((hidden? . #t))) ;people should install 'guile-2.2' + (replacement #f))) + (define-public guile-next (deprecated-package "guile-next" guile-2.2)) -- cgit v1.2.3