Splits //ops/nixos into: * //ops/nixos.nix - utility functions for building systems * //ops/machines - shared machine definitions (read by readTree) * //ops/modules - shared NixOS modules (skipped by readTree) This simplifies working with the configuration fixpoint in whitby, and is overall a bit more in line with how NixOS systems in user folders currently work. Change-Id: I1322ec5cc76c0207c099c05d44828a3df0b3ffc1 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2931 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org> Reviewed-by: glittershark <grfn@gws.fyi>
		
			
				
	
	
		
			35 lines
		
	
	
	
		
			841 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
	
		
			841 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
{ depot, ... }:
 | 
						|
 | 
						|
{
 | 
						|
  imports = [
 | 
						|
    ./base.nix
 | 
						|
  ];
 | 
						|
 | 
						|
  config = {
 | 
						|
    services.nginx.virtualHosts.cgit = {
 | 
						|
      serverName = "code.tvl.fyi";
 | 
						|
      serverAliases = [ "code.tvl.su" ];
 | 
						|
      enableACME = true;
 | 
						|
      forceSSL = true;
 | 
						|
 | 
						|
      extraConfig = ''
 | 
						|
        # Serve the rendered Tvix component SVG.
 | 
						|
        #
 | 
						|
        # TODO(tazjin): Implement a way of serving this dynamically
 | 
						|
        location = /about/tvix/docs/component-flow.svg {
 | 
						|
            alias ${depot.tvix.docs.svg}/component-flow.svg;
 | 
						|
        }
 | 
						|
 | 
						|
        # Static assets must always hit the root.
 | 
						|
        location ~ ^/(favicon\.ico|cgit\.(css|png))$ {
 | 
						|
           proxy_pass http://localhost:2448;
 | 
						|
        }
 | 
						|
 | 
						|
        # Everything else hits the depot directly.
 | 
						|
        location / {
 | 
						|
            proxy_pass http://localhost:2448/cgit.cgi/depot/;
 | 
						|
        }
 | 
						|
      '';
 | 
						|
    };
 | 
						|
  };
 | 
						|
}
 |