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.
This commit is contained in:
Ludovic Courtès 2012-11-03 21:11:02 +01:00
parent 81dbd783bd
commit e76bdf8b87
8 changed files with 15 additions and 15 deletions

View File

@ -172,4 +172,4 @@ EXTRA_DIST += doc/fdl-1.3.texi
ACLOCAL_AMFLAGS = -I m4 ACLOCAL_AMFLAGS = -I m4
AM_DISTCHECK_CONFIGURE_FLAGS = \ AM_DISTCHECK_CONFIGURE_FLAGS = \
--with-nixpkgs=$(NIXPKGS) --with-nix-prefix="$(NIX_PREFIX)" --with-nix-prefix="$(NIX_PREFIX)"

2
README
View File

@ -19,7 +19,7 @@ Guix currently depends on the following packages:
- [[http://nixos.org/nix/][Nix]] - [[http://nixos.org/nix/][Nix]]
- [[http://gnupg.org/][GNU libgcrypt]], or [[http://nongnu.org/libchop/][libchop]] - [[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; 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 the `--with-nixpkgs' option allows you to let `configure' know where the
Nixpkgs checkout is. Nixpkgs checkout is.

View File

@ -52,13 +52,12 @@ AC_ARG_WITH([nixpkgs],
esac], esac],
[]) [])
AC_MSG_CHECKING([for Nixpkgs source tree])
if test -f "$NIXPKGS/default.nix"; then if test -f "$NIXPKGS/default.nix"; then
AC_MSG_CHECKING([for Nixpkgs source tree])
AC_MSG_RESULT([$NIXPKGS]) AC_MSG_RESULT([$NIXPKGS])
AC_SUBST([NIXPKGS]) AC_SUBST([NIXPKGS])
else else
AC_MSG_WARN([Nixpkgs not found; this will prevent most tests from running.]) AC_MSG_RESULT([not found])
AC_MSG_WARN([Please use `--with-nixpkgs'.])
fi fi
AC_ARG_WITH([libgcrypt-prefix], AC_ARG_WITH([libgcrypt-prefix],

View File

@ -41,10 +41,10 @@
(base32 (base32
"1v2xzwwwhc5j5kmvg4sv6baxjpsfqh8ln7ilv4mgb1408rs7xmky")))) "1v2xzwwwhc5j5kmvg4sv6baxjpsfqh8ln7ilv4mgb1408rs7xmky"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs `(("curl" ,(nixpkgs-derivation* "curl")) (inputs `(("curl" ,(nixpkgs-derivation "curl"))
("emacs" ,(nixpkgs-derivation* "emacs")) ("emacs" ,(nixpkgs-derivation "emacs"))
("check" ,(nixpkgs-derivation* "check")) ("check" ,(nixpkgs-derivation "check"))
("bc" ,(nixpkgs-derivation* "bc")) ("bc" ,(nixpkgs-derivation "bc"))
("patch/gets" ("patch/gets"
,(search-patch "diffutils-gets-undeclared.patch")))) ,(search-patch "diffutils-gets-undeclared.patch"))))
(arguments `(#:patches (list (assoc-ref %build-inputs "patch/gets")))) (arguments `(#:patches (list (assoc-ref %build-inputs "patch/gets"))))

View File

@ -45,7 +45,7 @@ or 2.0."
"1svlyk5pm4fsdp2g7n6qffdl6fdggxnlicj0jn9s4lxd63gzxy1n")))) "1svlyk5pm4fsdp2g7n6qffdl6fdggxnlicj0jn9s4lxd63gzxy1n"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs `(("pkgconfig" ,pkg-config) (native-inputs `(("pkgconfig" ,pkg-config)
("gperf" ,(nixpkgs-derivation* "gperf")))) ("gperf" ,(nixpkgs-derivation "gperf"))))
(inputs `(("guile" ,guile))) (inputs `(("guile" ,guile)))
(description "Guile-Reader, a simple framework for building readers for (description "Guile-Reader, a simple framework for building readers for
GNU Guile") GNU Guile")

View File

@ -94,7 +94,7 @@
"12gkyqrn0kaa8xq7sc7v3wm407pz2fxg9ngc75aybhi5z825b9vq")))) "12gkyqrn0kaa8xq7sc7v3wm407pz2fxg9ngc75aybhi5z825b9vq"))))
(build-system gnu-build-system) ; actually, just a makefile (build-system gnu-build-system) ; actually, just a makefile
(outputs '("out" "doc")) (outputs '("out" "doc"))
(inputs `(("ghostscript" ,(nixpkgs-derivation* "ghostscript")))) (inputs `(("ghostscript" ,(nixpkgs-derivation "ghostscript"))))
(arguments `(#:modules ((guix build utils) (arguments `(#:modules ((guix build utils)
(guix build gnu-build-system) (guix build gnu-build-system)
(srfi srfi-1)) ; we need SRFI-1 (srfi srfi-1)) ; we need SRFI-1

View File

@ -458,7 +458,8 @@ starting from the right of S."
(define %nixpkgs-directory (define %nixpkgs-directory
(make-parameter (make-parameter
;; Capture the build-time value of $NIXPKGS. ;; 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))) (define* (nixpkgs-derivation attribute #:optional (system (%current-system)))
"Return the derivation path of ATTRIBUTE in Nixpkgs." "Return the derivation path of ATTRIBUTE in Nixpkgs."

View File

@ -51,7 +51,7 @@ let
buildInputs = with pkgs; [ guile ]; buildInputs = with pkgs; [ guile ];
buildNativeInputs = with pkgs; [ texinfo gettext cvs pkgconfig ]; buildNativeInputs = with pkgs; [ texinfo gettext cvs pkgconfig ];
configureFlags = configureFlags =
[ "--with-nixpkgs=${nixpkgs}" "--with-nix-prefix=${pkgs.nix}" ]; [ "--with-nix-prefix=${pkgs.nix}" ];
}; };
build = build =
@ -64,7 +64,7 @@ let
buildNativeInputs = [ pkgs.pkgconfig ]; buildNativeInputs = [ pkgs.pkgconfig ];
src = jobs.tarball; src = jobs.tarball;
configureFlags = configureFlags =
[ "--with-nixpkgs=${nixpkgs}" "--with-nix-prefix=${pkgs.nix}" [ "--with-nix-prefix=${pkgs.nix}"
"--with-libgcrypt-prefix=${pkgs.libgcrypt}" "--with-libgcrypt-prefix=${pkgs.libgcrypt}"
]; ];