#!/bin/bash if [ ! -f .env ]; then echo "Please create a .env file" exit 1 fi source .env # User / Group ID will be determined automagically id_output=$(id) PUID=$(echo "$id_output" | awk -F'[=|(]' '{print $2}') PGID=$(echo "$id_output" | awk -F'[=|(]' '{print $4}') # Hack for synology... PGID=101 # Create the necessary folders mkdir -p $PATH_TO_DOWNLOADS/{complete,incomplete,sonarr,radarr,readarr_audio,readarr_book,torrents} mkdir -p "$PATH_TO_TV" "$PATH_TO_MOVIES" "$PATH_TO_AUDIOBOOKS" "$PATH_TO_BOOKS" mkdir -p $PATH_TO_CONFIG/{deluge,gluetun,overseer,prowlarr,radarr,readarr_audiobooks,readarr_books,sabnzbd,sonarr} mkdir -p $PATH_TO_CONFIG/plex/{tmp,config,transcode} # Use the correct sed command depending on host system if [[ "$OSTYPE" == "linux-gnu" ]]; then SED="sed -i" elif [[ "$OSTYPE" == "darwin"* ]]; then SED="sed -i ''" else echo "Unsupported operating system" exit 1 fi cp docker-compose.yaml.tmpl docker-compose.yaml # Preserve ownership between host and containers eval "$SED \"s/{{PUID}}/$PUID/g\" docker-compose.yaml" eval "$SED \"s/{{PGID}}/$PGID/g\" docker-compose.yaml" # Network Config eval "$SED \"s/{{GLUETUN_SUBNET}}/$(echo "$GLUETUN_SUBNET" | sed 's/\//\\\//g')/g\" docker-compose.yaml" eval "$SED \"s/{{GLUETUN_IP}}/$GLUETUN_IP/g\" docker-compose.yaml" eval "$SED \"s/{{PLEX_IP}}/$PLEX_IP/g\" docker-compose.yaml" # Path Config eval "$SED \"s/{{PATH_TO_DOWNLOADS}}/$(echo "$PATH_TO_DOWNLOADS" | sed 's/\//\\\//g')/g\" docker-compose.yaml" eval "$SED \"s/{{PATH_TO_CONFIG}}/$(echo "$PATH_TO_CONFIG" | sed 's/\//\\\//g')/g\" docker-compose.yaml" eval "$SED \"s/{{PATH_TO_TV}}/$(echo "$PATH_TO_TV" | sed 's/\//\\\//g')/g\" docker-compose.yaml" eval "$SED \"s/{{PATH_TO_MOVIES}}/$(echo "$PATH_TO_MOVIES" | sed 's/\//\\\//g')/g\" docker-compose.yaml" eval "$SED \"s/{{PATH_TO_BOOKS}}/$(echo "$PATH_TO_BOOKS" | sed 's/\//\\\//g')/g\" docker-compose.yaml" eval "$SED \"s/{{PATH_TO_AUDIOBOOKS}}/$(echo "$PATH_TO_AUDIOBOOKS" | sed 's/\//\\\//g')/g\" docker-compose.yaml" if [[ "$VPN_SERVICE_PROVIDER" == "mullvad" ]]; then VPN_CONFIG=$(cat < docker-compose.tmp mv docker-compose.tmp docker-compose.yaml