| 
									
										
										
										
											2010-02-15 23:27:51 +00:00
										 |  |  | source $stdenv/setup | 
					
						
							|  |  |  | set -x | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | sources_=($sources) | 
					
						
							|  |  |  | targets_=($targets) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | echo $objects | 
					
						
							|  |  |  | objects=($objects) | 
					
						
							|  |  |  | symlinks=($symlinks) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Remove the initial slash from a path, since genisofs likes it that way. | 
					
						
							|  |  |  | stripSlash() { | 
					
						
							|  |  |  |     res="$1" | 
					
						
							|  |  |  |     if test "${res:0:1}" = /; then res=${res:1}; fi | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | touch pathlist | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Add the individual files. | 
					
						
							|  |  |  | for ((i = 0; i < ${#targets_[@]}; i++)); do | 
					
						
							|  |  |  |     stripSlash "${targets_[$i]}" | 
					
						
							|  |  |  |     mkdir -p "$(dirname "$res")" | 
					
						
							|  |  |  |     cp -a "${sources_[$i]}" "$res" | 
					
						
							|  |  |  | done | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Add the closures of the top-level store objects. | 
					
						
							|  |  |  | mkdir -p nix/store | 
					
						
							|  |  |  | storePaths=$(perl $pathsFromGraph closure-*) | 
					
						
							|  |  |  | for i in $storePaths; do | 
					
						
							|  |  |  |     cp -a "$i" "${i:1}" | 
					
						
							|  |  |  | done | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-12-11 22:54:46 +01:00
										 |  |  | # TODO tar ruxo | 
					
						
							| 
									
										
										
										
											2010-02-15 23:27:51 +00:00
										 |  |  | # Also include a manifest of the closures in a format suitable for | 
					
						
							|  |  |  | # nix-store --load-db. | 
					
						
							|  |  |  | printRegistration=1 perl $pathsFromGraph closure-* > nix-path-registration | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Add symlinks to the top-level store objects. | 
					
						
							|  |  |  | for ((n = 0; n < ${#objects[*]}; n++)); do | 
					
						
							|  |  |  |     object=${objects[$n]} | 
					
						
							|  |  |  |     symlink=${symlinks[$n]} | 
					
						
							|  |  |  |     if test "$symlink" != "none"; then | 
					
						
							|  |  |  |         mkdir -p $(dirname ./$symlink) | 
					
						
							|  |  |  |         ln -s $object ./$symlink | 
					
						
							|  |  |  |     fi | 
					
						
							|  |  |  | done | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-12-11 22:54:46 +01:00
										 |  |  | $extraCommands | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-06-30 14:56:10 +02:00
										 |  |  | mkdir -p $out/tarball | 
					
						
							| 
									
										
										
										
											2010-02-15 23:27:51 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-12-20 15:15:06 +01:00
										 |  |  | rm env-vars | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-01-01 01:36:45 +01:00
										 |  |  | tar --sort=name --mtime='@1' --owner=0 --group=0 --numeric-owner -cvJf $out/tarball/$fileName.tar.xz * $extraArgs | 
					
						
							| 
									
										
										
										
											2010-02-15 23:27:51 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-06-30 14:56:10 +02:00
										 |  |  | mkdir -p $out/nix-support | 
					
						
							| 
									
										
										
										
											2010-02-15 23:27:51 +00:00
										 |  |  | echo $system > $out/nix-support/system | 
					
						
							| 
									
										
										
										
											2011-04-12 07:45:54 +00:00
										 |  |  | echo "file system-tarball $out/tarball/$fileName.tar.xz" > $out/nix-support/hydra-build-products |