nvllsvm / emby-unlocked

Emby with the premium Emby Premiere features unlocked.
GNU General Public License v2.0
271 stars 61 forks source link

[Request] Help with making a Synology Version #4

Closed deten closed 6 years ago

deten commented 6 years ago

Hi folks.

I have Emby installed on my Synology Drive. I can see its not supported, and I wanted to see if anyone would help me out walking through setting this up. I am not very familiar with this stuff. I tried searching my Drive for the connectionmanager.js file or the pluginsecuritymanager.cs file but I couldn't find either.

deten commented 6 years ago

OKay I think I have figured out most of this:

  1. Download Docker for Windows and Docker Toolkit, Install both
  2. Download the entire EMBY github and the emby-unlocked github
  3. Put both emby folders into a common folder, for example: c:\users**yourname**\Docker\
  4. Launch Docker Quickstart Terminal from Start Menu
  5. copy the patch file to the same folder within the emby github: "patch -N -p1 -r - PluginSecurityManager.cs < PluginSecurityManager.cs.patch"
  6. Go to that folder and run the patch command shown on the main page of emby-unlocked github
  7. replace the server file with the one from emby-unlocked
  8. you're ready to build the file
  9. go to emby github files you stored on your drive. Inside is a docker folder
  10. Run the command in the readme file (docker build etc): "docker build --rm=true -t mbserver ."
  11. After its done you need to export the image.
  12. List all images with command "docker images"
  13. find the file name and export to wherever you want: "docker save -o d:/mbserver.tar mbserver"

At this point I imported this mbserver into docker on my synology drive.

Update: After importing to Docker on my Synology drive I am stuck. I import the image. Make a container and then nothing happens.

deten commented 6 years ago

Okay last update for now. On this page: https://hub.docker.com/r/nvllsvm/emby-unlocked/ There's instructions for running the file. What the hell am I supposed to put in all these conditions?

docker run -d \ -p 8096:8096 \ --name= \ -v :/media \ -v :/config \ -v /etc/localtime:/etc/localtime:ro \ -e UMASK= \ -e PUID= \ -e PGID= \ nvllsvm/emby-unlocked

zacharyrs commented 6 years ago

I'm not 100% sure about the Synology Drive, but I assume it uses an x86 or x64 processor. In this case, I imagine that the prebuilt image would work fine.

In this case, I think you just need to SSH into the drive, then run the command you showed above, as follows:

docker run -d
-p 8096:8096 <this only exposes the web UI, if you want DLNA etc use --net=host, not recommended though>
--name=<whatever you want to name the container (e.g. emby)>
-v <path to local media (e.g. /data/media)>:/media 
-v <path to store config (e.g. /data/emby)>:/config 
-v /etc/localtime:/etc/localtime:ro 
-e UMASK=<UMASK is applied to files on creation, just set it to 000 if not needed (usual I think)>
-e PUID=<the UID for files>
-e PGID=<the GID for files>
nvllsvm/emby-unlocked

For me, I use the following:

docker run
--net=host
--name=emby
-v /data/media:/media
-v /data/emby:/config
-v /etc/localtime:/etc/localtime:ro
-e UMASK=000
-e PUID=1001
-e PGID=1001
nvllsvm/emby-unlocked:latest

I opted to use net=host has it fixes DLNA, which I want. The UMASK is 000 as I don't need to apply it/don't really know what I would need it for. PGID and PUID are the group and user id's for the user 'media', which I created solely for media related programs. The program is run via systemd on an Arch Linux box, with the user and group also set as media in the config.

Hope that helps you figure it out, Zach

nabilattaya commented 6 years ago

I was able to get it to run on my 416play (docker installed manually with the synology package). The only volume I added was the video volume, and I set the home directory to the home for a user named emby I created. However, I can't seem to get past the nag screen on my smart tv, and in the server settings it shows "thanks for supporting" but asks for a pin code in the premiere section of the settings.

zacharyrs commented 6 years ago

@nabilattaya Are you accessing emby via the native app for your TV, or via the web browser? The app checks your key independently of the server, so you need to view it via the web browser instead. Regarding the pin code, I don't know what you're talking about, I have no such thing on my end. Mind screenshotting?

@deten If you've solved your issue please close this thread.

nabilattaya commented 6 years ago

@zacharyrs it's via the native app, if that's expected no worries. screenshot

zacharyrs commented 6 years ago

@nabilattaya

Run it via the webbrowser instead. The native app runs via their own webserver and talks to yours somehow (not sure exactly).

That screen is where you would enter the key if you had one. In this case it serves no purpose as the patch unlocks them. You can add the following to your CSS to hide that menu:

a[href="supporterkey.html"]{display: none !important;}