Change-Id: I6c6847fac56f0a9a1a2209792e00a3aec5e672b9 Reviewed-on: https://cl.tvl.fyi/c/depot/+/10809 Autosubmit: aspen <root@gws.fyi> Reviewed-by: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI Reviewed-by: lukegb <lukegb@tvl.fyi>
		
			
				
	
	
		
			23 lines
		
	
	
	
		
			476 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			23 lines
		
	
	
	
		
			476 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
| { config, lib, pkgs, ... }:
 | |
| 
 | |
| with lib;
 | |
| 
 | |
| {
 | |
|   options = {
 | |
|     programs.zsh.functions = mkOption {
 | |
|       description = "An attribute set that maps function names to their source";
 | |
|       default = { };
 | |
|       type = with types; attrsOf (either str path);
 | |
|     };
 | |
|   };
 | |
| 
 | |
|   config.programs.zsh.initExtra = concatStringsSep "\n" (
 | |
|     mapAttrsToList
 | |
|       (name: funSrc: ''
 | |
|         function ${name}() {
 | |
|           ${funSrc}
 | |
|         }
 | |
|       '')
 | |
|       config.programs.zsh.functions
 | |
|   );
 | |
| }
 |