voyager: add time machine, cleanup
This commit is contained in:
		
							parent
							
								
									8838b0ecf7
								
							
						
					
					
						commit
						57062782a0
					
				@ -48,7 +48,6 @@
 | 
				
			|||||||
            ./hosts/voyager/configuration.nix
 | 
					            ./hosts/voyager/configuration.nix
 | 
				
			||||||
            voyager-addons.nixosModules.default
 | 
					            voyager-addons.nixosModules.default
 | 
				
			||||||
            sops-nix.nixosModules.sops
 | 
					            sops-nix.nixosModules.sops
 | 
				
			||||||
            matrix-synapse-next.nixosModules.synapse
 | 
					 | 
				
			||||||
          ];
 | 
					          ];
 | 
				
			||||||
        };
 | 
					        };
 | 
				
			||||||
        edison = nixpkgs.lib.nixosSystem {
 | 
					        edison = nixpkgs.lib.nixosSystem {
 | 
				
			||||||
 | 
				
			|||||||
@ -13,17 +13,18 @@
 | 
				
			|||||||
      ./services/snappymail.nix
 | 
					      ./services/snappymail.nix
 | 
				
			||||||
      #./vms.nix
 | 
					      #./vms.nix
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      ./services/nginx
 | 
					 | 
				
			||||||
      ./services/postgres.nix
 | 
					 | 
				
			||||||
      ./services/kanidm.nix
 | 
					 | 
				
			||||||
      ./services/jellyfin.nix
 | 
					 | 
				
			||||||
      ./services/transmission.nix
 | 
					 | 
				
			||||||
      ./services/metrics
 | 
					 | 
				
			||||||
      ./services/gitea.nix
 | 
					 | 
				
			||||||
      ./services/vaultwarden.nix
 | 
					 | 
				
			||||||
      ./services/calibre.nix
 | 
					      ./services/calibre.nix
 | 
				
			||||||
      ./services/fancontrol.nix
 | 
					      ./services/fancontrol.nix
 | 
				
			||||||
 | 
					      ./services/gitea.nix
 | 
				
			||||||
 | 
					      ./services/jellyfin.nix
 | 
				
			||||||
      ./services/jupyter.nix
 | 
					      ./services/jupyter.nix
 | 
				
			||||||
 | 
					      ./services/kanidm.nix
 | 
				
			||||||
 | 
					      ./services/metrics
 | 
				
			||||||
 | 
					      ./services/nginx
 | 
				
			||||||
 | 
					      ./services/postgres.nix
 | 
				
			||||||
 | 
					      ./services/timemachine.nix
 | 
				
			||||||
 | 
					      ./services/transmission.nix
 | 
				
			||||||
 | 
					      ./services/vaultwarden.nix
 | 
				
			||||||
      # ./services/searx.nix
 | 
					      # ./services/searx.nix
 | 
				
			||||||
      # ./services/code-server.nix
 | 
					      # ./services/code-server.nix
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										42
									
								
								hosts/voyager/services/timemachine.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								hosts/voyager/services/timemachine.nix
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,42 @@
 | 
				
			|||||||
 | 
					{ config, pkgs, ... }:
 | 
				
			||||||
 | 
					  let
 | 
				
			||||||
 | 
					    timeMachineDir = "/tank/backup/worf";
 | 
				
			||||||
 | 
					    user = "worf-backup";
 | 
				
			||||||
 | 
					    sizeLimit = "800000"; # MiB
 | 
				
			||||||
 | 
					    allowedIPs = "192.168.10.2 192.168.10.5"; #TODO
 | 
				
			||||||
 | 
					  in {
 | 
				
			||||||
 | 
					  services.avahi = {
 | 
				
			||||||
 | 
					    enable = true;
 | 
				
			||||||
 | 
					    publish = {
 | 
				
			||||||
 | 
					      enable = true;
 | 
				
			||||||
 | 
					      userServices = true;
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					  };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  services.netatalk = {
 | 
				
			||||||
 | 
					    enable = true;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    settings = {
 | 
				
			||||||
 | 
					      Global = {
 | 
				
			||||||
 | 
					        "mimic model" = "TimeCapsule6,106";  # show the icon for the first gen TC
 | 
				
			||||||
 | 
					        "hosts allow" = allowedIPs;
 | 
				
			||||||
 | 
					      };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      "worf-time-machine" = {
 | 
				
			||||||
 | 
					        "time machine" = "yes";
 | 
				
			||||||
 | 
					        "path" = timeMachineDir;
 | 
				
			||||||
 | 
					        "valid users" = user;
 | 
				
			||||||
 | 
					        "vol size limit" = sizeLimit;
 | 
				
			||||||
 | 
					      };
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					  };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  users.extraUsers.worf-backup = {
 | 
				
			||||||
 | 
					    isSystemUser = true;
 | 
				
			||||||
 | 
					    name = user;
 | 
				
			||||||
 | 
					    group = user;
 | 
				
			||||||
 | 
					  };
 | 
				
			||||||
 | 
					  users.groups."${user}" = {};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  networking.firewall.allowedTCPPorts = [ 548 636 ];
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user