The Roku is awesome but it’s missing a critical feature – it can’t play video from your local network. To solve this I’m using Roksbox which is a channel for Roku (like an app on an Apple or an Android device). I’ve got all my content visible on my network via UPnP/DLNA (Universal Plug-and-Play) shares on my NAS, a Synology DS209. This is great for most devices and I don’t want to change my current setup, but Roksbox needs the content to be on a web server as opposed to using UPnP.

Getting this to work is a pain and took a long time to figure out. I’m using this post to document what I had to do, partially for anyone else who needs it but to be honest its mostly for myself in case I need to rebuild any part in the future. I’m getting ready to update the firmware on my NAS so it’s important to make sure any custom configurations are documented.

By default when you turn on the “Media Server” in the control panel of the Synology NAS it creates “music”, “photo” and “video” shares. Likewise when “Web Services” is turned on it creates a “web” share. The trick is going to be making the three media server shares appear to also be in the web share as browsable web directories.

The Basic Outline

  1. enable symbolic links,
  2. create symbolic links so our uPnP shares also appear on the web server,
  3. enable web directory browsing, and
  4. configure Roksbox on the Roku

Enabling Symbolic Links

  • In your desktop browser, connect to your NAS and log in, go to the “control panel”, go to the “Terminal” icon. Turn on “Enable SSH service”.
  • From your computer, SSH into your NAS. Open a command prompt, type “ssh 192.168.1.2 -l root” or whatever your NAS IP address is. You will be prompted for your password. Note: Log in as “root” and not any other user such as “admin”, only root has the necessary rights. (If your OS doesn’t have a ssh client installed you can use Cygwin or the one in ultraedit).
  • Browse to the configuration directory. type “cd /usr/syno/etc”.
  • Edit the file smb.conf. You will need to use the vi editor. If you don’t know the vi editor, use this guide to get up to speed. I strongly recommend you don’t just wing it, vi is very old school.
  • In the “GLOBAL” section change/add the following three lines:
    follow symlinks = yes
    wide symlinks = yes
    unix extensions = no
  • Save the file, close vi.
  • Close the ssh session by typing “exit”.
  • Restart the NAS. From the main web interface screen the home button (a down arrow in the upper left corner) brings up a dialog box with a “Restart” button at the bottom. Wait a couple of minutes for the restart.

Create the Links to the Media Shares

  • From a command prompt, “ssh 192.168.1.2 -l root”, login with your password.
  • Change to the web directory. Type “cd /volume1/web/”.
  • Create a Media directory. Type “mkdir Media”.
  • Move to the new Media directory. Type “cd Media”.
  • Create the three symbolic links. Type “ln -s /volume1/video/ Videos”, then “ln -s /volume1/photo/ Photos”, and finally “ln -s /volume1/music/ Music”. I recommend using these names (proper case and plural), they work best with Roksbox defaults. Also, copy and paste from here as the spacing is hard to see; there is a space between the path and the new symbolic link name.
  • Type “exit” to end your ssh session.

Enable Directory Browsing

  • From your computer browse through your network to your NAS share. For me the path is “smb://192.168.1.2/web/Media”. Note that if you love vi you can also do this part via ssh.
  • Create a new file in that directory called “.htaccess”. Yes, it starts with a period.
  • Using your favorite editor, edit the new file. Add just one line: “Options +Indexes” and then save/close. If you know what you are doing you can add other options too. EDIT: See the comments below for some suggestions, but they are all optional.
  • Using your favorite browser, go to http://192.168.1.2/Media/Videos/ and make sure you have a directory listing.

Setting Up the Roku

  • There isn’t much to do on the Roku, just install Roksbox and follow your nose. Although the Roksbox config menus are deep it’s fairly straight forward. If there are questions about this I can flesh out this section.
  • Be sure to buy your copy of Roksbox. Its free-to-try for 30 days, then $12.50 for all your Rokus. Yes it costs more than the typical iPhone app but its a much smaller market. I have no affiliation with Roku or Roksbox, but I am a fan of both.

Cleanup / Other

  • You don’t want SSH to be left on. Go back to the Synology control panel, go to the Terminal section, and turn it off.
  • I’ve found I need to re-index my UPnP on occasion. From the NAS control panel, select “Media Server” and on the first tab press the “Re-Index” button. It can take a few minutes.

More Resources
These links might be of some help, they were helpful for me in figuring this out:

EDIT: (August 2013) The latest Synology DSM version 4.2 breaks this solution. You can get around this if you want to (see Steve’s comments starting July 2013), but the time for this work-around may have past. There is now a Roku app from Synology called DS Video which removes the need for all of this. It is far better than the Plex solutions, the interface is nicer than Roksbox, and there are are iOS/Android/Windows phone versions too.