mirror of
				https://github.com/9001/copyparty.git
				synced 2025-10-31 04:32:20 -06:00 
			
		
		
		
	nixos: unix-user/group to run as (#886)
Co-authored-by: Kaleb Debre <kaleb.debre@web.de>
This commit is contained in:
		
							parent
							
								
									7fc379abc8
								
							
						
					
					
						commit
						31f1b535b2
					
				
							
								
								
									
										10
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								README.md
									
									
									
									
									
								
							|  | @ -2466,6 +2466,10 @@ copyparty on NixOS is configured via `services.copyparty` options, for example: | |||
| ```nix | ||||
| services.copyparty = { | ||||
|   enable = true; | ||||
|   # the user to run the service as | ||||
|   user = "copyparty";  | ||||
|   # the group to run the service as | ||||
|   group = "copyparty";  | ||||
|   # directly maps to values in the [global] section of the copyparty config. | ||||
|   # see `copyparty --help` for available options | ||||
|   settings = { | ||||
|  | @ -2490,6 +2494,12 @@ services.copyparty = { | |||
|     k.passwordFile = "/run/keys/copyparty/k_password"; | ||||
|   }; | ||||
| 
 | ||||
|   # create a group | ||||
|   groups = { | ||||
|     # users "ed" and "k" are part of the group g1 | ||||
|     g1 = [ "ed" "k" ]; | ||||
|   }; | ||||
| 
 | ||||
|   # create a volume | ||||
|   volumes = { | ||||
|     # create a volume at "/" (the webroot), which will | ||||
|  |  | |||
|  | @ -370,12 +370,16 @@ in | |||
|         ) cfg.volumes | ||||
|       ); | ||||
| 
 | ||||
|       users.groups.copyparty = lib.mkIf (cfg.user == "copyparty" && cfg.group == "copyparty") { }; | ||||
|       users.users.copyparty = lib.mkIf (cfg.user == "copyparty" && cfg.group == "copyparty") { | ||||
|         description = "Service user for copyparty"; | ||||
|         group = "copyparty"; | ||||
|         home = externalStateDir; | ||||
|         isSystemUser = true; | ||||
|       users.groups = lib.mkIf (cfg.group == "copyparty") { | ||||
|         copyparty = { }; | ||||
|       }; | ||||
|       users.users = lib.mkIf (cfg.user == "copyparty") { | ||||
|         copyparty = { | ||||
|           description = "Service user for copyparty"; | ||||
|           group = cfg.group; | ||||
|           home = externalStateDir; | ||||
|           isSystemUser = true; | ||||
|         }; | ||||
|       }; | ||||
|       environment.systemPackages = lib.mkIf cfg.mkHashWrapper [ | ||||
|         (pkgs.writeShellScriptBin "copyparty-hash" '' | ||||
|  | @ -394,4 +398,3 @@ in | |||
|     } | ||||
|   ); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue