forked from jan-leila/nix-config
		
	refactor: moved server module configs out of default.nix files
This commit is contained in:
		
							parent
							
								
									89793fca6a
								
							
						
					
					
						commit
						30a042d709
					
				
					 14 changed files with 381 additions and 367 deletions
				
			
		|  | @ -1,38 +1,8 @@ | |||
| { | ||||
|   lib, | ||||
|   pkgs, | ||||
|   config, | ||||
|   ... | ||||
| }: let | ||||
|   jellyfinPort = 8096; | ||||
|   dlanPort = 1900; | ||||
| in { | ||||
|   imports = [ | ||||
|     ./jellyfin.nix | ||||
|     ./proxy.nix | ||||
|     ./fail2ban.nix | ||||
|     ./impermanence.nix | ||||
|   ]; | ||||
| 
 | ||||
|   options.services.jellyfin = { | ||||
|     media_directory = lib.mkOption { | ||||
|       type = lib.types.str; | ||||
|       description = "directory jellyfin media will be hosted at"; | ||||
|       default = "/srv/jellyfin/media"; | ||||
|     }; | ||||
|   }; | ||||
| 
 | ||||
|   config = lib.mkIf config.services.jellyfin.enable { | ||||
|     environment.systemPackages = [ | ||||
|       pkgs.jellyfin | ||||
|       pkgs.jellyfin-web | ||||
|       pkgs.jellyfin-ffmpeg | ||||
|     ]; | ||||
| 
 | ||||
|     networking.firewall.allowedTCPPorts = [jellyfinPort dlanPort]; | ||||
| 
 | ||||
|     systemd.tmpfiles.rules = [ | ||||
|       "d ${config.services.jellyfin.media_directory} 2770 jellyfin jellyfin_media" | ||||
|       "A ${config.services.jellyfin.media_directory} -    -        -               - u:jellyfin:rwX,g:jellyfin_media:rwX,o::-" | ||||
|     ]; | ||||
|   }; | ||||
| } | ||||
|  |  | |||
							
								
								
									
										32
									
								
								modules/nixos-modules/server/jellyfin/jellyfin.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								modules/nixos-modules/server/jellyfin/jellyfin.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,32 @@ | |||
| { | ||||
|   lib, | ||||
|   pkgs, | ||||
|   config, | ||||
|   ... | ||||
| }: let | ||||
|   jellyfinPort = 8096; | ||||
|   dlanPort = 1900; | ||||
| in { | ||||
|   options.services.jellyfin = { | ||||
|     media_directory = lib.mkOption { | ||||
|       type = lib.types.str; | ||||
|       description = "directory jellyfin media will be hosted at"; | ||||
|       default = "/srv/jellyfin/media"; | ||||
|     }; | ||||
|   }; | ||||
| 
 | ||||
|   config = lib.mkIf config.services.jellyfin.enable { | ||||
|     environment.systemPackages = [ | ||||
|       pkgs.jellyfin | ||||
|       pkgs.jellyfin-web | ||||
|       pkgs.jellyfin-ffmpeg | ||||
|     ]; | ||||
| 
 | ||||
|     networking.firewall.allowedTCPPorts = [jellyfinPort dlanPort]; | ||||
| 
 | ||||
|     systemd.tmpfiles.rules = [ | ||||
|       "d ${config.services.jellyfin.media_directory} 2770 jellyfin jellyfin_media" | ||||
|       "A ${config.services.jellyfin.media_directory} -    -        -               - u:jellyfin:rwX,g:jellyfin_media:rwX,o::-" | ||||
|     ]; | ||||
|   }; | ||||
| } | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue