≺ Back

snaps/Sonarr → Deluge → Plex

❲Some time in early 2020❳

Contents

  1. The snaps
  2. Early notes
  3. Installation
  4. Set up
  5. Late notes

The snaps

Early notes

  1. Downloading TV shows is probably illegal where you are
  2. I have a Plex Pass
  3. I snapped the Deluge snap

Installation

snap install sonarr deluge-lukewh plexmediaserver

Optional

snap install --edge caddy

Set up

Shared mounts

Snaps are confined, as such they can't talk to each other easily. Fortunately there's an interface available for all 3 snaps called removable-media. I can use this interface to create a shared mount that all 3 snaps can access.

Create the following folders as your user: Downloading, Downlaoded, and Media.

Create the following folders: /mnt/Downloading, /mnt/Downloaded, and /mnt/Media.

I created a file called mountall. I run it whenever I restart my server: ./mountall*. Run it now.

#!/bin/bash

mount --bind /home/username/Downloading/ /mnt/Downloading
mount --bind /home/username/Downloaded/ /mnt/Downloaded
mount --bind /home/username/Media /mnt/Media
chown -R root:username /mnt/*

Make the file executable chmod +x mountall.

* When the server has restarted the snap daemons won't have access to the mounts (they've not been created), so it's important to restart all 3 with snap restart :snapName after running ./mountall.

Deluge

  1. Connect removable-media interface with snap connect deluge-lukewh:removable-media.
  2. Restart Deluge daemons (deluged and deluge-web): snap restart deluge-lukewh
  3. Visit localhost:8112. The default password is deluge
  4. Click Preferences in the top bar and enter the following:
    • Download to: /mnt/Downloading
    • Move completedto: ✓ /mnt/Downloaded

Sonarr

  1. Connect removable-media interface with snap connect sonarr:removable-media. I also connected mount-observe in the same manner, so that sonarr can watch for changes and update show statuses automatically.
  2. Restart Sonarr daemon: snap restart sonarr
  3. Visit localhost:8989/settings/mediamanagement
  4. Add the Root folder /mnt/media/
  5. Visit localhost:8989/settings/downloadclients
  6. Click the + and select "Deluge". Change the following fields:
    • Name: Deluge
    • Password: deluge (unless you changed it - you probably should have)
    • Category: blank
  7. Click Test - you should see a green tick
  8. Click Save

Plex

  1. Visit localhost:32400/web/
  2. Follow any steps you see
  3. When adding a "Library" ensure to use /mnt/Media

[Bonus] Caddy

  1. Define your config in Caddyfile
    deluge.domain.com {
      reverse_proxy localhost:8112
      log log/access.deluge.log
    }
    
    sonarr.domain.com {
      reverse_proxy localhost:8989
      log log/access.sonarr.log
    }
    
    plex.domain.com {
      reverse_proxy localhost:32400
      log log/access.plex.log
    }
  2. Upload it to Caddy
    curl localhost:2019/load \
    -X POST \
    -H "Content-Type: text/caddyfile" \
    --data-binary @Caddyfile
  3. Restart Caddy daemon snap restart caddy

Late notes

Obviously your mileage may vary and I may have missed some steps out, but ultimately these three (four) snaps have worked flawlessly for me for the past year.

If you know of a better way of managing this kind of thing; great, enjoy doing things your way!