From e76bdf8b87920b87a2a2e728c2e40ff24ca39ffe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 3 Nov 2012 21:11:02 +0100 Subject: [PATCH] build: Clearly mark Nixpkgs as optional. * configure.ac: Always show the result of checking for Nixpkgs. Don't warn when Nixpkgs is not found. * Makefile.am (AM_DISTCHECK_CONFIGURE_FLAGS): Remove `--with-nixpkgs' flag. * guix/utils.scm (%nixpkgs-directory): Use either the compile-time or the run-time `NIXPKGS' environment variable. * release.nix (jobs.tarball, jobs.build): Remove `--with-nixpkgs' configure flag. * README: Mark Nixpkgs as optional. * distro/packages/databases.scm, distro/packages/guile.scm, distro/packages/typesetting.scm: Change uses of `nixpkgs-derivation*' to `nixpkgs-derivation', to avoid failing at compile-time. --- Makefile.am | 4 ++-- README | 2 +- configure.ac | 5 ++--- distro/packages/databases.scm | 8 ++++---- distro/packages/guile.scm | 2 +- distro/packages/typesetting.scm | 2 +- guix/utils.scm | 3 ++- release.nix | 4 ++-- 8 files changed, 15 insertions(+), 15 deletions(-) diff --git a/Makefile.am b/Makefile.am index 8a564624b9..0621cb8c00 100644 --- a/Makefile.am +++ b/Makefile.am @@ -171,5 +171,5 @@ info_TEXINFOS = doc/guix.texi EXTRA_DIST += doc/fdl-1.3.texi ACLOCAL_AMFLAGS = -I m4 -AM_DISTCHECK_CONFIGURE_FLAGS = \ - --with-nixpkgs=$(NIXPKGS) --with-nix-prefix="$(NIX_PREFIX)" +AM_DISTCHECK_CONFIGURE_FLAGS = \ + --with-nix-prefix="$(NIX_PREFIX)" diff --git a/README b/README index 3648721333..5be253bd49 100644 --- a/README +++ b/README @@ -19,7 +19,7 @@ Guix currently depends on the following packages: - [[http://nixos.org/nix/][Nix]] - [[http://gnupg.org/][GNU libgcrypt]], or [[http://nongnu.org/libchop/][libchop]] -For bootstrapping purposes, it is useful to reuse packages from Nixpkgs. +Optionally, packages from Nixpkgs may be transparently reused from Guix. For this to work, you need to have a checkout of the Nixpkgs repository; the `--with-nixpkgs' option allows you to let `configure' know where the Nixpkgs checkout is. diff --git a/configure.ac b/configure.ac index d9a5f07f4f..85bd20e2be 100644 --- a/configure.ac +++ b/configure.ac @@ -52,13 +52,12 @@ AC_ARG_WITH([nixpkgs], esac], []) +AC_MSG_CHECKING([for Nixpkgs source tree]) if test -f "$NIXPKGS/default.nix"; then - AC_MSG_CHECKING([for Nixpkgs source tree]) AC_MSG_RESULT([$NIXPKGS]) AC_SUBST([NIXPKGS]) else - AC_MSG_WARN([Nixpkgs not found; this will prevent most tests from running.]) - AC_MSG_WARN([Please use `--with-nixpkgs'.]) + AC_MSG_RESULT([not found]) fi AC_ARG_WITH([libgcrypt-prefix], diff --git a/distro/packages/databases.scm b/distro/packages/databases.scm index 5c42ef142b..9cae6916f9 100644 --- a/distro/packages/databases.scm +++ b/distro/packages/databases.scm @@ -41,10 +41,10 @@ (base32 "1v2xzwwwhc5j5kmvg4sv6baxjpsfqh8ln7ilv4mgb1408rs7xmky")))) (build-system gnu-build-system) - (inputs `(("curl" ,(nixpkgs-derivation* "curl")) - ("emacs" ,(nixpkgs-derivation* "emacs")) - ("check" ,(nixpkgs-derivation* "check")) - ("bc" ,(nixpkgs-derivation* "bc")) + (inputs `(("curl" ,(nixpkgs-derivation "curl")) + ("emacs" ,(nixpkgs-derivation "emacs")) + ("check" ,(nixpkgs-derivation "check")) + ("bc" ,(nixpkgs-derivation "bc")) ("patch/gets" ,(search-patch "diffutils-gets-undeclared.patch")))) (arguments `(#:patches (list (assoc-ref %build-inputs "patch/gets")))) diff --git a/distro/packages/guile.scm b/distro/packages/guile.scm index 8c25ee9af6..464379bc47 100644 --- a/distro/packages/guile.scm +++ b/distro/packages/guile.scm @@ -45,7 +45,7 @@ or 2.0." "1svlyk5pm4fsdp2g7n6qffdl6fdggxnlicj0jn9s4lxd63gzxy1n")))) (build-system gnu-build-system) (native-inputs `(("pkgconfig" ,pkg-config) - ("gperf" ,(nixpkgs-derivation* "gperf")))) + ("gperf" ,(nixpkgs-derivation "gperf")))) (inputs `(("guile" ,guile))) (description "Guile-Reader, a simple framework for building readers for GNU Guile") diff --git a/distro/packages/typesetting.scm b/distro/packages/typesetting.scm index 5ca33c628a..40c9e998a0 100644 --- a/distro/packages/typesetting.scm +++ b/distro/packages/typesetting.scm @@ -94,7 +94,7 @@ "12gkyqrn0kaa8xq7sc7v3wm407pz2fxg9ngc75aybhi5z825b9vq")))) (build-system gnu-build-system) ; actually, just a makefile (outputs '("out" "doc")) - (inputs `(("ghostscript" ,(nixpkgs-derivation* "ghostscript")))) + (inputs `(("ghostscript" ,(nixpkgs-derivation "ghostscript")))) (arguments `(#:modules ((guix build utils) (guix build gnu-build-system) (srfi srfi-1)) ; we need SRFI-1 diff --git a/guix/utils.scm b/guix/utils.scm index 3e334f9fa6..287a6d4f3a 100644 --- a/guix/utils.scm +++ b/guix/utils.scm @@ -458,7 +458,8 @@ starting from the right of S." (define %nixpkgs-directory (make-parameter ;; Capture the build-time value of $NIXPKGS. - (compile-time-value (getenv "NIXPKGS")))) + (or (compile-time-value (getenv "NIXPKGS")) + (getenv "NIXPKGS")))) (define* (nixpkgs-derivation attribute #:optional (system (%current-system))) "Return the derivation path of ATTRIBUTE in Nixpkgs." diff --git a/release.nix b/release.nix index 05a14a89cf..67e096ffc1 100644 --- a/release.nix +++ b/release.nix @@ -51,7 +51,7 @@ let buildInputs = with pkgs; [ guile ]; buildNativeInputs = with pkgs; [ texinfo gettext cvs pkgconfig ]; configureFlags = - [ "--with-nixpkgs=${nixpkgs}" "--with-nix-prefix=${pkgs.nix}" ]; + [ "--with-nix-prefix=${pkgs.nix}" ]; }; build = @@ -64,7 +64,7 @@ let buildNativeInputs = [ pkgs.pkgconfig ]; src = jobs.tarball; configureFlags = - [ "--with-nixpkgs=${nixpkgs}" "--with-nix-prefix=${pkgs.nix}" + [ "--with-nix-prefix=${pkgs.nix}" "--with-libgcrypt-prefix=${pkgs.libgcrypt}" ];