... some legacy cleanup ... Change-Id: I9e73451256f842e75ddbf1382badaf06c775c755 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2212 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
		
			
				
	
	
		
			22 lines
		
	
	
	
		
			696 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
	
		
			696 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
| # Solutions for Advent of Code 2019, written in Emacs Lisp.
 | |
| #
 | |
| # For each day a new file is created as "solution-day$n.el".
 | |
| { depot, ... }:
 | |
| 
 | |
| let
 | |
|   inherit (builtins) attrNames filter head listToAttrs match readDir;
 | |
|   dir = readDir ./.;
 | |
|   matchSolution = match "solution-(.*)\.el";
 | |
|   isSolution = f: (matchSolution f) != null;
 | |
|   getDay = f: head (matchSolution f);
 | |
| 
 | |
|   solutionFiles = filter (e: dir."${e}" == "regular" && isSolution e) (attrNames dir);
 | |
|   solutions = map (f: let day = getDay f; in {
 | |
|     name = day;
 | |
|     value = depot.nix.writeElispBin {
 | |
|       name = "aoc2019";
 | |
|       deps = p: with p; [ dash s ht ];
 | |
|       src = ./. + ("/" + f);
 | |
|     };
 | |
|   }) solutionFiles;
 | |
| in listToAttrs solutions
 |