nix-helpers: 0395381195ee20dfb9fc1e5dc426c0e9b2ce22f3
1: { isBroken, lib, runCommand, withNix }:
2:
3: with import ./util.nix { inherit lib; };
4: with {
5: testStillNeeded = if needWorkaround then {
6: workaroundStillNeeded = isBroken (runCommand "withNix-workaround-needed"
7: (withNix { NIX_REMOTE = "daemon"; }) ''
8: nix-build -E '(import <nixpkgs> {}).hello'
9: mkdir "$out"
10: '');
11: } else
12: { };
13: };
14: testStillNeeded // {
15: canEvalNumbers = runCommand "withNix-can-eval-number" (withNix { }) ''
16: X=$(nix-instantiate --eval -E '1 + 2')
17: [[ "$X" -eq 3 ]] || {
18: echo "Expected 3, got '$X'" 1>&2
19: exit 1
20: }
21: mkdir "$out"
22: '';
23: canEvalDerivations = runCommand "withNix-can-eval-derivation" (withNix { }) ''
24: X=$(nix-instantiate --eval -E '(import <nixpkgs> {}).hello') || {
25: echo "$X" 1>&2
26: exit 1
27: }
28: mkdir "$out"
29: '';
30: canInstantiate = runCommand "withNix-can-instantiate" (withNix { }) ''
31: unset NIX_LOG_FD
32: nix-instantiate -E '(import <nixpkgs> {}).hello'
33: mkdir "$out"
34: '';
35: canRealise = runCommand "withNix-can-realise" (withNix { }) ''
36: DRV=$(nix-instantiate -E '(import <nixpkgs> {}).hello') || {
37: echo "$DRV" 1>&2
38: exit 1
39: }
40: nix-store --realise "$DRV"
41: mkdir "$out"
42: '';
43: canShell = runCommand "withNix-can-shell" (withNix { }) ''
44: X=$(nix-shell -p hello --run 'echo 42') || {
45: echo "$X" 1>&2
46: exit 1
47: }
48: [[ "$X" -eq 42 ]] || {
49: echo "Expected 42 got '$X'" 1>&2
50: exit 1
51: }
52: mkdir "$out"
53: '';
54: canBuildHello = runCommand "withNix-can-build-hello" (withNix { }) ''
55: nix-build --show-trace --no-out-link -E 'with import <nixpkgs> {}; hello'
56: mkdir "$out"
57: '';
58: canAccessFiles = runCommand "withNix-can-access-files" (withNix { }) ''
59: echo "<nixpkgs>" > ./test.nix
60: nix-build --show-trace -E '(import (import ./test.nix) {}).hello'
61: mkdir "$out"
62: '';
63: }
Generated by git2html.