forked from fabian/nix
		
	
		
			
				
	
	
		
			42 lines
		
	
	
	
		
			989 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			42 lines
		
	
	
	
		
			989 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
| {
 | |
|   lib,
 | |
|   pkgs,
 | |
|   ...
 | |
| }:
 | |
| with lib; {
 | |
|   services = {
 | |
|     syncthing = {
 | |
|       enable = true;
 | |
|       systemService = true;
 | |
|       overrideFolders = false;
 | |
|       overrideDevices = false;
 | |
|       openDefaultPorts = true;
 | |
|       guiAddress = "127.0.0.1:8384";
 | |
|       settings.options.urAccepted = -1;
 | |
|       dataDir = "/mnt/export2179/syncthing";
 | |
|       relay = {
 | |
|         enable = true;
 | |
|         pools = [];
 | |
|         providedBy = "vps.posixlycorrect.com";
 | |
|       };
 | |
|     };
 | |
|   };
 | |
| 
 | |
|   # calibre web stuff. make this better someday, this is pure duct-tape
 | |
|   users.groups."calybresync".members = ["syncthing" "calibre-web"];
 | |
|   systemd = {
 | |
|     services."calybreown" = {
 | |
|       script = ''
 | |
|         chgrp -R calybresync /var/lib/calibre-web/calibre_library
 | |
|         chmod -R g+w /var/lib/calibre-web/calibre_library
 | |
|       '';
 | |
|       serviceConfig.Type = "oneshot";
 | |
|     };
 | |
|     timers."calybreown" = {
 | |
|       wantedBy = [
 | |
|         "timers.target"
 | |
|       ];
 | |
|       timerConfig.OnCalendar = "*-*-* *:00/30:00";
 | |
|     };
 | |
|   };
 | |
| }
 |