From: Eric Bavier <ericbavier@centurylink.net>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: guix-devel@gnu.org, Joshua Branson <jbranso@fastmail.com>,
33572@debbugs.gnu.org
Subject: Re: Guile-JSON now seems to be a required dependency
Date: Sun, 2 Dec 2018 16:22:25 -0600 [thread overview]
Message-ID: <20181202162225.500e1721@centurylink.net> (raw)
In-Reply-To: <87a7lnlhd8.fsf@gnu.org>
[-- Attachment #1.1: Type: text/plain, Size: 777 bytes --]
On Sun, 02 Dec 2018 22:59:47 +0100
ludo@gnu.org (Ludovic Courtès) wrote:
> Hello,
>
> Joshua Branson <jbranso@fastmail.com> skribis:
>
> > Timothy Sample <samplet@ngyro.com> writes:
> >
> >> Hi Eric,
> >>
> >> Eric Bavier <ericbavier@centurylink.net> writes:
>
> [...]
>
> >>> Yes, we decided to make it a hard requirement. I'm working on a patch
> >>> to follow through.
> >
> > I believe I created such a patch.
>
> Eric, could you consider merging your patch with Joshua’s? Making
> Guile-JSON a hard dependency takes more than updating guix.texi, though.
Here's an updated patch.
I think this takes care of everything. Most of the conditional-loading
logic in modules has been removed/factored/superseded already.
`~Eric
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.2: 0001-Make-Guile-JSON-a-required-dependency.patch --]
[-- Type: text/x-patch, Size: 7613 bytes --]
From 48c22f503493a4406758e91844d3708fe5f88864 Mon Sep 17 00:00:00 2001
From: Eric Bavier <bavier@member.fsf.org>
Date: Sat, 1 Dec 2018 20:46:22 -0600
Subject: [PATCH] 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.
---
Makefile.am | 72 ++++++++++++-----------------
README | 2 +-
configure.ac | 6 ++-
doc/guix.texi | 9 +---
gnu/packages/package-management.scm | 2 +-
5 files changed, 37 insertions(+), 54 deletions(-)
diff --git a/Makefile.am b/Makefile.am
index e14ac57f2..32cebd591 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -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 \
diff --git a/README b/README
index a7a818c5c..e7871917f 100644
--- a/README
+++ b/README
@@ -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:
diff --git a/configure.ac b/configure.ac
index 2a1edbc32..2817e6e24 100644
--- a/configure.ac
+++ b/configure.ac
@@ -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
diff --git a/doc/guix.texi b/doc/guix.texi
index fff5dfe0b..907735285 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -653,20 +653,13 @@ 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
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
diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm
index 141d0e52f..c4e917102 100644
--- a/gnu/packages/package-management.scm
+++ b/gnu/packages/package-management.scm
@@ -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
--
2.19.1
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
next prev parent reply other threads:[~2018-12-02 22:22 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-12-01 4:45 Guile-JSON now seems to be a required dependency Timothy Sample
2018-12-01 13:39 ` Joshua Branson
2018-12-01 15:16 ` Eric Bavier
2018-12-01 18:55 ` Timothy Sample
2018-12-02 18:58 ` Joshua Branson
2018-12-02 21:59 ` Ludovic Courtès
2018-12-02 22:22 ` Eric Bavier [this message]
2018-12-02 22:38 ` [bug#33572] " Eric Bavier
2018-12-03 8:46 ` Ludovic Courtès
2018-12-03 8:46 ` Ludovic Courtès
2018-12-03 14:58 ` Eric Bavier
2018-12-03 14:58 ` Eric Bavier
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20181202162225.500e1721@centurylink.net \
--to=ericbavier@centurylink.net \
--cc=33572@debbugs.gnu.org \
--cc=guix-devel@gnu.org \
--cc=jbranso@fastmail.com \
--cc=ludo@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.