30 lines
		
	
	
	
		
			633 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			30 lines
		
	
	
	
		
			633 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
{
 | 
						|
  config,
 | 
						|
  lib,
 | 
						|
  pkgs,
 | 
						|
  ...
 | 
						|
}:
 | 
						|
with lib; let
 | 
						|
  cfg = config.programs.mapillary-uploader;
 | 
						|
in {
 | 
						|
  options.programs.mapillary-uploader = {
 | 
						|
    enable = mkEnableOption "Mapillary Desktop Uploader";
 | 
						|
  };
 | 
						|
 | 
						|
  config = mkIf cfg.enable (mkMerge [
 | 
						|
    {
 | 
						|
      home.packages = [pkgs.mapillary-uploader];
 | 
						|
    }
 | 
						|
    (
 | 
						|
      mkIf config.impermanence.enable {
 | 
						|
        home.persistence."/persist${config.home.homeDirectory}" = {
 | 
						|
          directories = [
 | 
						|
            "${config.xdg.configHome}/mapillary-uploader"
 | 
						|
            "${config.xdg.dataHome}/mapillary-uploader"
 | 
						|
          ];
 | 
						|
          allowOther = true;
 | 
						|
        };
 | 
						|
      }
 | 
						|
    )
 | 
						|
  ]);
 | 
						|
}
 |