Synology NAS

I’m not a Linux or Synology expert, if you feel that there’s a better way, feel free to discuss/submit suggestions in the forum.  There are multiple methods to setup, this is just one of them. Guide written based on XPenology 5.2 .

Step 1: Preparing the Package Sources

  1. Open Package Center, and click Settings.
  2. Under General tab, set Trust Level to Any publisher.
  3. Under Beta tab, check Yes, I want to see beta versions!
  4. Under Package Sources tab, add location (you can give them any name):

Step 2: Bootstrap Synology

You’ll need to install ipkg/opkg, by bootstrapping your Synology.

  1. Launch Package Center, and click Community.
  2. Install Easy Bootstrap Installer by QTip.
  3. Select Qnapware/Entware oPKG
  4. Install iPKGui by QTip.
  5. Open iPKGui from Main Menu, and install Make.

Step 3: Plex, JAVA, Perl

  1. Install manually or use the Package Center to install Plex, JAVA Manager and Perl.
  2. To install JAVA, use JAVA Manager and follow the instructions provided.
  3. You may need to restart after installing.

Step 4: Copy the plug-in file

  1. Launch File Station, go to:
    Plex > Library > Application Support -> Plex Media Server -> Plug-ins
  2. Copy the HDHRViewer zip file to the Plug-ins folder.
  3. Right click and Extract Here. HDHRViewerV2.bundle folder should appear.
  4. Refer to for more instructions. Make sure you have setup the IP address to the HDHomeRun device.

Step 5: Prepare required files

  1. Launch Control Panel, go to Shared Folder.
  2. Create a folder called HDHRViewer. Remember which volume it is located. (eg. Volume 1)
  3. Copy channel-guide-app.jar (this file was renamed)
  4. Copy app-config.yml
  5. Copy
  6. Edit app-config.yml and make sure xmlTvPath points to the correct location:
    xmlTvPath: /volume1/HDHRViewer/xmltv.xml

Step 6: Enable SSH

You can either use Telnet or SSH. Experts, any suggestions on this?

  1. Launch Control Panel, under Advanced Mode, Open Terminal & SNMP.
  2. Check Enable SSH service.
  3. Go to Package Center and click Community.
  4. Install GateOne by SynoCommunity. The installer will install Python.

Step 7: Perl JSON

  1. Launch GateOne from Main Menu. (or use any SSH/Telnet clients)
  2. Connect to localhost and login as root. Password is the same as admin account.
  3. Run the command:
  4. perl -MCPAN -e shell
    install JSON

Step 8: SSH

  1. Launch GateOne from Main Menu.
  2. Navigate to the HDHRViewer folder:
  3. cd /volume1/HDHRViewer
    chmod 777

Step 9: Task Scheduler

  1. Launch Control Panel, go to Task Scheduler.
  2. Click Create and User-Defined Script.
    Task: zap2xml
    User: root
    User-defined script:

    /volume1/HDHRViewer/ -u -p password
  3. Select and run the script for test run. If script was successful, you should see a cache folder and xmltv.xml file in the HDHRViewer folder.

Step 10: Channel App Guide

  1. Launch GateOne from Main Menu
  2. Login to localhost as root.
  3. Run command:
    cd \volume1\HDHRViewer
    java -jar channel-guide-app.jar server app-config.yml
  4. You could save above command as a shell script.