We have this nice `runExecline` now, so we don’t need to use `runCommand` (which spawns bash) just to write a simple script. Change-Id: I2941ed8c1448fa1d7cc02dc18b24a8a945b2c38b Reviewed-on: https://cl.tvl.fyi/c/depot/+/704 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in> Reviewed-by: BuildkiteCI
		
			
				
	
	
		
			16 lines
		
	
	
	
		
			516 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			16 lines
		
	
	
	
		
			516 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
{ pkgs, lib, ... }:
 | 
						|
 | 
						|
# Create a store path where the executable `exe`
 | 
						|
# is linked to $out/bin/${name}.
 | 
						|
# This is useful for e.g. including it as a “package”
 | 
						|
# in `buildInputs` of a shell.nix.
 | 
						|
#
 | 
						|
# For example, if I have the exeutable /nix/store/…-hello,
 | 
						|
# I can make it into /nix/store/…-binify-hello/bin/hello
 | 
						|
# with `binify { exe = …; name = "hello" }`.
 | 
						|
{ exe, name }:
 | 
						|
 | 
						|
pkgs.runCommandLocal "${name}-bin" {} ''
 | 
						|
  mkdir -p $out/bin
 | 
						|
  ln -sT ${lib.escapeShellArg exe} $out/bin/${lib.escapeShellArg name}
 | 
						|
''
 |