mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2026-04-06 21:20:33 +02:00
gnu: nix: Update to 2.19.7.
This one doesn't compile with gcc@11 because of a compiler bug:
checking that GCC bug 80431 is fixed... no
configure: error: Cannot build Nix with C++ compiler with this bug
* gnu/packages/package-management.scm (nix): Update to 2.19.7.
[arguments]{test-target}: Set it to run a subset of tests.
{phases}: Run 'check phase after 'install phase. Add a
'skip-failing-tests phase.
[native-inputs]: Add man-db, util-linux.
* gnu/packages/patches/nix-dont-build-html-doc.diff: Update accordingly.
Change-Id: I14e07ec7fce1b66d473ff084bf3dfc48d2e9284e
This commit is contained in:
committed by
Andreas Enge
parent
ea94ceba25
commit
142c7df1d0
@@ -857,7 +857,7 @@ by using a Xapian cache.")
|
||||
(define-public nix
|
||||
(package
|
||||
(name "nix")
|
||||
(version "2.17.2")
|
||||
(version "2.19.7")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -866,12 +866,14 @@ by using a Xapian cache.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "141c2cr1f7k1iaygk5hy02m6f7zrmj5x3m3kz91rpjvvh1bn15qg"))
|
||||
(base32 "1xrx826i44sn7gxnf5cry9jxhzarflxp3y356wfq8q8ivi4gai0a"))
|
||||
(patches
|
||||
(search-patches "nix-dont-build-html-doc.diff"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;;; Only run functional tests.
|
||||
#:test-target "installcheck"
|
||||
#:configure-flags #~(list "--sysconfdir=/etc" "--enable-gc")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
@@ -884,7 +886,8 @@ by using a Xapian cache.")
|
||||
(string-append "sysconfdir=" etc)
|
||||
(string-append "profiledir=" etc "/profile.d")
|
||||
make-flags))))
|
||||
(replace 'check
|
||||
(delete 'check)
|
||||
(add-after 'install 'check
|
||||
(lambda args
|
||||
;; A few tests expect the environment variable NIX_STORE to be
|
||||
;; "/nix/store"
|
||||
@@ -895,7 +898,17 @@ by using a Xapian cache.")
|
||||
(lambda ()
|
||||
(apply (assoc-ref %standard-phases 'check) args))
|
||||
(lambda ()
|
||||
(setenv "NIX_STORE" original-NIX_STORE)))))))))
|
||||
(setenv "NIX_STORE" original-NIX_STORE))))))
|
||||
(add-after 'unpack 'skip-failing-tests
|
||||
(lambda _
|
||||
;; XXX: ${shell} is sometimes used in tests, but
|
||||
;; this doesn't seem to help much.
|
||||
(substitute* "tests/functional/common/vars-and-functions.sh.in"
|
||||
(("export SHELL=\"@bash@\"" all)
|
||||
(string-append all "\nexport shell=\"@bash@\"")))
|
||||
(substitute* "tests/functional/local.mk"
|
||||
((" (fmt|nix-profile|plugins|shell|flakes/config)\\.sh")
|
||||
"")))))))
|
||||
(native-inputs
|
||||
(list autoconf
|
||||
autoconf-archive
|
||||
@@ -905,8 +918,10 @@ by using a Xapian cache.")
|
||||
googletest
|
||||
jq
|
||||
libtool
|
||||
man-db
|
||||
pkg-config
|
||||
rapidcheck))
|
||||
rapidcheck
|
||||
util-linux)) ; for unshare
|
||||
(inputs
|
||||
(append (list boost
|
||||
brotli
|
||||
|
||||
@@ -6,7 +6,7 @@ Author: Zhu Zihao <all_but_last@163.com>
|
||||
--- a/doc/manual/local.mk
|
||||
+++ b/doc/manual/local.mk
|
||||
@@ -144,11 +144,6 @@ $(d)/language.json: $(bindir)/nix
|
||||
$(trace-gen) $(dummy-env) NIX_PATH=nix/corepkgs=corepkgs $(bindir)/nix __dump-language > $@.tmp
|
||||
$(trace-gen) $(dummy-env) $(bindir)/nix __dump-language > $@.tmp
|
||||
@mv $@.tmp $@
|
||||
|
||||
-# Generate the HTML manual.
|
||||
@@ -17,18 +17,22 @@ Author: Zhu Zihao <all_but_last@163.com>
|
||||
# Generate 'nix' manpages.
|
||||
install: $(mandir)/man1/nix3-manpages
|
||||
man: doc/manual/generated/man1/nix3-manpages
|
||||
@@ -173,23 +168,4 @@ doc/manual/generated/man1/nix3-manpages: $(d)/src/command-ref/new-cli
|
||||
@@ -173,27 +168,4 @@ doc/manual/generated/man1/nix3-manpages: $(d)/src/command-ref/new-cli
|
||||
done
|
||||
@touch $@
|
||||
|
||||
-$(docdir)/manual/index.html: $(MANUAL_SRCS) $(d)/book.toml $(d)/anchors.jq $(d)/custom.css $(d)/src/SUMMARY.md $(d)/src/command-ref/new-cli $(d)/src/contributing/experimental-feature-descriptions.md $(d)/src/command-ref/conf-file.md $(d)/src/language/builtins.md $(d)/src/language/builtin-constants.md
|
||||
-# the `! -name 'contributing.md'` filter excludes the one place where
|
||||
-# `@docroot@` is to be preserved for documenting the mechanism
|
||||
-# FIXME: maybe contributing guides should live right next to the code
|
||||
-# instead of in the manual
|
||||
-$(docdir)/manual/index.html: $(MANUAL_SRCS) $(d)/book.toml $(d)/anchors.jq $(d)/custom.css $(d)/src/SUMMARY.md $(d)/src/command-ref/new-cli $(d)/src/contributing/experimental-feature-descriptions.md $(d)/src/command-ref/conf-file.md $(d)/src/language/builtins.md $(d)/src/language/builtin-constants.md $(d)/src/favicon.png $(d)/src/favicon.svg
|
||||
- $(trace-gen) \
|
||||
- tmp="$$(mktemp -d)"; \
|
||||
- cp -r doc/manual "$$tmp"; \
|
||||
- find "$$tmp" -name '*.md' | while read -r file; do \
|
||||
- $(call process-includes,$$file,$$file); \
|
||||
- done; \
|
||||
- find "$$tmp" -name '*.md' | while read -r file; do \
|
||||
- find "$$tmp" -name '*.md' ! -name 'documentation.md' | while read -r file; do \
|
||||
- docroot="$$(realpath --relative-to="$$(dirname "$$file")" $$tmp/manual/src)"; \
|
||||
- sed -i "s,@docroot@,$$docroot,g" "$$file"; \
|
||||
- done; \
|
||||
|
||||
Reference in New Issue
Block a user