3.3 KiB
3.3 KiB
JellyFin Roku Development
The Ramblings of a Learning Man
The GIT Portion
- Install git
- Fork jellyfin-roku repo to your own.
- Clone your repo to local
3a.git clone ssh://github.com/username/jellyfin-roku.git
- Create a branch for your fix
4a.git checkout -B issue007
- Set remote repo so you can stay current with other dev changes
5a.git remote add upstream https://github.com/jellyfin/jellyfin-roku.git
- Fetch remote changes from other devs often
6a.git fetch upstream
- After making changes, push local branch to github repo
7a.git add --all
7b.git commit -m "description of changes for commit"
7c.git push -u origin issue007
Congrats, you are now forked and ready to perform pull requests. You can do so via github webui
Jellyfin Portion - via Docker
For this portion, I will not go into any depth on docker nor portainer, but they are what I chose to use to have a dev install of jellyfin for working on.
Via the portainer condole I created an app template using the jellyfin/jellyfin:latest docker image as per the instructions from the Jellyfin Install Docs. I applied the following:
- Port mapping - host port 8098; container port 8096.
I did this so it will not conflict with my 'prod' installation and both can be accessed in parallel. - Volume mapping - /media, /config, /cache directories mapped according to my needs.
At this point, I can create a new image as needed for updating to the latest version all simply by deleting the existing image and recreating which will pull the latest from docker registry and persist the configs.
The Roku Portion
- Put your Roku in Dev Mode
- I use Atom.
- I installed roku-develop for Atom.
- Read the Roku Developer Docs
Instructions:
- Install ImageMagick.
- Install wget.
- Install make.
- Install nodejs and npm.
- Ensure npm requirements are installed:
cd /path/to/git/repo/
npm install
- Update branding images from jellyfin repo:
sh make_images.sh
You should see something similar to the following:
--2019-09-08 12:45:02-- https://raw.githubusercontent.com/jellyfin/jellyfin-ux/master/branding/SVG/icon-transparent.svg
Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 151.101.128.133, 151.101.192.133, 151.101.0.133, ...
Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|151.101.128.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Actual Build and Deploy to Roku:
cd /path/to/local/git/repo
make install