Change-Id: I9f0dec6491906319550c97d4cc15b2cdda4a5ebe Reviewed-on: https://cl.tvl.fyi/c/depot/+/9499 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su> Autosubmit: tazjin <tazjin@tvl.su>
		
			
				
	
	
		
			32 lines
		
	
	
	
		
			855 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
	
		
			855 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
# airsonic is a decent, web-based player UI for subsonic
 | 
						|
{ pkgs, ... }:
 | 
						|
 | 
						|
let
 | 
						|
  env = builtins.toFile "env.js" ''
 | 
						|
    window.env = {
 | 
						|
      SERVER_URL: "https://music.tazj.in",
 | 
						|
    }
 | 
						|
  '';
 | 
						|
 | 
						|
  airsonicDist = pkgs.fetchzip {
 | 
						|
    name = "airsonic-refix";
 | 
						|
 | 
						|
    # from master CI @ f894d5eacebec2f47486f340c8610f446d4f64b3
 | 
						|
    # https://github.com/tamland/airsonic-refix/actions/runs/6150155527
 | 
						|
    url = "https://storage.yandexcloud.net/tazjin-public/airsonic-refix-f894d5ea.zip";
 | 
						|
    sha256 = "02rnh9h7rh22wkghays389yddwbwg7sawmczdxdmjrcnkc7mq2jz";
 | 
						|
 | 
						|
    stripRoot = false;
 | 
						|
    postFetch = "cp ${env} $out/env.js";
 | 
						|
  };
 | 
						|
in
 | 
						|
{
 | 
						|
  services.nginx.virtualHosts."player.tazj.in" = {
 | 
						|
    enableACME = true;
 | 
						|
    forceSSL = true;
 | 
						|
    root = "${airsonicDist}";
 | 
						|
 | 
						|
    # deal with SPA routing requirements
 | 
						|
    locations."/".extraConfig = "try_files $uri /index.html;";
 | 
						|
  };
 | 
						|
}
 |