diff --git a/README.md b/README.md index e078afca..cd52a6e0 100644 --- a/README.md +++ b/README.md @@ -1,53 +1,86 @@ # Jellyfin app for Roku -Disclaimer: This is not complete, but making good progress! +**This app is not complete!** -Right now the only things stored on your device are server name, server port, +Currently, the data stored on your Roku device are server name, server port, user id, and some user preferences like movie sort order. -At any point, the format that is used to save those settings could change, and -your data could be effectively lost (and you'll have to re-enter it). +The format that is used to save those settings could change at any time and +your data could be lost and you'd have to re-enter it. -In fact, it is likely this early on, as a few design decisions were made before -I knew much about BrightScript format. Patience is appreciated. +## Getting Started -### Images +Follow the steps below or checkout the [Development Guide For New Devs](DEVGUIDE.md) -With ImageMagick installed -``` -sh make_images.sh +### Developer Mode + +Put your Roku device in [developer mode](https://blog.roku.com/developer/2016/02/04/developer-setup-guide) + +### Clone the GitHub Repo + +Copy all of the application files to a new folder and then change directories: + +```bash +https://github.com/jellyfin/jellyfin-roku.git +cd jellyfin-roku ``` -This will update the poster and splash images from the jellyfin-ux repo. +### Login Details -## Testing and Local Deployment -To test and deploy on your Roku device, it must be in [developer mode](https://blog.roku.com/developer/2016/02/04/developer-setup-guide) first. -Once there, set two environment variables that make uses. +Run the commands below - Replacing the IP and password (using the info from the first step) ```bash export ROKU_DEV_TARGET=192.168.1.234 export ROKU_DEV_PASSWORD=aaaa ``` -This is the IP address of your roku and the password you set for the -rokudev account when you put your device in developer mode. +This will allow you to test your code without having to manually upload a .zip file every time -### Testing -Testing is done with the [Rooibos](https://github.com/georgejecook/rooibos/) library. -This works by including the tests in the deployment and then looking at telnet -for the test results. This testing library requires the [Rooibos Preprocessor](https://github.com/georgejecook/rooibosPreprocessor) -to create a few of the helper files used during the tests. This can be installed via: +### Download Images + +Install these packages: ```bash -npm install -g rooibos-preprocessor +sudo apt-get install imagemagick wget make nodejs npm ``` -`make test` will package up the application and tests and the deploy it to the Roku. Test results can be seen via `telnet ${ROKU_DEV_TARGET} 8085` +Then run this script to download the images from the jellyfin-ux repo: -### Deployment -To deploy the application to your local roku run `make install`. +```bash +sh make_images.sh +``` -This packages up the application, sends it to your Roku and launches it. +### Deploy -### [Development Guide](DEVGUIDE.md) -Additional notes and instructions to help new developers get started: [Development Guide For New Devs](DEVGUIDE.md) +This packages up the application, sends it to your Roku, and launches the channel: + +```bash +make install +``` + +### Testing + +Testing is done with the [Rooibos](https://github.com/georgejecook/rooibos/) library. + +This works by including the tests in the deployment and then looking at telnet +for the test results. To use the testing library you need to install [rooibos-cli](https://github.com/georgejecook/rooibos-cli): + +Run this in the root app directory: + +```bash +npm install -g rooibos-cli +``` + +To deploy the application with tests: + +```bash +make test +``` + +To see test results and crash reports: + +```bash +telnet ${ROKU_DEV_TARGET} 8085 +``` + +To exit telnet: `CTRL + ]` and then type `quit + ENTER`