mirror of
https://github.com/NixOS/nix
synced 2025-06-28 05:21:16 +02:00
-----BEGIN PGP SIGNATURE----- iQFHBAABCAAxFiEEtUHVUwEnDgvPFcpdgXC0cm1xmN4FAmfheacTHGVkb2xzdHJh QGdtYWlsLmNvbQAKCRCBcLRybXGY3kt2B/4tQvs6iDXA12d409ClHbVQjr1d0FLP rv8RxZ7Z4+Jaw8r2ra/I+gpr9juI5ULyEJWqfES72hTvbYPjH1Grsrrjak1tx57E +STs21oEPojE8LXsFH1oZamGPPIIpyQdxCvTgZs1N6cqUfCRQ3Jx97X6E6SIGJDR VqBM4ruSXCY57yT36HqwYydTkxzZHiNP5wwABGfSb7u9pYW5x3r8W7+fQ3udTnCw kCRhA5vnfxIQSlxu4j7dJqSCGzOIPnhYB19bXDV4aPhl4sn3pkBCdMZxPBlCWSwx it0ngMITf+TeiMpVl2TtvMBOHtlGrbhusbyKcsqzFYULGyGOC9ngTAY3 =/JzB -----END PGP SIGNATURE----- Merge tag '2.27.1' into detsys-main Tagging release 2.27.1
31 lines
1 KiB
Bash
31 lines
1 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
source common.sh
|
|
|
|
export NIX_TESTS_CA_BY_DEFAULT=1
|
|
|
|
drvPath=$(nix-instantiate ../simple.nix)
|
|
|
|
nix derivation show "$drvPath" | jq .[] > "$TEST_HOME"/simple.json
|
|
|
|
drvPath2=$(nix derivation add < "$TEST_HOME"/simple.json)
|
|
|
|
[[ "$drvPath" = "$drvPath2" ]]
|
|
|
|
# Content-addressing derivations can be renamed.
|
|
jq '.name = "foo"' < "$TEST_HOME"/simple.json > "$TEST_HOME"/foo.json
|
|
drvPath3=$(nix derivation add --dry-run < "$TEST_HOME"/foo.json)
|
|
# With --dry-run nothing is actually written
|
|
[[ ! -e "$drvPath3" ]]
|
|
|
|
# But the JSON is rejected without the experimental feature
|
|
expectStderr 1 nix derivation add < "$TEST_HOME"/foo.json --experimental-features '' | grepQuiet "experimental Nix feature 'ca-derivations' is disabled"
|
|
|
|
# Without --dry-run it is actually written
|
|
drvPath4=$(nix derivation add < "$TEST_HOME"/foo.json)
|
|
[[ "$drvPath4" = "$drvPath3" ]]
|
|
[[ -e "$drvPath3" ]]
|
|
|
|
# The modified derivation read back as JSON matches
|
|
nix derivation show "$drvPath3" | jq .[] > "$TEST_HOME"/foo-read.json
|
|
diff "$TEST_HOME"/foo.json "$TEST_HOME"/foo-read.json
|