35 lines
		
	
	
		
			638 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			638 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
| { lib, ... }:
 | |
| 
 | |
| let
 | |
|   inherit (lib) mkOption types;
 | |
| in
 | |
| rec {
 | |
|   mkOpt = type: default:
 | |
|     mkOption { inherit type default; };
 | |
| 
 | |
|   mkOpt' = type: default: description:
 | |
|     mkOption { inherit type default description; };
 | |
| 
 | |
|   mkBoolOpt = default: mkOption {
 | |
|     inherit default;
 | |
|     type = types.bool;
 | |
|     example = true;
 | |
|   };
 | |
| 
 | |
|   mkStringOpt = default: mkOption {
 | |
|     inherit default;
 | |
|     type = types.lines;
 | |
|     example = "";
 | |
|   };
 | |
| 
 | |
|   mkListOfStringOpt = default: mkOption {
 | |
|     inherit default;
 | |
|     type = types.listOf types.lines;
 | |
|     example = [ "a" "b" "c" ];
 | |
|   };
 | |
| 
 | |
|   mkPath = path:
 | |
|     if path != null
 | |
|     then toString path
 | |
|     else "";
 | |
| } |