Skip to content

Commit

Permalink
Provide some installation notes and a helper script. Resolves jellyfi…
Browse files Browse the repository at this point in the history
  • Loading branch information
ShaheedHaque committed Jul 4, 2021
1 parent b2d92ae commit f9c2778
Show file tree
Hide file tree
Showing 2 changed files with 70 additions and 0 deletions.
20 changes: 20 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,23 @@ Warning: This app is a legacy program meant for older Samsung Smart TVs running
You may also wish to try a web browser with Jellyfin, wherever possible.

This is a fork of the original jellyfin-samsungtv repo which is now archived. If you own an older samsung TV as I do you probably wanted a more updated app. Feel free to use and start issues and pull requests. However, I am not the original developer of this app so I maynot be able to provide the best help.

## Installation

Install the app using your own web server's IP and the appropriate instructions
for your model year TV. Look [here](https://emby.media/community/index.php?/topic/9869-samsung-orsay-smarttv-2011-2015-community-app-install-instructions/&/topic/9869-samsung-smart-tv-app-install-instructions/?p=277346)
for general instructions.

These instructions explain how to prepare the files to be uploaded. It is also
possible to load the files using a USB stick; these notes don't cover that
process.

1. Edit the supplied `package.sh` script to set your own IP address and
document root. The script assumes a modern Linux (Ubuntu) setup; you may
need to make other adjustments to suit your environment.
1. Run the script. It will:

1. Create a ZIP file and an XML file that points to it.
2. Copy the file to your web server's document root.
3. Run the `netcat` command to listen for debug messages emitted when
the application is loaded.
50 changes: 50 additions & 0 deletions package.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
#!/bin/bash
#
# Create .zip file anme .xml file needed for upload.
#
set -o errexit
set -o pipefail
set -o nounset
typeset -r infomsg=%%$(basename $0)-info:
typeset -r errmsg=%%$(basename $0)-err:

CONFIG=config.xml
NAME=$(grep '<widgetname' $CONFIG | sed 's/>/</g' | cut -d\< -f3)
VERSION=$(grep '<ver' $CONFIG | sed 's/>/</g' | cut -d\< -f3)
DESCRIPTION=$(grep '<description' $CONFIG | sed 's/>/</g' | cut -d\< -f3)
ZIP=${NAME}_${VERSION}_Europe_$(date +"%Y%m%d").zip
WIDGETLIST=widgetlist.xml
#
# TODO: modifythese values to suit your web server.
#
WEBSERVER_ADDR=192.168.1.108
WEBSERVER_ROOT=/var/www/html/
#
# Create files.
#
echo $infomsg Creating $ZIP $WIDGETLIST
zip -q -r $ZIP app config.xml icon images index.html Main.css widget.info
SIZE=$(stat --format="%s" $ZIP)
cat > $WIDGETLIST <<EOF
<rsp stat="ok">
<list>
<widget id="$NAME">
<title>$NAME</title>
<compression type="zip" size="$SIZE"/>
<description>$DESCRIPTION</description>
<download>http://$WEBSERVER_ADDR/$ZIP</download>
</widget>
</list>
</rsp>
EOF
#
# Copy files to server, and wait for debug messages.
#
echo $infomsg Deploy files to webserver
sudo cp $ZIP $WIDGETLIST $WEBSERVER_ROOT
#
# Copy files to server, and wait for debug messages.
#
echo $infomsg Display debug messages when app is loaded
nc -l 45634

0 comments on commit f9c2778

Please sign in to comment.