WebOS Client for Jellyfin
Go to file
2024-08-23 15:12:24 +03:00
.github/workflows Merge pull request #204 from jellyfin/renovate/major-github-artifact-actions 2024-04-09 21:37:38 -04:00
frontend bump webOSTV js lib to 1.2.11 2024-08-23 15:12:24 +03:00
services Modify main and services- package.json 2021-12-22 13:15:25 +01:00
tools set rootRequired to false 2022-01-10 14:33:46 +09:00
.editorconfig Add editorconfig 2020-10-25 18:52:04 +01:00
.gitignore Update .gitignore 2021-12-22 16:45:56 +01:00
CONTRIBUTORS.md Address review comments 2021-08-12 03:05:15 +02:00
dev.sh Add selinux support to dev.sh 2021-08-16 04:47:15 +02:00
LICENSE Add the MPL 2.0 license to the code. 2020-04-26 14:01:26 +02:00
package-lock.json Update app version and tools 2024-03-15 19:02:51 +01:00
package.json Bump qs and @webosose/ares-cli 2024-04-10 01:37:42 +00:00
README.md remove extra the 2024-04-09 21:23:00 -04:00
renovate.json Add renovate.json 2024-03-15 19:02:51 +01:00

Jellyfin for webOS

This is a small wrapper around the web interface that the server provides (https://github.com/jellyfin/jellyfin-web) so most of the developement happens there.

Download

For all versions:

Enjoy on LG Smart TV
Note: If you previously installed the app via Homebrew or Developer mode, you must uninstall that before you can use the store version.

License

All Jellyfin webOS code is licensed under the MPL 2.0 license, some parts incorporate content licensed under the Apache 2.0 license. All images are taken from and licensed under the same license as https://github.com/jellyfin/jellyfin-ux.


Development

The general development workflow looks like this:

There are three ways of creating the required build environment:

  • Full WebOS SDK Installation
  • Docker
  • NPM ares-cli

Full WebOS SDK Installation

Docker

A prebuilt docker image is available that includes the build and deployment dependencies, see Docker Hub.

Managing the ares-tools via npm

This requires npm, the Node.js package manager.

Execute the following to install the required WebOS toolkit for building & deployment:

npm install

Now you can package the app by running

npm run package

Building with Docker or WebOS SDK

dev.sh is a wrapper around the Docker commands, if you have installed the SDK directly, just ommit that part.

# Build the package via Docker
./dev.sh ares-package --no-minify services frontend
# Build the package with natively installed WebOS SDK
ares-package --no-minify services frontend

Usage

Fill in your hostname, port and schema and click connect. The app will check for a server by grabbing the manifest and the public serverinfo. And then the app hands off control to the hosted webUI.

Testing

Testing on a TV requires registering a LG developer account and setting up the devmode app.

Once you have installed the devmode app on your target TV and logged in with your LG developer account, you need to turn on the Dev Mode Status and Key Server. Make sure to take a note of the passphrase.

# Add your TV. The defaults are fine, but I recommend naming it `tv`.
./dev.sh ares-setup-device --search

# This command sets up the SSH key for the device `tv` (Key Server must be running)
./dev.sh ares-novacom --device tv --getkey

# Run this command to verify that things are working.
./dev.sh ares-device-info -d tv

# This command installs the app. Remember to build it first.
./dev.sh ares-install -d tv org.jellyfin.webos_*.ipk

# Launch the app and the web developer console.
./dev.sh ares-inspect -d tv org.jellyfin.webos

# Or just launch the app.
./dev.sh ares-launch -d tv org.jellyfin.webos