Skip to content
Snippets Groups Projects
Commit a626d202 authored by Jakub Jirutka's avatar Jakub Jirutka :flag_ua:
Browse files

testing/nix: upgrade to 2.9.2

parent 0f9cfc80
No related branches found
No related tags found
No related merge requests found
# Contributor: Jakub Jirutka <jakub@jirutka.cz> # Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz> # Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=nix pkgname=nix
pkgver=2.3.16 pkgver=2.9.2
pkgrel=1 pkgrel=0
pkgdesc="The purely functional package manager" pkgdesc="The purely functional package manager"
url="https://nixos.org/nix/" url="https://nixos.org/nix/"
arch="x86 x86_64 aarch64" # supported platforms arch="x86 x86_64 aarch64" # supported platforms
license="LGPL-2.1-or-later" license="LGPL-2.1-or-later"
depends="ca-certificates" depends="ca-certificates"
depends_dev="boost-dev" depends_dev="
boost-dev
gc-dev
"
makedepends=" makedepends="
$depends_dev $depends_dev
autoconf
autoconf-archive
automake
bash bash
bison
brotli-dev brotli-dev
bsd-compat-headers
bzip2-dev bzip2-dev
curl-dev curl-dev
gc-dev editline-dev
openssl-dev flex
gtest-dev
jq
libarchive-dev
libseccomp-dev libseccomp-dev
libsodium-dev libsodium-dev
libtool
lowdown
lowdown-dev
mdbook
nlohmann-json
openssl-dev
sqlite-dev sqlite-dev
xz xz
xz-dev xz-dev
editline-dev
" "
pkggroups="nix nixbld" pkggroups="nix nixbld"
install="$pkgname.pre-install" install="$pkgname.pre-install"
subpackages="$pkgname-dev $pkgname-openrc $pkgname-doc" subpackages="
source="https://nixos.org/releases/nix/nix-$pkgver/nix-$pkgver.tar.xz $pkgname-dev
$pkgname-openrc
$pkgname-doc
$pkgname-bash-completion
$pkgname-fish-completion
$pkgname-zsh-completion
"
source="https://github.com/NixOS/nix/archive/$pkgver/$pkgname-$pkgver.tar.gz
fix-docs-build.patch
nix-daemon.initd nix-daemon.initd
nix-profile.sh nix-profile.sh
" "
case "$CARCH" in
x86*) makedepends="$makedepends libcpuid-dev";;
esac
prepare() {
default_prepare
./bootstrap.sh
}
build() { build() {
# NOTE: /nix/var is recommended by upstream and we need /nix anyway. # NOTE: /nix/var is recommended by upstream and we need /nix anyway.
bash ./configure \ bash ./configure \
...@@ -45,6 +79,10 @@ build() { ...@@ -45,6 +79,10 @@ build() {
make make
} }
check() {
make check
}
package() { package() {
make DESTDIR="$pkgdir" install make DESTDIR="$pkgdir" install
...@@ -55,10 +93,15 @@ package() { ...@@ -55,10 +93,15 @@ package() {
rm -R usr/lib/systemd rm -R usr/lib/systemd
rm etc/profile.d/* rm etc/profile.d/*
# Remove HTML docs.
rm -rf usr/share/doc
mkdir -p usr/sbin mkdir -p usr/sbin
rm -f usr/bin/nix-daemon rm -f usr/bin/nix-daemon
ln -s ../bin/nix usr/sbin/nix-daemon ln -s ../bin/nix usr/sbin/nix-daemon
mv usr/share/fish/vendor_completions.d usr/share/fish/completions
install -m 755 -D "$srcdir"/nix-profile.sh etc/profile.d/nix.sh install -m 755 -D "$srcdir"/nix-profile.sh etc/profile.d/nix.sh
install -m 755 -D "$srcdir"/nix-daemon.initd etc/init.d/nix-daemon install -m 755 -D "$srcdir"/nix-daemon.initd etc/init.d/nix-daemon
...@@ -93,7 +136,8 @@ package() { ...@@ -93,7 +136,8 @@ package() {
} }
sha512sums=" sha512sums="
562d3caa7fed2af7432a114d12a016b68b1b42eeef7a7ae6181af4d5ff20785c8c39a13027ec9b9f4e14143f032992ead22ab7dc08f15ba31fa6288f212df694 nix-2.3.16.tar.xz 88ce3b9c06012b53923ef5b20260e0d7964979a38a393cf9915133f5ccb590dec46b1ce86d6c8f71a1f65872d3f2c47c96077240c8375bfdbee9916feab28b6a nix-2.9.2.tar.gz
238267bf5680e7b68904e746c2443b20068aee33561ad7f4b2ddd6913ac1fce7703ed8f3d3170f3a8005a56aaa7d8b826fbd42af2855631204cc3cea191d0674 fix-docs-build.patch
9e4568db987fbae5097f7bb086e8ad51742c2d229703104fb7e6f240ffb0ca72e57dc305fb238bcee4ec8002d780007af60f241b1f32b6aa413dd579d9c59e75 nix-daemon.initd 9e4568db987fbae5097f7bb086e8ad51742c2d229703104fb7e6f240ffb0ca72e57dc305fb238bcee4ec8002d780007af60f241b1f32b6aa413dd579d9c59e75 nix-daemon.initd
0fb5b9ff2f593dca22251b342494ea0b61380d8f905d85855282d259c112aa2a918d9785aa08f847c693a939ebae9fbefcd4e417ad93283a142e066105cc87b5 nix-profile.sh 0fb5b9ff2f593dca22251b342494ea0b61380d8f905d85855282d259c112aa2a918d9785aa08f847c693a939ebae9fbefcd4e417ad93283a142e066105cc87b5 nix-profile.sh
" "
Patch-Source: https://github.com/NixOS/nix/pull/5145 (updated)
--
From d7c09d119f9c85ae00c27eed2060280f77c3c455 Mon Sep 17 00:00:00 2001
From: Federico Pellegrin <fede@evolware.org>
Date: Tue, 17 Aug 2021 04:26:41 +0200
Subject: [PATCH] Docs build: depend on locally built nix executable and not
installed one
Previously many of the documentation targets were depending on
$(bindir)/nix which is the installed version. This meant that its
install rules would be triggered (which in chain would also trigger
the install of libraries, as reported in #5140). Therefore a build
of the documentation without an installation would not be possible
(which apart from doing unwanted operations it may also generate
permission problems for example).
The fix makes the rules depend on $(nix_DIR)/nix instead, which is
the executable in the build tree.
---
doc/manual/local.mk | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/doc/manual/local.mk b/doc/manual/local.mk
--- a/doc/manual/local.mk
+++ b/doc/manual/local.mk
@@ -20,7 +20,7 @@
NIX_STATE_DIR=/dummy \
NIX_CONFIG='cores = 0'
-nix-eval = $(dummy-env) $(bindir)/nix eval --experimental-features nix-command -I nix/corepkgs=corepkgs --store dummy:// --impure --raw
+nix-eval = $(dummy-env) $(nix_DIR)/nix eval --experimental-features nix-command -I nix/corepkgs=corepkgs --store dummy:// --impure --raw
$(d)/%.1: $(d)/src/command-ref/%.md
@printf "Title: %s\n\n" "$$(basename $@ .1)" > $^.tmp
@@ -44,31 +44,31 @@
$(trace-gen) cat doc/manual/src/SUMMARY.md.in | while IFS= read line; do if [[ $$line = @manpages@ ]]; then cat doc/manual/src/command-ref/new-cli/SUMMARY.md; else echo "$$line"; fi; done > $@.tmp
@mv $@.tmp $@
-$(d)/src/command-ref/new-cli: $(d)/nix.json $(d)/generate-manpage.nix $(bindir)/nix
+$(d)/src/command-ref/new-cli: $(d)/nix.json $(d)/generate-manpage.nix $(nix_DIR)/nix
@rm -rf $@
$(trace-gen) $(nix-eval) --write-to $@ --expr 'import doc/manual/generate-manpage.nix { command = builtins.readFile $<; renderLinks = true; }'
-$(d)/src/command-ref/conf-file.md: $(d)/conf-file.json $(d)/generate-options.nix $(d)/src/command-ref/conf-file-prefix.md $(bindir)/nix
+$(d)/src/command-ref/conf-file.md: $(d)/conf-file.json $(d)/generate-options.nix $(d)/src/command-ref/conf-file-prefix.md $(nix_DIR)/nix
@cat doc/manual/src/command-ref/conf-file-prefix.md > $@.tmp
$(trace-gen) $(nix-eval) --expr 'import doc/manual/generate-options.nix (builtins.fromJSON (builtins.readFile $<))' >> $@.tmp
@mv $@.tmp $@
-$(d)/nix.json: $(bindir)/nix
- $(trace-gen) $(dummy-env) $(bindir)/nix __dump-args > $@.tmp
+$(d)/nix.json: $(nix_DIR)/nix
+ $(trace-gen) $(dummy-env) $(nix_DIR)/nix __dump-args > $@.tmp
@mv $@.tmp $@
-$(d)/conf-file.json: $(bindir)/nix
- $(trace-gen) $(dummy-env) $(bindir)/nix show-config --json --experimental-features nix-command > $@.tmp
+$(d)/conf-file.json: $(nix_DIR)/nix
+ $(trace-gen) $(dummy-env) $(nix_DIR)/nix show-config --json --experimental-features nix-command > $@.tmp
@mv $@.tmp $@
-$(d)/src/expressions/builtins.md: $(d)/builtins.json $(d)/generate-builtins.nix $(d)/src/expressions/builtins-prefix.md $(bindir)/nix
+$(d)/src/expressions/builtins.md: $(d)/builtins.json $(d)/generate-builtins.nix $(d)/src/expressions/builtins-prefix.md $(nix_DIR)/nix
@cat doc/manual/src/expressions/builtins-prefix.md > $@.tmp
$(trace-gen) $(nix-eval) --expr 'import doc/manual/generate-builtins.nix (builtins.fromJSON (builtins.readFile $<))' >> $@.tmp
@cat doc/manual/src/expressions/builtins-suffix.md >> $@.tmp
@mv $@.tmp $@
-$(d)/builtins.json: $(bindir)/nix
- $(trace-gen) $(dummy-env) NIX_PATH=nix/corepkgs=corepkgs $(bindir)/nix __dump-builtins > $@.tmp
+$(d)/builtins.json: $(nix_DIR)/nix
+ $(trace-gen) $(dummy-env) NIX_PATH=nix/corepkgs=corepkgs $(nix_DIR)/nix __dump-builtins > $@.tmp
@mv $@.tmp $@
# Generate the HTML manual.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment