... 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
 |