This project simplifies the installation of Jellyfin for Samsung TV by automating the environment setup using Docker.
Samsung TVs have been using Tizen OS since 2015. While the Jellyfin app is stable and officially supported, it has not been available in the Samsung App Store since 2021.
With this script, you can install Jellyfin with just one command once your computer and TV are properly configured.
- Install Docker
- If necessary, enable virtualization
- Ensure that your computer is on the same network as your Samsung TV
Note
If your TV uses a right-to-left language (e.g., Arabic or Hebrew), the IP address must be entered in reverse order. More info here.
- On your TV, go to "Apps".
- Scroll down to "App Settings" and open it.
- Enter "12345" using the virtual keyboard.
- Enable Developer Mode (On).
- Enter your computer's IP address.
If you experience issues entering the IP address:
- Use an external Bluetooth keyboard.
- Use the Samsung SmartThings app to enter the IP via the virtual keyboard.
If Jellyfin is already installed, follow the official uninstallation guide.
- Open the network settings or "About This TV".
- Note down the IP address as it will be needed later.
Use the following command to receive the device id from the tv
Note
This command returns for some samsung tv's the model number, instead of the unique device id. If you encounter problems while installing, try to receive the unique device id via Settings->All Settings->Support->Info
docker run --rm ghcr.io/georift/install-jellyfin-tizen --ip <TV_IP> --get-device-idUse the following command to install Jellyfin. Replace the placeholders accordingly:
docker run --rm ghcr.io/georift/install-jellyfin-tizen --ip <TV_IP> [--build <BUILD_OPTION>] [--tag <TAG_URL>] [--oneui8 --device-id <DEVICE_ID> --email <EMAIL>] [--cert-password <PASSWORD>]--ip <TV_IP>→ IP address of the Samsung TV (required)--build <BUILD_OPTION>→ Choose a build option (default:Jellyfinavailable:Jellyfin, Jellyfin-TrueHD, Jellyfin-master, Jellyfin-master-TrueHD, Jellyfin-secondary)--tag <TAG_URL>→ URL of the release tag (optional, uses the latest version if not specified)--oneui8→ Enables One UI 8 mode (see section below)--device-id <DEVICE_ID>→ Device ID (required for--oneui8)--email <EMAIL>→ Email address (required for--oneui8)--cert-password <PASSWORD>→ Certificate password (optional)
docker run --rm ghcr.io/georift/install-jellyfin-tizen --ip 192.168.0.10docker run --rm ghcr.io/georift/install-jellyfin-tizen --ip 192.168.0.10 --build Jellyfin-TrueHD --tag "https://github.com/jeppevinkel/jellyfin-tizen-builds/releases/tag/2024-05-13-0139"docker run --rm -v "$(pwd)/author.p12":/certificates/author.p12 -v "$(pwd)/distributor.p12":/certificates/distributor.p12 ghcr.io/georift/install-jellyfin-tizen --ip 192.168.0.10 --cert-password 'CertPassw0rd!'If your TV uses One UI 8, follow these steps:
docker run -p 4794:4794 ghcr.io/georift/install-jellyfin-tizen --ip 192.168.0.10 --oneui8 --device-id GU43CU7179UXZG --email [email protected]- The starting process of the certificate generation script can take a while, so be patient.
- Open
localhost:4794/auth/startin your browser. - Follow the instructions on the webpage.
- Wait for the installation to complete.
-
Error:
library initialization failed - unable to allocate file descriptor table - out of memory- Solution: Add
--ulimit nofile=1024:65536:docker run --ulimit nofile=1024:65536 --rm ghcr.io/georift/install-jellyfin-tizen --ip 192.168.0.10
- Solution: Add
-
Error:
install failed[118, -11], reason: Author certificate not match- Solution: Uninstall the Jellyfin app and try again.
-
Error:
install failed[118, -12], reason: Check certificate error: Invalid certificate chain- Solution: Use a custom certificate as described here.
If the installation is successful, you will see this message:
Installed the package: Id(AprZAARz4r.Jellyfin)
Tizen application is successfully installed.
Total time: 00:00:12.205Jellyfin should now be available under Apps -> Downloaded on your TV.
Currently, amd64 is supported. ARM devices (such as Raspberry Pi or Mac M1/M2) require additional configuration.
- Enable the "Virtualization Framework".
- Ensure that Docker supports
qemu:Ifdocker run --rm --platform linux/amd64 alpine uname -m
x86_64is returned, everything is set up correctly. - Use
--platform linux/amd64:docker run --rm --platform linux/amd64 ghcr.io/georift/install-jellyfin-tizen --ip 192.168.0.10
This project would not be possible without the following: