2020-02-02 20:06:32 +00:00
< h1 align = "center" > Jellyfin for Tizen< / h1 >
2023-06-03 19:11:17 +00:00
< h3 align = "center" > Part of the < a href = "https://jellyfin.org" > Jellyfin Project< / a > < / h3 >
2019-10-12 14:25:42 +00:00
2023-06-03 19:11:37 +00:00
---
< p align = "center" >
< img alt = "Logo Banner" src = "https://raw.githubusercontent.com/jellyfin/jellyfin-ux/master/branding/SVG/banner-logo-solid.svg?sanitize=true" / >
< / p >
2019-10-12 14:25:42 +00:00
## Build Process
2020-03-26 13:22:12 +00:00
_Also look [Wiki ](https://github.com/jellyfin/jellyfin-tizen/wiki )._
2020-02-02 20:06:32 +00:00
### Prerequisites
2022-11-05 19:55:39 +00:00
* Tizen Studio 4.6+ with IDE or Tizen Studio 4.6+ with CLI (< a href = "https://developer.tizen.org/development/tizen-studio/download" > https://developer.tizen.org/development/tizen-studio/download</ a > )
2020-12-26 09:47:02 +00:00
* Git
2022-11-05 19:51:26 +00:00
* Node.js 16+
2019-10-12 14:25:42 +00:00
### Getting Started
2020-02-02 20:06:32 +00:00
1. Install prerequisites.
2022-11-05 19:55:39 +00:00
2. Install Certificate Manager using Tizen Studio Package Manager.
3. Setup Tizen certificate in Certificate Manager.
4. Clone or download Jellyfin Web repository (< a href = "https://github.com/jellyfin/jellyfin-web" > https://github.com/jellyfin/jellyfin-web</ a > ).
2023-02-05 15:02:32 +00:00
> It is recommended that the web version match the server version.
2019-10-12 14:25:42 +00:00
```sh
2023-02-05 15:02:32 +00:00
git clone -b release-10.8.z https://github.com/jellyfin/jellyfin-web.git
2019-10-12 14:25:42 +00:00
```
2023-02-05 15:02:32 +00:00
> Replace `release-10.8.z` with the name of the branch you want to build.
> You can also use `git checkout` to switch branches.
2022-11-05 19:55:39 +00:00
5. Clone or download Jellyfin Tizen (this) repository.
2019-10-12 14:25:42 +00:00
```sh
2020-03-26 13:22:12 +00:00
git clone https://github.com/jellyfin/jellyfin-tizen.git
2019-10-12 14:25:42 +00:00
```
2020-01-18 10:49:30 +00:00
### Build Jellyfin Web
2019-10-12 14:25:42 +00:00
2021-04-18 21:04:08 +00:00
```sh
cd jellyfin-web
2022-08-24 10:01:19 +00:00
SKIP_PREPARE=1 npm ci --no-audit
2023-09-17 21:29:49 +00:00
USE_SYSTEM_FONTS=1 npm run build:production
2021-04-18 21:04:08 +00:00
```
2020-01-18 10:49:30 +00:00
2020-02-02 20:06:32 +00:00
> You should get `jellyfin-web/dist/` directory.
2022-08-24 10:01:19 +00:00
> `SKIP_PREPARE=1` can be omitted for 10.9+.
2023-09-17 21:29:49 +00:00
> `USE_SYSTEM_FONTS=1` is required to discard unused fonts and to reduce the size of the app. (Since Jellyfin Web 10.9)
2022-08-24 10:01:19 +00:00
> Use `npm run build:development` if you want to debug the app.
2020-01-18 10:49:30 +00:00
If any changes are made to `jellyfin-web/` , the `jellyfin-web/dist/` directory will need to be rebuilt using the command above.
### Prepare Interface
2019-10-12 14:25:42 +00:00
```sh
2020-01-18 10:49:30 +00:00
cd jellyfin-tizen
2022-03-17 18:23:25 +00:00
JELLYFIN_WEB_DIR=../jellyfin-web/dist npm ci --no-audit
2019-10-12 14:25:42 +00:00
```
2020-02-02 20:06:32 +00:00
> You should get `jellyfin-tizen/www/` directory.
2019-10-12 14:25:42 +00:00
> The `JELLYFIN_WEB_DIR` environment variable can be used to override the location of `jellyfin-web`.
2023-09-17 21:29:49 +00:00
> Add `DISCARD_UNUSED_FONTS=1` environment variable to discard unused fonts and to reduce the size of the app. (Until Jellyfin Web 10.9)
> Don't use it with Jellyfin Web 10.9+. Instead, use `USE_SYSTEM_FONTS=1` environment variable when building Jellyfin Web.
2020-02-02 20:06:32 +00:00
If any changes are made to `jellyfin-web/dist/` , the `jellyfin-tizen/www/` directory will need to be rebuilt using the command above.
2020-01-18 10:49:30 +00:00
2019-10-12 14:25:42 +00:00
### Build WGT
2020-02-02 20:06:32 +00:00
> Make sure you select the appropriate Certificate Profile in Tizen Certificate Manager. This determines which devices you can install the widget on.
2019-10-12 14:25:42 +00:00
```sh
2020-01-18 09:16:22 +00:00
tizen build-web -e ".*" -e gulpfile.js -e README.md -e "node_modules/*" -e "package*.json" -e "yarn.lock"
2019-10-12 14:25:42 +00:00
tizen package -t wgt -o . -- .buildResult
```
2020-02-02 20:06:32 +00:00
> You should get `Jellyfin.wgt`.
## Deployment
2019-10-12 14:25:42 +00:00
### Deploy to Emulator
1. Run emulator.
2. Install package.
```sh
2020-02-02 20:06:32 +00:00
tizen install -n Jellyfin.wgt -t T-samsung-5.5-x86
2019-10-12 14:25:42 +00:00
```
2020-02-02 20:06:32 +00:00
> Specify target with `-t` option. Use `sdb devices` to list them.
2019-10-12 14:25:42 +00:00
### Deploy to TV
1. Run TV.
2. Activate Developer Mode on TV (< a href = "https://developer.samsung.com/tv/develop/getting-started/using-sdk/tv-device" > https://developer.samsung.com/tv/develop/getting-started/using-sdk/tv-device</ a > ).
3. Connect to TV with Device Manager from Tizen Studio. Or with sdb.
```sh
sdb connect YOUR_TV_IP
```
2022-11-05 19:55:39 +00:00
4. If you are using a Samsung certificate, `Permit to install applications` on your TV using Device Manager from Tizen Studio. Or with sdb.
2020-02-02 20:06:32 +00:00
> TODO: Find a command
5. Install package.
2019-10-12 14:25:42 +00:00
```sh
2020-02-02 20:06:32 +00:00
tizen install -n Jellyfin.wgt -t UE65NU7400
2019-10-12 14:25:42 +00:00
```
2020-02-02 20:06:32 +00:00
> Specify target with `-t` option. Use `sdb devices` to list them.