Skip to content

Jellyfin

Jellyfin is a free media server for managing and streaming media.

Available Options

This page documents 12 configuration options.

nixflix.jellyfin.enable

Whether to enable Jellyfin media server

Typeboolean
Default
false
Declared inmodules/jellyfin/options

nixflix.jellyfin.apiKey

API key to inject into Jellyfin's database. Used by nixflix management services to authenticate to Jellyfin without relying on admin user passwords.

Warning

Can be a plain string (visible in Nix store) or { _secret = /path/to/file; } for file-based secrets.

Plain-text secrets will be visible in the Nix store. Use { _secret = path; } for sensitive data.

Typestring or (submodule)
Default
null
Example
{ _secret = "/run/secrets/secret-file"; }
Declared inmodules/jellyfin/options

nixflix.jellyfin.package

Jellyfin package to use

Typepackage
Default
pkgs.jellyfin
Declared inmodules/jellyfin/options

nixflix.jellyfin.cacheDir

Directory containing the jellyfin server cache, passed with --cachedir see #cache-directory

Typeabsolute path
Default
"/var/cache/jellyfin"
Declared inmodules/jellyfin/options

nixflix.jellyfin.configDir

Directory containing the server configuration files, passed with --configdir see configuration-directory

Typeabsolute path
Default
"${config.nixflix.stateDir}/jellyfin/config"
Declared inmodules/jellyfin/options

nixflix.jellyfin.dataDir

Directory containing the Jellyfin data files

Typeabsolute path
Default
"${config.nixflix.stateDir}/jellyfin"
Declared inmodules/jellyfin/options

nixflix.jellyfin.group

Group under which the service runs

Typestring
Default
config.nixflix.globals.libraryOwner.group
Declared inmodules/jellyfin/options

nixflix.jellyfin.logDir

Directory where the Jellyfin logs will be stored, passed with --logdir see #log-directory

Typeabsolute path
Default
"${config.nixflix.stateDir}/jellyfin/log"
Declared inmodules/jellyfin/options

nixflix.jellyfin.openFirewall

Open ports in the firewall for Jellyfin. TCP ports 8096 and 8920, UDP ports 1900 and 7359.

Typeboolean
Default
false
Declared inmodules/jellyfin/options

nixflix.jellyfin.subdomain

Subdomain prefix for nginx reverse proxy.

Typestring
Default
"jellyfin"
Declared inmodules/jellyfin/options

nixflix.jellyfin.user

User under which the service runs

Typestring
Default
"jellyfin"
Declared inmodules/jellyfin/options

nixflix.jellyfin.vpn.enable

Whether to route Jellyfin traffic through the VPN.

When false, Jellyfin bypasses the VPN. When true, Jellyfin is confined to the WireGuard network namespace (requires nixflix.vpn.enable = true).

Typeboolean
Default
config.nixflix.vpn.enable
Declared inmodules/jellyfin/options