Browse Source

Make Guile-JSON a required dependency.

* README (Requirements): Remove "optional" verbiage.
* doc/guix.texi (Requirements): Move Guile-JSON from optional to required.
* configure.ac (HAVE_GUILE_JSON): Remove Automake conditional.
(have_guile_json): Error if not "yes".
* Makefile.am (MODULE, SCM_TESTS)[HAVE_GUILE_JSON]: Add modules and tests
unconditionally.
* gnu/packages/package-mangement.scm (guix-minimal)[propagated-inputs]: Leave
guile-json input.
gn-latest-20200428
Eric Bavier 1 year ago
parent
commit
6776af04d4
No known key found for this signature in database GPG Key ID: FD73CAC719D32566
5 changed files with 37 additions and 53 deletions
  1. +30
    -42
      Makefile.am
  2. +1
    -1
      README
  3. +4
    -2
      configure.ac
  4. +1
    -7
      doc/guix.texi
  5. +1
    -1
      gnu/packages/package-management.scm

+ 30
- 42
Makefile.am View File

@@ -62,7 +62,9 @@ MODULES = \
guix/base16.scm \
guix/base32.scm \
guix/base64.scm \
guix/ci.scm \
guix/cpio.scm \
guix/docker.scm \
guix/records.scm \
guix/pki.scm \
guix/progress.scm \
@@ -186,15 +188,24 @@ MODULES = \
guix/build/make-bootstrap.scm \
guix/search-paths.scm \
guix/packages.scm \
guix/import/print.scm \
guix/import/utils.scm \
guix/import/gnu.scm \
guix/import/snix.scm \
guix/import/cabal.scm \
guix/import/cpan.scm \
guix/import/cran.scm \
guix/import/hackage.scm \
guix/import/crate.scm \
guix/import/elpa.scm \
guix/import/gem.scm \
guix/import/github.scm \
guix/import/gnome.scm \
guix/import/gnu.scm \
guix/import/hackage.scm \
guix/import/json.scm \
guix/import/opam.scm \
guix/import/print.scm \
guix/import/pypi.scm \
guix/import/snix.scm \
guix/import/stackage.scm \
guix/import/texlive.scm \
guix/import/utils.scm \
guix/scripts.scm \
guix/scripts/download.scm \
guix/scripts/perform-download.scm \
@@ -216,46 +227,29 @@ MODULES = \
guix/scripts/system/search.scm \
guix/scripts/lint.scm \
guix/scripts/challenge.scm \
guix/scripts/import/crate.scm \
guix/scripts/import/cran.scm \
guix/scripts/import/elpa.scm \
guix/scripts/import/gem.scm \
guix/scripts/import/gnu.scm \
guix/scripts/import/nix.scm \
guix/scripts/import/hackage.scm \
guix/scripts/import/elpa.scm \
guix/scripts/import/json.scm \
guix/scripts/import/nix.scm \
guix/scripts/import/opam.scm \
guix/scripts/import/pypi.scm \
guix/scripts/import/stackage.scm \
guix/scripts/import/texlive.scm \
guix/scripts/environment.scm \
guix/scripts/publish.scm \
guix/scripts/edit.scm \
guix/scripts/size.scm \
guix/scripts/graph.scm \
guix/scripts/weather.scm \
guix/scripts/container.scm \
guix/scripts/container/exec.scm \
guix.scm \
$(GNU_SYSTEM_MODULES)

if HAVE_GUILE_JSON

MODULES += \
guix/ci.scm \
guix/docker.scm \
guix/import/cpan.scm \
guix/import/crate.scm \
guix/import/gem.scm \
guix/import/github.scm \
guix/import/gnome.scm \
guix/import/json.scm \
guix/import/opam.scm \
guix/import/pypi.scm \
guix/import/stackage.scm \
guix/scripts/import/crate.scm \
guix/scripts/import/gem.scm \
guix/scripts/import/json.scm \
guix/scripts/import/opam.scm \
guix/scripts/import/pypi.scm \
guix/scripts/import/stackage.scm \
guix/scripts/weather.scm

endif

if HAVE_GUILE_SSH

MODULES += \
@@ -335,7 +329,10 @@ SCM_TESTS = \
tests/base16.scm \
tests/base32.scm \
tests/base64.scm \
tests/cpan.scm \
tests/cpio.scm \
tests/crate.scm \
tests/gem.scm \
tests/pki.scm \
tests/print.scm \
tests/sets.scm \
@@ -389,22 +386,13 @@ SCM_TESTS = \
tests/services.scm \
tests/scripts-build.scm \
tests/containers.scm \
tests/opam.scm \
tests/pack.scm \
tests/pypi.scm \
tests/import-utils.scm \
tests/store-database.scm \
tests/store-deduplication.scm

if HAVE_GUILE_JSON

SCM_TESTS += \
tests/pypi.scm \
tests/opam.scm \
tests/cpan.scm \
tests/gem.scm \
tests/crate.scm

endif

SH_TESTS = \
tests/guix-build.sh \
tests/guix-build-branch.sh \


+ 1
- 1
README View File

@@ -27,7 +27,7 @@ GNU Guix currently depends on the following packages:
- [[https://notabug.org/guile-sqlite3/guile-sqlite3][Guile-SQLite3]], version 0.1.0 or later
- [[https://gitlab.com/guile-git/guile-git][Guile-Git]]
- [[http://www.zlib.net/][zlib]]
- optionally [[https://savannah.nongnu.org/projects/guile-json/][Guile-JSON]], for the 'guix import pypi' command
- [[https://savannah.nongnu.org/projects/guile-json/][Guile-JSON]]

Unless `--disable-daemon' was passed, the following packages are needed:



+ 4
- 2
configure.ac View File

@@ -122,9 +122,11 @@ if test "x$have_guile_git" != "xyes"; then
AC_MSG_ERROR([Guile-Git is missing; please install it.])
fi

dnl Guile-JSON is used in various places.
dnl Check for Guile-JSON.
GUILE_MODULE_AVAILABLE([have_guile_json], [(json)])
AM_CONDITIONAL([HAVE_GUILE_JSON], [test "x$have_guile_json" = "xyes"])
if test "x$have_guile_json" != "xyes"; then
AC_MSG_ERROR([Guile-JSON is missing; please install it.])
fi

dnl Guile-Sqlite3 is used by the (guix store ...) modules.
GUIX_CHECK_GUILE_SQLITE3


+ 1
- 7
doc/guix.texi View File

@@ -653,6 +653,7 @@ or later;
@c FIXME: Specify a version number once a release has been made.
@uref{https://gitlab.com/guile-git/guile-git, Guile-Git}, from August
2017 or later;
@item @uref{https://savannah.nongnu.org/projects/guile-json/, Guile-JSON};
@item @url{http://zlib.net, zlib};
@item @url{http://www.gnu.org/software/make/, GNU Make}.
@end itemize
@@ -660,13 +661,6 @@ or later;
The following dependencies are optional:

@itemize
@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
guix import}). It is of
interest primarily for developers and not for casual users.

@item
@c Note: We need at least 0.10.2 for 'channel-send-eof'.
Support for build offloading (@pxref{Daemon Offload Setup}) and


+ 1
- 1
gnu/packages/package-management.scm View File

@@ -389,7 +389,7 @@ the Nix package manager.")
(propagated-inputs
(fold alist-delete
(package-propagated-inputs guix)
'("guile-json" "guile-ssh")))))))
'("guile-ssh")))))))

(define (source-file? file stat)
"Return true if FILE is likely a source file, false if it is a typical


Loading…
Cancel
Save