Skip to content

Instantly share code, notes, and snippets.

@MathiasPius
Last active September 25, 2023 16:14
Show Gist options
  • Save MathiasPius/7626ac4cbee498cc6539bb075efcc601 to your computer and use it in GitHub Desktop.
Save MathiasPius/7626ac4cbee498cc6539bb075efcc601 to your computer and use it in GitHub Desktop.
Quickly updating jellyfin app on Tizen TVs.

Installing

Build the image locally with the selected Jellyfin version (see releases here)

$ docker build                               \
    --ulimit nofile=1024:1024                \
    --build-arg RELEASE_TAG="2023-06-07"     \
    --build-arg RELEASE_ASSET="Jellyfin.wgt" \
    -t jellyfin-tizen:latest .

Enable developer mode on your TV and run the following command with the TVs address at the end (without angles <>).

$ docker run  --rm -it                      \
    --ulimit nofile=1024:1024               \
    jellyfin-tizen:latest <tv.address.here>

No guarantees given, this was hacked together so as to make the process less of a chore for me.

FROM ubuntu:latest as tizen
RUN apt-get update
RUN apt-get install wget -y
RUN wget https://download.tizen.org/sdk/Installer/tizen-studio_5.1/web-cli_Tizen_Studio_5.1_ubuntu-64.bin
RUN chmod u+x web-cli_Tizen_Studio_5.1_ubuntu-64.bin
RUN chown 1000:1000 web-cli_Tizen_Studio_5.1_ubuntu-64.bin
RUN useradd -ms /bin/bash tizen
USER tizen
RUN /bin/bash -c 'echo y |./web-cli_Tizen_Studio_5.1_ubuntu-64.bin --accept-license'
FROM ubuntu:latest as jellyfin
ARG RELEASE_TAG="2023-06-07"
ARG RELEASE_ASSET="Jellyfin.wgt"
RUN apt-get update
RUN apt-get install wget -y
RUN wget -O Jellyfin.wgt https://github.com/jeppevinkel/jellyfin-tizen-builds/releases/download/${RELEASE_TAG}/${RELEASE_ASSET}
RUN chown 1000:1000 Jellyfin.wgt
FROM ubuntu:latest
RUN useradd -ms /bin/bash tizen
COPY --from=tizen --chown=tizen /home/tizen/tizen-studio /home/tizen/tizen-studio
COPY --from=tizen --chown=tizen /home/tizen/tizen-studio-data /home/tizen/tizen-studio-data
COPY --from=jellyfin --chown=tizen Jellyfin.wgt /home/tizen/Jellyfin.wgt
COPY --chown=tizen entrypoint.sh /home/tizen/entrypoint.sh
USER tizen
WORKDIR /home/tizen/
ENTRYPOINT ["/home/tizen/entrypoint.sh"]
#!/usr/bin/env bash
ADDRESS="$1"
echo "Connecting to address: $ADDRESS"
/home/tizen/tizen-studio/tools/sdb connect "$ADDRESS"
DEVICE_NAME=$(/home/tizen/tizen-studio/tools/sdb devices | tail -n -1 | grep "$ADDRESS" | awk '{ printf $3 "\n" }');
echo "Installing to $DEVICE_NAME"
/home/tizen/tizen-studio/tools/ide/bin/tizen install -n Jellyfin.wgt -t "$DEVICE_NAME"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment