Autotyed is a collection of scripts, web site (html, javascript, css, images), launchagents (for macos), systemd service units (for linux), and installation instructions. The components provided in this repo allow you to quickly setup and configure a full-blown media, home automation hub and security server on a Mac. If you're using Linux, then these components are limited to media, but could include other options in the future.
I run all of the following software on a single Mac server. It has a lot of cores and ram.
- Contains 64TB of storage for media (Movies, TV, Music) using LSI Raid card.
- Has a custom web interface (this repo!) using valid SSL, and available from the Internet.
- The web interface allows full access to the apps below (those that provide their own web interface).
- Controls over 200 home automation switches and sensors
- Detects motion on, and records video from 8 IP security cameras
- Controls 2 switches, 3 WAPs and a router.
- Graphs everything. Server metrics, house lights, temps, doors, windows, energy; *.
- Runs the following software:
- Deluge - Manages media downloaded through torrents.
- SecuritySpy - Detects motion on IP cameras; provides triggers to home automation.
- Indigo - Customizable and programmable home automation solution
- Sonarr - TV Series Library
- Radarr - Movie Library
- Lidarr - Music Library
- Bazarr - Retrieves subtitles for all movies and tv shows
- Jackett - Allows Sonarr and Radarr to use custom trackers.
- NZBGet - This downloads media from newsgroups.
- Plex - This allows my family and friends to watch all my media.
- Tautulli - Provides insights and graphs into details Plex usage
- Ubiquiti UniFI Controller - Controls the network gear.
- Grafana - Contains graphs for EVERYTHING.
- Nginx - Web server with auto-renewing SSL cert from Let's Encrypt using certbot
- InfluxDB - Time series database for Grafana backend
- Telegraf - Collects network metrics and custom metrics for Sonarr, Radarr & Plex.
- Glances - stores systems metrics in InfluxDB
- unpacker-poller - to extract Deluge downloads
- unifi-poller - optionally store UniFI controller metrics in InfluxDB
I'm trying to show you how to achieve what I did. Not just show you, but provide directions, scripts and startup daemons to make it all work. I'm also giving you the custom web interface (it's pretty simple, but elegant and powerful), and the nginx routes to make all these desperate apps work on a single domain. Plex, specifically, has some very custom rules to make it work via SSL only and through nginx. You can run most of this stack on Linux, but if you do with a Mac (or a powerful hackintosh), you can even get full access to SecuritySpy and Indigo (including Indigo Touch) through the same https URL.
Not only does my media system keep itself completely updated and provide a cool web interface, it has graphs! My network is completely graphed (switches, clients, router, access points - you name it) using unifi-poller. I created custom telegraf scripts to dump data into InfluxDB about the media libraries, so that data is all graphed too. Glances and telegraf both create system-level metrics; things like load, disk usage, memory utilization, context switching and so on.
There are so many custom pieces here, especially when you start digging into my Indigo configuration, but I will attempt to document everything I can. I'm writing this for myself, really. I'm giving it to you, but this is my baby and I want to be able to recreate it if the water heater next to it ever explodes.
Start with the Autotyed Installation wiki article.