Files
hassio-addons/jellyfin

Home assistant add-on: jellyfin

I maintain this and other Home Assistant add-ons in my free time: keeping up with upstream changes, HA changes, and testing on real hardware takes a lot of time (and some money). I use around 5-10 of my >110 addons so regularly I install test machines (and purchase some test services such as vpn) that I don't use myself to troubleshoot and improve the addons

If this add-on saves you time or makes your setup easier, I would be very grateful for your support!

Buy me a coffee Donate via PayPal

Addon informations

Version Ingress Arch

Codacy Badge GitHub Super-Linter Builder

Thanks to everyone having starred my repo! To star it click on the image below, then it will be on top right. Thanks!

Stargazers repo roster for @alexbelgium/hassio-addons

downloads evolution

About

jellyfin organizes video, music, live TV, and photos from personal media libraries and streams them to smart TVs, streaming boxes and mobile devices. This container is packaged as a standalone jellyfin Media Server.

This addon is based on the docker image from linuxserver.io.

Configuration

Webui can be found at <your-ip>:8096 or through the sidebar using Ingress.

Options

Option Type Default Description
PGID int 0 Group ID for file permissions
PUID int 0 User ID for file permissions
TZ str Timezone (e.g., Europe/London)
data_location str /share/jellyfin Path where Jellyfin data is stored
localdisks str Local drives to mount (e.g., sda1,sdb1,MYNAS)
networkdisks str SMB shares to mount (e.g., //SERVER/SHARE)
cifsusername str SMB username for network shares
cifspassword str SMB password for network shares
cifsdomain str SMB domain for network shares
i915_enable_guc int Optional Intel iGPU enable_guc parameter (0-3) applied at startup for improved hardware encoding compatibility. Does not reconfigure the kernel; the host must already expose /sys/module/i915/parameters/enable_guc.
DOCKER_MODS list Additional Docker mods for hardware acceleration

Example Configuration

PGID: 0
PUID: 0
TZ: "Europe/London"
data_location: "/share/jellyfin"
localdisks: "sda1,sdb1"
networkdisks: "//192.168.1.100/media,//nas.local/movies"
cifsusername: "mediauser"
cifspassword: "password123"
cifsdomain: "workgroup"
DOCKER_MODS:
  - "linuxserver/mods:jellyfin-opencl-intel"
  - "linuxserver/mods:jellyfin-amd"

Hardware Acceleration

Available Docker mods for hardware acceleration:

  • linuxserver/mods:jellyfin-opencl-intel - Intel OpenCL support
  • linuxserver/mods:jellyfin-amd - AMD hardware acceleration
  • linuxserver/mods:jellyfin-rffmpeg - Custom FFmpeg build

For Intel systems that require GuC submission for stable hardware encoding (e.g., N6005), set i915_enable_guc to 2 to apply the kernel parameter at container startup. The add-on only writes to the existing runtime module parameter; no kernel rebuild or boot parameter change is attempted. If the path /sys/module/i915/parameters/enable_guc is missing or read-only on the host kernel, the add-on logs a warning and continues without modification.

Mounting Drives

This addon supports mounting both local drives and remote SMB shares:

Custom Scripts and Environment Variables

This addon supports custom scripts and environment variables through the addon_config mapping:

Enable ssl

Creating the PFX certificate file first

  1. This part assumes you already have SSL certs in PEM format using the Let's Encrypt add on
  2. Run this command openssl pkcs12 -export -in fullchain.pem -inkey private_key.pem -passout pass: -out server.pfx
  3. Set the permission using chmod 0700 server.pfx

Note: The above command creates a PFX file without a password, you can fill in a password with -passout pass:"your-password" but will also have to provide your-password to Jellyfin's configuration

Automating the PFX certificate

Jellyfin configuration

  1. From the sidebar, click on Administration -> Dashboard
  2. Under Networking, Server Address Settings, tick Enable HTTPS
  3. Under HTTPS Settings, tick Require HTTPS
  4. For Custom SSL certificate path:, point it to your PFX file and fill in the Certificate password if required
  5. Scroll to the bottom and Save

Installation

The installation of this add-on is pretty straightforward and not different in comparison to installing any other Hass.io add-on.

  1. Add my Hass.io add-ons repository to your Hass.io instance.
  2. Install this add-on.
  3. Click the Save button to store your configuration.
  4. Start the add-on.
  5. Check the logs of the add-on to see if everything went well.
  6. Carefully configure the add-on to your preferences, see the official documentation for for that.