Factor out commonality between release.nix and shell.nix
This commit is contained in:
		
							parent
							
								
									ca14b14200
								
							
						
					
					
						commit
						c04bca3401
					
				
					 3 changed files with 43 additions and 48 deletions
				
			
		|  | @ -1,9 +1,11 @@ | |||
| { pkgs }: | ||||
| 
 | ||||
| with pkgs; | ||||
| 
 | ||||
| rec { | ||||
|   # Use "busybox-sandbox-shell" if present, | ||||
|   # if not (legacy) fallback and hope it's sufficient. | ||||
|   sh = pkgs.busybox-sandbox-shell or (pkgs.busybox.override { | ||||
|   sh = pkgs.busybox-sandbox-shell or (busybox.override { | ||||
|     useMusl = true; | ||||
|     enableStatic = true; | ||||
|     enableMinimal = true; | ||||
|  | @ -30,7 +32,41 @@ rec { | |||
|   configureFlags = | ||||
|     [ "--disable-init-state" | ||||
|       "--enable-gc" | ||||
|     ] ++ pkgs.lib.optionals pkgs.stdenv.isLinux [ | ||||
|     ] ++ lib.optionals stdenv.isLinux [ | ||||
|       "--with-sandbox-shell=${sh}/bin/busybox" | ||||
|     ]; | ||||
| 
 | ||||
|   tarballDeps = | ||||
|     [ bison | ||||
|       flex | ||||
|       libxml2 | ||||
|       libxslt | ||||
|       docbook5 | ||||
|       docbook5_xsl | ||||
|       autoconf-archive | ||||
|       autoreconfHook | ||||
|     ]; | ||||
| 
 | ||||
|   buildDeps = | ||||
|     [ curl | ||||
|       bzip2 xz brotli | ||||
|       openssl pkgconfig sqlite boehmgc | ||||
|       boost | ||||
| 
 | ||||
|       # Tests | ||||
|       git | ||||
|       mercurial | ||||
|     ] | ||||
|     ++ lib.optional stdenv.isLinux libseccomp | ||||
|     ++ lib.optional (stdenv.isLinux || stdenv.isDarwin) libsodium | ||||
|     ++ lib.optional (stdenv.isLinux || stdenv.isDarwin) | ||||
|       (aws-sdk-cpp.override { | ||||
|         apis = ["s3"]; | ||||
|         customMemoryManagement = false; | ||||
|       }); | ||||
| 
 | ||||
|   perlDeps = | ||||
|     [ perl | ||||
|       perlPackages.DBDSQLite | ||||
|     ]; | ||||
| } | ||||
|  |  | |||
							
								
								
									
										28
									
								
								release.nix
									
										
									
									
									
								
							
							
						
						
									
										28
									
								
								release.nix
									
										
									
									
									
								
							|  | @ -14,6 +14,8 @@ let | |||
|     tarball = | ||||
|       with pkgs; | ||||
| 
 | ||||
|       with import ./release-common.nix { inherit pkgs; }; | ||||
| 
 | ||||
|       releaseTools.sourceTarball { | ||||
|         name = "nix-tarball"; | ||||
|         version = builtins.readFile ./version; | ||||
|  | @ -21,13 +23,7 @@ let | |||
|         src = nix; | ||||
|         inherit officialRelease; | ||||
| 
 | ||||
|         buildInputs = | ||||
|           [ curl bison flex libxml2 libxslt | ||||
|             bzip2 xz brotli | ||||
|             pkgconfig sqlite libsodium boehmgc | ||||
|             docbook5 docbook5_xsl | ||||
|             autoconf-archive | ||||
|           ] ++ lib.optional stdenv.isLinux libseccomp; | ||||
|         buildInputs = tarballDeps ++ buildDeps; | ||||
| 
 | ||||
|         configureFlags = "--enable-gc"; | ||||
| 
 | ||||
|  | @ -67,23 +63,7 @@ let | |||
|         name = "nix"; | ||||
|         src = tarball; | ||||
| 
 | ||||
|         buildInputs = | ||||
|           [ curl | ||||
|             bzip2 xz brotli | ||||
|             openssl pkgconfig sqlite boehmgc | ||||
|             boost | ||||
| 
 | ||||
|             # Tests | ||||
|             git | ||||
|             mercurial | ||||
|           ] | ||||
|           ++ lib.optional stdenv.isLinux libseccomp | ||||
|           ++ lib.optional (stdenv.isLinux || stdenv.isDarwin) libsodium | ||||
|           ++ lib.optional (stdenv.isLinux || stdenv.isDarwin) | ||||
|             (aws-sdk-cpp.override { | ||||
|               apis = ["s3"]; | ||||
|               customMemoryManagement = false; | ||||
|             }); | ||||
|         buildInputs = buildDeps; | ||||
| 
 | ||||
|         configureFlags = configureFlags ++ | ||||
|           [ "--sysconfdir=/etc" ]; | ||||
|  |  | |||
							
								
								
									
										23
									
								
								shell.nix
									
										
									
									
									
								
							
							
						
						
									
										23
									
								
								shell.nix
									
										
									
									
									
								
							|  | @ -7,28 +7,7 @@ with import ./release-common.nix { inherit pkgs; }; | |||
| (if useClang then clangStdenv else stdenv).mkDerivation { | ||||
|   name = "nix"; | ||||
| 
 | ||||
|   buildInputs = | ||||
|     [ curl bison flex libxml2 libxslt | ||||
|       bzip2 xz brotli | ||||
|       pkgconfig sqlite libsodium boehmgc | ||||
|       docbook5 docbook5_xsl | ||||
|       autoconf-archive | ||||
|       (aws-sdk-cpp.override { | ||||
|         apis = ["s3"]; | ||||
|         customMemoryManagement = false; | ||||
|       }) | ||||
|       autoreconfHook | ||||
|       boost | ||||
| 
 | ||||
|       # For nix-perl | ||||
|       perl | ||||
|       perlPackages.DBDSQLite | ||||
| 
 | ||||
|       # Tests | ||||
|       git | ||||
|       mercurial | ||||
|     ] | ||||
|     ++ lib.optional stdenv.isLinux libseccomp; | ||||
|   buildInputs = buildDeps ++ tarballDeps ++ perlDeps; | ||||
| 
 | ||||
|   inherit configureFlags; | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue