mirror of
https://github.com/alexbelgium/hassio-addons.git
synced 2026-01-09 17:31:03 +01:00
129 lines
7.4 KiB
Markdown
129 lines
7.4 KiB
Markdown
# 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][donation-badge]](https://www.buymeacoffee.com/alexbelgium)
|
|
[![Donate via PayPal][paypal-badge]](https://www.paypal.com/donate/?hosted_button_id=DZFULJZTP3UQA)
|
|
|
|
## Addon informations
|
|
|
|

|
|

|
|

|
|
|
|
[](https://www.codacy.com/gh/alexbelgium/hassio-addons/dashboard?utm_source=github.com&utm_medium=referral&utm_content=alexbelgium/hassio-addons&utm_campaign=Badge_Grade)
|
|
[](https://github.com/alexbelgium/hassio-addons/actions/workflows/weekly-supelinter.yaml)
|
|
[](https://github.com/alexbelgium/hassio-addons/actions/workflows/onpush_builder.yaml)
|
|
|
|
[donation-badge]: https://img.shields.io/badge/Buy%20me%20a%20coffee-%23d32f2f?logo=buy-me-a-coffee&style=flat&logoColor=white
|
|
[paypal-badge]: https://img.shields.io/badge/Donate%20via%20PayPal-0070BA?logo=paypal&style=flat&logoColor=white
|
|
|
|
_Thanks to everyone having starred my repo! To star it click on the image below, then it will be on top right. Thanks!_
|
|
|
|
[](https://github.com/alexbelgium/hassio-addons/stargazers)
|
|
|
|

|
|
|
|
## About
|
|
|
|
[jellyfin](https://jellyfin.org/) 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](https://github.com/linuxserver/docker-jellyfin) 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
|
|
|
|
```yaml
|
|
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:
|
|
|
|
- **Local drives**: See [Mounting Local Drives in Addons](https://github.com/alexbelgium/hassio-addons/wiki/Mounting-Local-Drives-in-Addons)
|
|
- **Remote shares**: See [Mounting Remote Shares in Addons](https://github.com/alexbelgium/hassio-addons/wiki/Mounting-remote-shares-in-Addons)
|
|
|
|
### Custom Scripts and Environment Variables
|
|
|
|
This addon supports custom scripts and environment variables through the `addon_config` mapping:
|
|
|
|
- **Custom scripts**: See [Running Custom Scripts in Addons](https://github.com/alexbelgium/hassio-addons/wiki/Running-custom-scripts-in-Addons)
|
|
- **env_vars option**: Use the add-on `env_vars` option to pass extra environment variables (uppercase or lowercase names). See https://github.com/alexbelgium/hassio-addons/wiki/Add-Environment-variables-to-your-Addon-2 for details.
|
|
|
|
### 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][repository] to your Hass.io instance.
|
|
1. Install this add-on.
|
|
1. Click the `Save` button to store your configuration.
|
|
1. Start the add-on.
|
|
1. Check the logs of the add-on to see if everything went well.
|
|
1. Carefully configure the add-on to your preferences, see the official documentation for for that.
|
|
|
|
[repository]: https://github.com/alexbelgium/hassio-addons
|
|
|
|
|