Skip to content

Instantly share code, notes, and snippets.

@sdshan8
Last active June 20, 2024 20:11
Show Gist options
  • Save sdshan8/5dfcc9efbd2017d2d6feefd752f057ed to your computer and use it in GitHub Desktop.
Save sdshan8/5dfcc9efbd2017d2d6feefd752f057ed to your computer and use it in GitHub Desktop.

Install Jellyfin on Termux [In Proot]

This guide shows two methods of installing Jellyfin on termux

Note: only tested on aarch64/arm64

These steps are same for both methods:

  1. Update the repo
pkg update
  1. Install proot-distro and ffmpeg (ffmpeg is only required in Method 2)
pkg install proot-distro ffmpeg -y
  1. Install ubuntu and Login to it
proot-distro install ubuntu
proot-distro login ubuntu
  1. Update and upgrade the packages in ubuntu
apt update && apt upgrade -y

Method 1:

  1. Install sudo curl and gnupg
apt install sudo curl gnupg -y
  1. Follow the step 3 to 6 in the official ubuntu installation guide for Jellyfin here

  2. Create a symbolic link for Jellyfin web client (as it's in the wrong folder)

ln -s /usr/share/jellyfin/web /usr/lib/jellyfin/bin/jellyfin-web
  1. Run Jellyfin
jellyfin
  1. Goto http://localhost:8096 to setup Jellyfin

Method 2:

  1. Install necessary packages (skip wget if you have it installed in termux)
apt install wget libicu70 ca-certificates -y
  1. Make a new folder in /opt by the name jellyfin and cd into it
mkdir /opt/jellyfin
cd /opt/jellyfin
  1. Download the latest generic linux build for your architecture from here with wget (make sure you down the correct architecture for you device)
wget https://repo.jellyfin.org/releases/server/linux/stable/combined/jellyfin_10.8.8_arm64.tar.gz
  1. Extract it with tar
tar xvzf jellyfin_10.8.8_arm64.tar.gz
  1. Create a symbolic link so you can easily upgrade
ln -s jellyfin_10.8.8 jellyfin
  1. Create four sub-directories for Jellyfin data
mkdir data cache config log
  1. Use nano to make a script to run Jellyfin
nano jellyfin.sh
  • Paste the following:
#!/bin/bash
JELLYFINDIR="/opt/jellyfin"

$JELLYFINDIR/jellyfin/jellyfin \
 -d $JELLYFINDIR/data \
 -C $JELLYFINDIR/cache \
 -c $JELLYFINDIR/config \
 -l $JELLYFINDIR/log \
 --ffmpeg /data/data/com.termux/files/usr/bin/ffmpeg
  • Save and exit nano by pressing CTRL + x then y then enter
  1. Make it executable
chmod +x jellyfin.sh
  1. Run it
/opt/jellyfin/jellyfin.sh
  1. Goto http://localhost:8096 to setup Jellyfin
#!/bin/bash
JELLYFINDIR="/opt/jellyfin"
$JELLYFINDIR/jellyfin/jellyfin \
-d $JELLYFINDIR/data \
-C $JELLYFINDIR/cache \
-c $JELLYFINDIR/config \
-l $JELLYFINDIR/log \
--ffmpeg /data/data/com.termux/files/usr/bin/ffmpeg
@cangjingren
Copy link

libcu70Where can I download the library

@sdshan8
Copy link
Author

sdshan8 commented Jan 8, 2024

libcu70Where can I download the library

Through apt with apt install libicu70

@gamernoob24
Copy link

gamernoob24 commented May 31, 2024

why is it using a bit of an outdated version of jellyfin
i tried using the latest version of it 10.9.3
i kept on getting errors

also please update the method 2 part 7 link to this if your using 10.8.8

arm64
https://repo.jellyfin.org/archive/server/linux/stable/10.8.8/combined/jellyfin_10.8.8_arm64.tar.gz
or armhf/ arm 32bit
https://repo.jellyfin.org/archive/server/linux/stable/10.8.8/combined/jellyfin_10.8.8_armhf.tar.gz

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment