~ruther/guix-local

554d46882bc4443dcebbba5aac70b016537d0975 — Zhu Zihao 3 years ago 4236e24
gnu: nix: Update to 2.16.0.

* gnu/packages/package-management.scm (nix): Update to 2.16.0.
[inputs]: Add nlohmann-json.
[native-inputs]: Add rapidcheck.
[arguments]<#:phases>: In phase "check", change the value of environment
variable  "NIX_STORE" to "/nix/store" temporarily.

* gnu/packages/patches/nix-dont-build-html-doc.diff: Update.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
2 files changed, 45 insertions(+), 13 deletions(-)

M gnu/packages/package-management.scm
M gnu/packages/patches/nix-dont-build-html-doc.diff
M gnu/packages/package-management.scm => gnu/packages/package-management.scm +20 -5
@@ 20,7 20,7 @@
;;; Copyright © 2021 Ivan Gankevich <i.gankevich@spbu.ru>
;;; Copyright © 2021, 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 John Kehayias <john.kehayias@protonmail.com>
;;; Copyright © 2022 Zhu Zihao <all_but_last@163.com>
;;; Copyright © 2022, 2023 Zhu Zihao <all_but_last@163.com>
;;;
;;; This file is part of GNU Guix.
;;;


@@ 56,6 56,7 @@
  #:use-module (gnu packages compression)
  #:use-module (gnu packages cmake)
  #:use-module (gnu packages cpio)
  #:use-module (gnu packages cpp)
  #:use-module (gnu packages crypto)
  #:use-module (gnu packages curl)
  #:use-module (gnu packages databases)


@@ 731,7 732,7 @@ high-performance computing} clusters.")
(define-public nix
  (package
    (name "nix")
    (version "2.5.1")
    (version "2.16.0")
    (source
     (origin
       (method git-fetch)


@@ 740,7 741,7 @@ high-performance computing} clusters.")
             (commit version)))
       (file-name (git-file-name name version))
       (sha256
        (base32 "1m8rmv8i6lg83pmalvjlq1fn8mcghn3ngjv3kw1kqsa45ymj5sqq"))
        (base32 "0jizpci4zspqpqqy3n780m4wh8dzhfywaiz953xv70c7in810dra"))
       (patches
        (search-patches "nix-dont-build-html-doc.diff"))))
    (build-system gnu-build-system)


@@ 757,7 758,19 @@ high-performance computing} clusters.")
                (apply invoke "make" "install"
                       (string-append "sysconfdir=" etc)
                       (string-append "profiledir=" etc "/profile.d")
                       make-flags)))))))
                       make-flags))))
          (replace 'check
            (lambda args
              ;; Some test expect environment variable NIX_STORE to be
              ;; "/nix/store"
              (let ((original-NIX_STORE (getenv "NIX_STORE")))
                (dynamic-wind
                  (lambda ()
                    (setenv "NIX_STORE" "/nix/store"))
                  (lambda ()
                    (apply (assoc-ref %standard-phases 'check) args))
                  (lambda ()
                    (setenv "NIX_STORE" original-NIX_STORE)))))))))
    (native-inputs
     (list autoconf
           autoconf-archive


@@ 767,7 780,8 @@ high-performance computing} clusters.")
           googletest
           jq
           libtool
           pkg-config))
           pkg-config
           rapidcheck))
    (inputs
     (append (list boost
                   brotli


@@ 779,6 793,7 @@ high-performance computing} clusters.")
                   libseccomp
                   libsodium
                   lowdown
                   nlohmann-json
                   openssl
                   sqlite
                   xz

M gnu/packages/patches/nix-dont-build-html-doc.diff => gnu/packages/patches/nix-dont-build-html-doc.diff +25 -8
@@ 3,24 3,41 @@ We can't simply disable it because we need manpages.

Author: Zhu Zihao <all_but_last@163.com>

diff --git a/doc/manual/local.mk b/doc/manual/local.mk
index e43d9f2fb..c323d1847 100644
--- a/doc/manual/local.mk
+++ b/doc/manual/local.mk
@@ -69,8 +69,6 @@ $(d)/builtins.json: $(bindir)/nix
@@ -138,11 +138,6 @@
 	$(trace-gen) $(dummy-env) NIX_PATH=nix/corepkgs=corepkgs $(bindir)/nix __dump-builtins > $@.tmp
 	@mv $@.tmp $@
 
-# Generate the HTML manual.
-.PHONY: manual-html
-manual-html: $(docdir)/manual/index.html
-install: $(docdir)/manual/index.html
 
-
 # Generate 'nix' manpages.
 install: $(mandir)/man1/nix3-manpages
@@ -94,7 +92,5 @@ doc/manual/generated/man1/nix3-manpages: $(d)/src/command-ref/new-cli
 man: doc/manual/generated/man1/nix3-manpages
@@ -167,23 +162,4 @@
 	done
 	@touch $@
 
-$(docdir)/manual/index.html: $(MANUAL_SRCS) $(d)/book.toml $(d)/custom.css $(d)/src/SUMMARY.md $(d)/src/command-ref/new-cli $(d)/src/command-ref/conf-file.md $(d)/src/expressions/builtins.md $(call rwildcard, $(d)/src, *.md)
-	$(trace-gen) RUST_LOG=warn mdbook build doc/manual -d $(DESTDIR)$(docdir)/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
-	$(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 \
-			docroot="$$(realpath --relative-to="$$(dirname "$$file")" $$tmp/manual/src)"; \
-			sed -i "s,@docroot@,$$docroot,g" "$$file"; \
-		done; \
-		set -euo pipefail; \
-		RUST_LOG=warn mdbook build "$$tmp/manual" -d $(DESTDIR)$(docdir)/manual.tmp 2>&1 \
-			| { grep -Fv "because fragment resolution isn't implemented" || :; }; \
-		rm -rf "$$tmp/manual"
-	@rm -rf $(DESTDIR)$(docdir)/manual
-	@mv $(DESTDIR)$(docdir)/manual.tmp/html $(DESTDIR)$(docdir)/manual
-	@rm -rf $(DESTDIR)$(docdir)/manual.tmp
-
 endif