In particular, drop the "build-" and "gc-" prefixes which are pointless. So now you can say nix build --no-sandbox instead of nix build --no-build-use-sandbox
		
			
				
	
	
		
			28 lines
		
	
	
	
		
			947 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
	
		
			947 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
source common.sh
 | 
						|
 | 
						|
clearStore
 | 
						|
 | 
						|
if [[ $(uname) != Linux ]]; then exit; fi
 | 
						|
if [[ ! $SHELL =~ /nix/store ]]; then exit; fi
 | 
						|
 | 
						|
chmod -R u+w $TEST_ROOT/store0 || true
 | 
						|
chmod -R u+w $TEST_ROOT/store1 || true
 | 
						|
rm -rf $TEST_ROOT/store0 $TEST_ROOT/store1
 | 
						|
 | 
						|
# FIXME: --option is not passed to build-remote, so have to create a config file.
 | 
						|
export NIX_CONF_DIR=$TEST_ROOT/etc2
 | 
						|
mkdir -p $NIX_CONF_DIR
 | 
						|
echo "
 | 
						|
sandbox-paths = /nix/store
 | 
						|
sandbox-build-dir = /build-tmp
 | 
						|
" > $NIX_CONF_DIR/nix.conf
 | 
						|
 | 
						|
outPath=$(nix-build build-hook.nix --no-out-link -j0 \
 | 
						|
  --option builders "local?root=$TEST_ROOT/store0; local?root=$TEST_ROOT/store1 - - 1 1 foo")
 | 
						|
 | 
						|
cat $outPath/foobar | grep FOOBAR
 | 
						|
 | 
						|
# Ensure that input1 was built on store1 due to the required feature.
 | 
						|
p=$(readlink -f $outPath/input-2)
 | 
						|
(! nix path-info --store local?root=$TEST_ROOT/store0 --all | grep dependencies.builder1.sh)
 | 
						|
nix path-info --store local?root=$TEST_ROOT/store1 --all | grep dependencies.builder1.sh
 |