PimpMyStremio on android
This guide teaches you how to install PimpMystremio on your android device. Please keep in mind that this is just an expirement. I strongly recommend to use PMS on your computer when possible.
You do not need root access or a high end phone to follow this guide. The only thing you need is +-2.5GB of free storage and a basic understanding of linux.
First of all, go to the playstore and install termux (?). Temux is a terminal emulator that allows you to run basic linux commands on your android device. We will use this to install a Ubuntu chroot/proot container that will run PMS.
Secondly, go get the Hacker's Keyboard. It makes typing and navigation on termux way easier.
Configure SSH access (optional)
Typing long commands on a mobile device is a pain, so I recommend setting up a SSH server on your device so you can access termux through a SSH client on your PC. Run the following commands in termux to install the OpenSSH server:
pkg update pkg install openssh
Next we need to edit the openssh configuration file so we can enable authentication and set the port number. Make sure you're in your home directory (
cd $prefix) and enter the following commands:
pkg install nano nano ../usr/etc/ssh/sshd_config
Add/edit these lines:
PasswordAuthentication yes Port 8022
Press CTRL + X, type the letter 'y' and then press ENTER to save the changes.
passwd to setup a password.
Next, get the private ip address of your device by running
ifconfig (your device is probably on wifi so it will most likely be the
inet addr of
wlan0). Note it down.
whoami and note down the username.
Finally, enter the command
sshd and you're finally ready to switch over to your PC!
On you PC, install a SSH client like putty. Connect to the ip address you just noted down and use port
8022. When prompted, enter your username and the password you set up earlier.
Termux by itself is pretty limited and without root access we can't access or do as much as we like. This is why we need to install an ubuntu chroot/proot container, which is kinda like a sandbox with it's own 'virtual' permissions.
I figured ubuntu is a good option, but termux supports many distro's so feel free to experiment with this.
Run the following commands to install ubuntu:
pkg update && pkg install wget proot mkdir ubuntu cd ubuntu wget https://raw.githubusercontent.com/Neo-Oli/termux-ubuntu/master/ubuntu.sh bash ubuntu.sh
This will download & install the distro and it might take a while, depending on your internet connection.
When finished, start ubuntu by running
./start-ubuntu.sh You will need to run this command everytime you want to access your ubuntu environment from termux.
Note: If you get a message saying something in the lines of
groups: cannot find name for group ID 3014, just ignore it. It's fine.
Updating the packages list
apt update once after accessing your ubuntu environment for the first time. This will make sure we got access to all and the latest packages.
Installing PMS internal modules (otional)
At the time of writing, PMS will skip internal modules when they are not found. You only have to install any of the modules listed below if you're installing an addon that depends on it.
PhantomJS is a headless browser mostly used for web automation and scraping. It can't be auto-installed by PMS yet so we have to install it ourself.
apt install -y phantomjs export QT_QPA_PLATFORM=offscreen && echo "export QT_QPA_PLATFORM=offscreen" >> /etc/profile
apt install -y git nodejs npm git clone https://github.com/sungshon/PimpMyStremio.git cd PimpMyStremio/src
Finally, install the remaining dependencies:
npm install --production
Start PMS with
npm start. Open
127.0.0.1:7777 in your browser to access the web page. From here on you can use it just like you would on PC and install addons for mobile Stremio!
To start, make sure your current working directory is the Termux home directory (
cd ~). If you're still inside the ubuntu container, you can exit it using the
Create the script by executing the following:
touch start-pms.sh echo "proot --link2symlink -0 -r ubuntu/ubuntu-fs -b /dev -b /proc -w /root /usr/bin/env -i HOME=/root PATH=/usr/local/sbin:/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin:/usr/games:/usr/local/games TERM=xterm LANG=C.UTF-8 /bin/bash -c \"cd /root/PimpMyStremio/src && node index.js\"" > start-pms.sh chmod +x start-pms.sh unset LD_PRELOAD
Termux:Boot & Termux:Widget extensions
Follow the Termux docs for your extension of choice. At some point, you'll have to add a shell script to a directory. To create a script that executes the autostart script we created earlier, execute the following commands:
touch start-pms.sh echo "~/start-pms.sh" > start-pms.sh chmod +x start-pms.sh