~ruther/guix-local

f6396d862f9f8ce0c0e6894ce30599773167af0c — Ludovic Courtès 9 years ago 8df672a
gnu: Rename "guile-next" to "guile".

* gnu/packages/guile.scm (guile-next): Rename to...
(guile-2.2): ... this.  Update users.
[name]: Change to "guile".
[synopsis]: Remove.
[properties]: Remove 'upstream-name', 'ftp-server', and
'ftp-directory'.
* gnu/packages/bioinformatics.scm (rcas-web): Update accordingly.
* gnu/packages/tls.scm (gnutls/guile-2.2): Likewise.
* tests/guix-build.sh: Use 'guile@2.2' instead of 'guile-next'.
* doc/guix.texi (Package Transformation Options): Update examples that
referred to "guile-next".
M doc/guix.texi => doc/guix.texi +3 -3
@@ 4921,15 4921,15 @@1.8}.

For instance, the following command builds Guix, but replaces its
dependency on the current stable version of Guile with a dependency on
the development version of Guile, @code{guile-next}:
the legacy version of Guile, @code{guile@@2.0}:

@example
guix build --with-input=guile=guile-next guix
guix build --with-input=guile=guile@@2.0 guix
@end example

This is a recursive, deep replacement.  So in this example, both
@code{guix} and its dependency @code{guile-json} (which also depends on
@code{guile}) get rebuilt against @code{guile-next}.
@code{guile}) get rebuilt against @code{guile@@2.0}.

This is implemented using the @code{package-input-rewriting} Scheme
procedure (@pxref{Defining Packages, @code{package-input-rewriting}}).

M gnu/packages/bioinformatics.scm => gnu/packages/bioinformatics.scm +1 -1
@@ 7638,7 7638,7 @@ library implementing most of the pipeline's features.")
    (inputs
     `(("r-minimal" ,r-minimal)
       ("r-rcas" ,r-rcas)
       ("guile-next" ,guile-next)
       ("guile-next" ,guile-2.2)
       ("guile-json" ,guile2.2-json)
       ("guile-redis" ,guile2.2-redis)))
    (native-inputs

M gnu/packages/guile.scm => gnu/packages/guile.scm +11 -15
@@ 231,9 231,9 @@ without requiring the source code to be rewritten.")
                "12yqkr974y91ylgw6jnmci2v90i90s7h9vxa4zk0sai8vjnz4i1p"))
              (patches (search-patches "guile-repl-server-test.patch"))))))

(define-public guile-next
(define-public guile-2.2
  (package (inherit guile-2.0)
    (name "guile-next")
    (name "guile")
    (version "2.2.0")
    (replacement #f)
    (source (origin


@@ 250,12 250,8 @@ without requiring the source code to be rewritten.")
              ;; times (almost 3 hours on a 4-core Intel i5).
              (snippet '(for-each delete-file
                                  (find-files "prebuilt" "\\.go$")))))
    (synopsis "Snapshot of what will become version 2.2 of GNU Guile")
    (properties '((timeout . 72000)               ;20 hours
                  (max-silent-time . 10800)       ;3 hours (needed on ARM)
                  (upstream-name . "guile")
                  (ftp-server . "alpha.gnu.org")
                  (ftp-directory . "/gnu/guile")))
                  (max-silent-time . 10800)))     ;3 hours (needed on ARM)
    (native-search-paths
     (list (search-path-specification
            (variable "GUILE_LOAD_PATH")


@@ 276,12 272,12 @@ applicable."

(define package-for-guile-2.2
  ;; A procedure that rewrites the dependency tree of the given package to use
  ;; GUILE-NEXT instead of GUILE-2.0.
  (package-input-rewriting `((,guile-2.0 . ,guile-next))
  ;; GUILE-2.2 instead of GUILE-2.0.
  (package-input-rewriting `((,guile-2.0 . ,guile-2.2))
                           guile-2.2-package-name))

(define-public guile-for-guile-emacs
  (package (inherit guile-next)
  (package (inherit guile-2.2)
    (name "guile-for-guile-emacs")
    (version "20150510.d8d9a8d")
    (source (origin


@@ 296,7 292,7 @@ applicable."
     (substitute-keyword-arguments `(;; Tests aren't passing for now.
                                     ;; Obviously we should re-enable this!
                                     #:tests? #f
                                     ,@(package-arguments guile-next))
                                     ,@(package-arguments guile-2.2))
       ((#:phases phases)
        `(modify-phases ,phases
           (add-after 'unpack 'autogen


@@ 314,7 310,7 @@ applicable."
       ("flex" ,flex)
       ("texinfo" ,texinfo)
       ("gettext" ,gettext-minimal)
       ,@(package-native-inputs guile-next)))
       ,@(package-native-inputs guile-2.2)))
    ;; Same as in guile-2.0
    (native-search-paths
     (list (search-path-specification


@@ 1641,7 1637,7 @@ and then run @command{scm example.scm}.")
    (build-system gnu-build-system)
    (native-inputs `(("autoconf" ,autoconf)
                     ("automake" ,automake)
                     ("guile" ,guile-next)
                     ("guile" ,guile-2.2)
                     ("pkg-config" ,pkg-config)
                     ("texinfo" ,texinfo)))
    (arguments


@@ 1657,7 1653,7 @@ and then run @command{scm example.scm}.")
     "GNU 8sync (pronounced \"eight-sync\") is an asynchronous programming
library for GNU Guile based on the actor model.

Note that 8sync is only available for Guile 2.2 (guile-next in Guix).")
Note that 8sync is only available for Guile 2.2.")
    (license license:lgpl3+)))

(define-public guile-fibers


@@ 1676,7 1672,7 @@ Note that 8sync is only available for Guile 2.2 (guile-next in Guix).")
     `(("texinfo" ,texinfo)
       ("pkg-config" ,pkg-config)))
    (inputs
     `(("guile" ,guile-next)))
     `(("guile" ,guile-2.2)))
    (synopsis "Lightweight concurrency facility for Guile")
    (description
     "Fibers is a Guile library that implements a a lightweight concurrency

M gnu/packages/tls.scm => gnu/packages/tls.scm +1 -1
@@ 238,7 238,7 @@ required structures.")
     (substitute-keyword-arguments (package-arguments gnutls-3.5.8)
       ((#:configure-flags flags)
        `(cdr ,flags))))
    (inputs `(("guile" ,guile-next)
    (inputs `(("guile" ,guile-2.2)
              ,@(alist-delete "guile" (package-inputs gnutls-3.5.8))))))

(define-public openssl

M tests/guix-build.sh => tests/guix-build.sh +2 -2
@@ 1,5 1,5 @@
# GNU Guix --- Functional package management for GNU
# Copyright © 2012, 2013, 2014, 2016 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2012, 2013, 2014, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
#
# This file is part of GNU Guix.
#


@@ 160,7 160,7 @@ rm -f "$result"
guix build coreutils --target=mips64el-linux-gnu --dry-run --no-substitutes

# Replacements.
drv1=`guix build guix --with-input=guile=guile-next -d`
drv1=`guix build guix --with-input=guile@2.0=guile@2.2 -d`
drv2=`guix build guix -d`
test "$drv1" != "$drv2"