~ruther/guix-local

1dbe3a8db0a3e5a8e5f9b30e6f6a6bbfb699275b — Ludovic Courtès 9 years ago 5a717a9
build: GnuTLS is now a hard dependency.

Discussed as part of <https://bugs.gnu.org/25975>.

* configure.ac: Check for (gnutls) and error out if it's missing.
* doc/guix.texi (Requirements): Move GnuTLS from optional to required.
(Substitutes): Remove footnote about the need for GnuTLS.
2 files changed, 13 insertions(+), 12 deletions(-)

M configure.ac
M doc/guix.texi
M configure.ac => configure.ac +8 -1
@@ 91,7 91,14 @@ dnl Installation directory for .scm and .go files.
guilemoduledir="${datarootdir}/guile/site/$GUILE_EFFECTIVE_VERSION"
AC_SUBST([guilemoduledir])

dnl guile-json is used for the PyPI package importer
dnl The GnuTLS bindings are necessary for substitutes over HTTPS and for 'guix
dnl pull', among other things.
GUILE_MODULE_AVAILABLE([have_gnutls], [(gnutls)])
if test "x$have_gnutls" != "xyes"; then
  AC_MSG_ERROR([The Guile bindings of GnuTLS are missing; please install them.])
fi

dnl Guile-JSON is used in various places.
GUILE_MODULE_AVAILABLE([have_guile_json], [(json)])
AM_CONDITIONAL([HAVE_GUILE_JSON], [test "x$have_guile_json" = "xyes"])


M doc/guix.texi => doc/guix.texi +5 -11
@@ 544,6 544,10 @@ GNU Guix depends on the following packages:
@itemize
@item @url{http://gnu.org/software/guile/, GNU Guile}, version 2.0.7 or later;
@item @url{http://gnupg.org/, GNU libgcrypt};
@item
@uref{http://gnutls.org/, GnuTLS}, specifically its Guile bindings
(@pxref{Guile Preparations, how to install the GnuTLS bindings for
Guile,, gnutls-guile, GnuTLS-Guile});
@item @url{http://www.gnu.org/software/make/, GNU Make}.
@end itemize



@@ 551,15 555,6 @@ The following dependencies are optional:

@itemize
@item
Installing @uref{http://gnutls.org/, GnuTLS-Guile} will allow you to
access @code{https} URLs for substitutes, which is highly recommended
(@pxref{Substitutes}).  It also allows you to access HTTPS URLs with the
@command{guix download} command (@pxref{Invoking guix download}), the
@command{guix import pypi} command, and the @command{guix import cpan}
command.  @xref{Guile Preparations, how to install the GnuTLS bindings
for Guile,, gnutls-guile, GnuTLS-Guile}.

@item
Installing
@url{http://savannah.nongnu.org/projects/guile-json/, Guile-JSON} will
allow you to use the @command{guix import pypi} command (@pxref{Invoking


@@ 2003,8 1998,7 @@ or to client tools such as @command{guix package}
(@pxref{client-substitute-urls,, client @option{--substitute-urls}
option}).

Substitute URLs can be either HTTP or HTTPS@footnote{For HTTPS access,
the Guile bindings of GnuTLS must be installed.  @xref{Requirements}.}
Substitute URLs can be either HTTP or HTTPS.
HTTPS is recommended because communications are encrypted; conversely,
using HTTP makes all communications visible to an eavesdropper, who
could use the information gathered to determine, for instance, whether