diff --git a/.github/workflows/auto-build.yml b/.github/workflows/auto-build.yml
index 0f81953d..efdb9adb 100644
--- a/.github/workflows/auto-build.yml
+++ b/.github/workflows/auto-build.yml
@@ -39,6 +39,10 @@ on:
- rutorrent
- swag
- thelounge
+ - build-all-the-mods
+ append-tag:
+ required: false
+ description: 'Append a the tag with "-custom" e.g :radarr-testing'
jobs:
push_to_ghcr_io:
runs-on: ubuntu-latest
@@ -74,10 +78,19 @@ jobs:
docker push ghcr.io/gilbn/theme.park:$directory
done
- name: manually build
- if: ${{ github.event.inputs.app }}
+ if: ${{ github.event.inputs.app && github.event.inputs.app != 'build-all-the-mods' }}
run: |
- docker build docker-mods/${{ github.event.inputs.app }} --tag ghcr.io/gilbn/theme.park:${{ github.event.inputs.app }}
- docker push ghcr.io/gilbn/theme.park:${{ github.event.inputs.app }}
+ docker build docker-mods/${{ github.event.inputs.app }} --tag ghcr.io/gilbn/theme.park:${{ github.event.inputs.app }}${{ github.event.inputs.append-tag }}
+ docker push ghcr.io/gilbn/theme.park:${{ github.event.inputs.app }}${{ github.event.inputs.append-tag }}
+ - name: manually build all mods
+ if: ${{ github.event.inputs.app == 'build-all-the-mods' }}
+ run: |
+ for dir in docker-mods/*;
+ do
+ app="$( echo "$dir" | cut -d'/' -f2 -s )"
+ docker build docker-mods/$app --tag ghcr.io/gilbn/theme.park:$app${{ github.event.inputs.append-tag }}
+ docker push ghcr.io/gilbn/theme.park:$app${{ github.event.inputs.append-tag }}
+ done
push_to_dockerhub:
runs-on: ubuntu-latest
steps:
@@ -111,7 +124,16 @@ jobs:
docker push gilbn/theme.park:$directory
done
- name: manually build
- if: ${{ github.event.inputs.app }}
+ if: ${{ github.event.inputs.app && github.event.inputs.app != 'build-all-the-mods' }}
run: |
- docker build docker-mods/${{ github.event.inputs.app }} --tag gilbn/theme.park:${{ github.event.inputs.app }}
- docker push gilbn/theme.park:${{ github.event.inputs.app }}
\ No newline at end of file
+ docker build docker-mods/${{ github.event.inputs.app }} --tag gilbn/theme.park:${{ github.event.inputs.app }}${{ github.event.inputs.append-tag }}
+ docker push gilbn/theme.park:${{ github.event.inputs.app }}${{ github.event.inputs.append-tag }}
+ - name: manually build all mods
+ if: ${{ github.event.inputs.app == 'build-all-the-mods' }}
+ run: |
+ for dir in docker-mods/*;
+ do
+ app="$( echo "$dir" | cut -d'/' -f2 -s )"
+ docker build docker-mods/$app --tag gilbn/theme.park:$app${{ github.event.inputs.append-tag }}
+ docker push gilbn/theme.park:$app${{ github.event.inputs.append-tag }}
+ done
diff --git a/css/addons/sonarr/sonarr-4k-text-logo/sonarr-4k-text-logo.css b/css/addons/sonarr/sonarr-4k-text-logo/sonarr-4k-text-logo.css
new file mode 100644
index 00000000..9dc5b903
--- /dev/null
+++ b/css/addons/sonarr/sonarr-4k-text-logo/sonarr-4k-text-logo.css
@@ -0,0 +1,55 @@
+@media (min-width: 752px) {
+ [class*="PageHeader-logo-"] {
+ display: none !important;
+ }
+ [class*="PageHeader-logoContainer-"]:before {
+ background-image: url("/css/addons/sonarr/sonarr-4k-text-logo/sonarr-4k-text.png");
+ display: inline-block;
+ margin-left: 15px;
+ width: 124px;
+ height: 40px;
+ content:"";
+ background-size: cover;
+ -webkit-background-size: cover;
+ -moz-background-size: cover;
+ -o-background-size: cover;
+ }
+}
+
+
+[class*="LoadingPage-logoFull-"] {
+ display: none !important;
+}
+
+[class*="LoadingPage-page-"]:before {
+ background-image: url("/css/addons/sonarr/sonarr-4k-text-logo/sonarr-4k-text.png");
+ display: inline-block;
+ width: 124px;
+ height: 40px;
+ content:"";
+ background-size: cover;
+ -webkit-background-size: cover;
+ -moz-background-size: cover;
+ -o-background-size: cover;
+ margin-top: 50px;
+ margin-right: auto;
+ margin-left: auto;
+
+}
+
+@media (max-width: 767px) {
+ [class*="PageHeader-logo-"] {
+ display: none !important;
+ }
+ [class*="PageHeader-logoContainer-"]:before {
+ background-image: url("/css/addons/sonarr/sonarr-4k-logo/sonarr-4k.png");
+ display: inline-block;
+ width: 32px;
+ height: 32px;
+ content:"";
+ background-size: cover;
+ -webkit-background-size: cover;
+ -moz-background-size: cover;
+ -o-background-size: cover;
+ }
+}
diff --git a/css/addons/sonarr/sonarr-4k-text-logo/sonarr-4k-text.png b/css/addons/sonarr/sonarr-4k-text-logo/sonarr-4k-text.png
new file mode 100644
index 00000000..90caa9d6
Binary files /dev/null and b/css/addons/sonarr/sonarr-4k-text-logo/sonarr-4k-text.png differ
diff --git a/docker-mods/bazarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/bazarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/bazarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/bazarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..c3b07812
--- /dev/null
+++ b/docker-mods/bazarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,62 @@
+#!/usr/bin/with-contenv bash
+
+echo '---------------------------'
+echo '| Bazarr theme.park Mod |'
+echo '---------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_ADDON'=${TP_ADDON}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+APP_FILEPATH='/app/bazarr/bin/frontend/build/index.html'
+if [ "${TP_HOTIO}" = true ]; then
+ echo 'Changing to Hotio file path!'
+ APP_FILEPATH='/app/bin/frontend/build/index.html'
+fi
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Adding stylesheets
+if ! grep -q "${TP_DOMAIN}/css/base" "${APP_FILEPATH}"; then
+ echo '---------------------------'
+ echo '| Adding the stylesheet |'
+ echo '---------------------------'
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ printf 'Stylesheet set to %s\n' "${TP_THEME}"
+ if [[ -n ${TP_ADDON} ]]; then
+ for addon in $(echo "$TP_ADDON" | tr "|" " "); do
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ printf 'Added custom addon: %s\n\n' "${addon}"
+ done
+ fi
+fi
diff --git a/docker-mods/bazarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/bazarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/bazarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/bazarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/bazarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/bazarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/bazarr/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/bazarr/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/bazarr/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/bazarr/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/calibre-web/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/calibre-web/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/calibre-web/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/calibre-web/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..19b1417e
--- /dev/null
+++ b/docker-mods/calibre-web/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,50 @@
+#!/usr/bin/with-contenv bash
+
+echo '--------------------------------'
+echo '| Calibre-web theme.park Mod |'
+echo '--------------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Adding stylesheets
+if ! grep -q "${TP_DOMAIN}/css/base" /app/calibre-web/cps/templates/layout.html; then
+ echo '---------------------------'
+ echo '| Adding the stylesheet |'
+ echo '---------------------------'
+ sed -i "s/<\/head>/<\/head> /g" /app/calibre-web/cps/templates/layout.html
+ sed -i "s/<\/head>/<\/head> /g" /app/calibre-web/cps/templates/layout.html
+ printf 'Stylesheet set to %s\n' "${TP_THEME}
+ "
+fi
diff --git a/docker-mods/calibre-web/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/calibre-web/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/calibre-web/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/calibre-web/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/calibre-web/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/calibre-web/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/calibre-web/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/calibre-web/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/calibre-web/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/calibre-web/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/deluge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/deluge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/deluge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/deluge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..92774460
--- /dev/null
+++ b/docker-mods/deluge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,51 @@
+#!/usr/bin/with-contenv bash
+
+echo '---------------------------'
+echo '| Deluge theme.park Mod |'
+echo '---------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Adding stylesheets
+DELUGE_INDEX_PATH=$(find /usr -name index.html)
+if ! grep -q "${TP_DOMAIN}/css/base" ${DELUGE_INDEX_PATH}; then
+ echo '---------------------------'
+ echo '| Adding the stylesheet |'
+ echo '---------------------------'
+ sed -i "s/<\/head>/<\/head> /g" ${DELUGE_INDEX_PATH}
+ sed -i "s/<\/head>/<\/head> /g" ${DELUGE_INDEX_PATH}
+ printf 'Stylesheet set to %s\n' "${TP_THEME}
+ "
+fi
diff --git a/docker-mods/deluge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/deluge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/deluge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/deluge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/deluge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/deluge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/deluge/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/deluge/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/deluge/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/deluge/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/duplicati/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/duplicati/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/duplicati/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/duplicati/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..1c1fa3ed
--- /dev/null
+++ b/docker-mods/duplicati/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,60 @@
+#!/usr/bin/with-contenv bash
+
+echo '----------------------------'
+echo '| Duplicati theme.park Mod |'
+echo '----------------------------'
+
+APP_FILEPATH='/app/duplicati/webroot'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'APP_FILEPATH'=${APP_FILEPATH}\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+sed_file(){
+ sed -i "s/<\/head>/<\/head> /g" $1
+ sed -i "s/<\/head>/<\/head> /g" $1
+ printf 'Stylesheet set to %s on %s\n\n' "${TP_THEME}" "$1"
+}
+
+# Adding stylesheets
+echo '---------------------------------------'
+echo '| Adding the stylesheet to html files |'
+echo '---------------------------------------'
+
+if ! grep -q "${TP_DOMAIN}/css/base" "${APP_FILEPATH}/index.html"; then
+ find ${APP_FILEPATH} -type f -iname *.html | while read fname
+ do
+ sed_file $fname
+ done
+fi
diff --git a/docker-mods/duplicati/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/duplicati/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/duplicati/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/duplicati/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/duplicati/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/duplicati/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/duplicati/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/duplicati/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/duplicati/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/duplicati/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/emby/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/emby/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/emby/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/emby/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..215209dc
--- /dev/null
+++ b/docker-mods/emby/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,43 @@
+#!/usr/bin/with-contenv bash
+
+echo '-------------------------'
+echo '| Emby theme.park Mod |'
+echo '-------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Adding stylesheets
+printf '%s\n' "@import url('${TP_SCHEME}://${TP_DOMAIN}/css/${THEME_TYPE}/${TP_THEME}.css');" "@import url('${TP_SCHEME}://${TP_DOMAIN}/css/base/emby/emby-base.css');" > /app/emby/dashboard-ui/modules/themes/light/theme.css
+printf 'Stylesheet set to %s\n' "${TP_THEME}"
diff --git a/docker-mods/emby/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/emby/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/emby/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/emby/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/emby/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/emby/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/emby/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/emby/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/emby/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/emby/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/jackett/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/jackett/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/jackett/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/jackett/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..abaf1b50
--- /dev/null
+++ b/docker-mods/jackett/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,56 @@
+#!/usr/bin/with-contenv bash
+
+echo '---------------------------'
+echo '| Jackett theme.park Mod |'
+echo '---------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+APP_FILEPATH='/app/Jackett/Content/index.html'
+if [ "${TP_HOTIO}" = true ]; then
+ echo 'Changing to Hotio file path!'
+ APP_FILEPATH='/app/Content/index.html'
+fi
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Adding stylesheets
+if ! grep -q "${TP_DOMAIN}/css/base" "${APP_FILEPATH}"; then
+ echo '---------------------------'
+ echo '| Adding the stylesheet |'
+ echo '---------------------------'
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ printf 'Stylesheet set to %s\n' "${TP_THEME}
+ "
+fi
\ No newline at end of file
diff --git a/docker-mods/jackett/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/jackett/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/jackett/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/jackett/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/jackett/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/jackett/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/jackett/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/jackett/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/jackett/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/jackett/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/jellyfin/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/jellyfin/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/jellyfin/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/jellyfin/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..18e53c79
--- /dev/null
+++ b/docker-mods/jellyfin/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,50 @@
+#!/usr/bin/with-contenv bash
+
+echo '-----------------------------'
+echo '| Jellyfin theme.park Mod |'
+echo '-----------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Adding stylesheets
+if ! grep -q "${TP_DOMAIN}/css/base" /usr/share/jellyfin/web/index.html; then
+ echo '---------------------------'
+ echo '| Adding the stylesheet |'
+ echo '---------------------------'
+ sed -i "s/<\/body>/<\/body> /g" /usr/share/jellyfin/web/index.html
+ sed -i "s/<\/body>/<\/body> /g" /usr/share/jellyfin/web/index.html
+ printf 'Stylesheet set to %s\n' "${TP_THEME}
+ "
+fi
\ No newline at end of file
diff --git a/docker-mods/jellyfin/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/jellyfin/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/jellyfin/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/jellyfin/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/jellyfin/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/jellyfin/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/jellyfin/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/jellyfin/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/jellyfin/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/jellyfin/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/lazylibrarian/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/lazylibrarian/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/lazylibrarian/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/lazylibrarian/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..d8714131
--- /dev/null
+++ b/docker-mods/lazylibrarian/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,50 @@
+#!/usr/bin/with-contenv bash
+
+echo '----------------------------------'
+echo '| Lazylibrarian theme.park Mod |'
+echo '----------------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Adding stylesheets
+if ! grep -q "${TP_DOMAIN}/css/base" /app/lazylibrarian/data/interfaces/bookstrap/base.html; then
+ echo '---------------------------'
+ echo '| Adding the stylesheet |'
+ echo '---------------------------'
+ sed -i "s/<\/head>/<\/head> /g" /app/lazylibrarian/data/interfaces/bookstrap/base.html
+ sed -i "s/<\/head>/<\/head> /g" /app/lazylibrarian/data/interfaces/bookstrap/base.html
+ printf 'Stylesheet set to %s\n' "${TP_THEME}
+ "
+fi
\ No newline at end of file
diff --git a/docker-mods/lazylibrarian/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/lazylibrarian/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/lazylibrarian/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/lazylibrarian/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/lazylibrarian/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/lazylibrarian/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/lazylibrarian/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/lazylibrarian/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/lazylibrarian/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/lazylibrarian/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/librespeed/root/etc/cont-init.d/98-themepark b/docker-mods/librespeed/root/etc/cont-init.d/98-themepark
index ebcd5445..6a46fa20 100644
--- a/docker-mods/librespeed/root/etc/cont-init.d/98-themepark
+++ b/docker-mods/librespeed/root/etc/cont-init.d/98-themepark
@@ -43,8 +43,8 @@ if ! grep -q "${TP_DOMAIN}/css/base" /app/www/public/index.html; then
echo '---------------------------'
echo '| Adding the stylesheet |'
echo '---------------------------'
- sed -i "s/<\/head>/<\/head> /g" /usr/share/webapps/librespeed/index.html
- sed -i "s/<\/head>/<\/head> /g" /usr/share/webapps/librespeed/index.html
+ sed -i "s/<\/head>/<\/head> /g" /app/www/public/index.html
+ sed -i "s/<\/head>/<\/head> /g" /app/www/public/index.html
printf 'Stylesheet set to %s\n' "${TP_THEME}
"
fi
\ No newline at end of file
diff --git a/docker-mods/librespeed/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/librespeed/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/librespeed/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/librespeed/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..6a46fa20
--- /dev/null
+++ b/docker-mods/librespeed/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,50 @@
+#!/usr/bin/with-contenv bash
+
+echo '-------------------------------'
+echo '| Librespeed theme.park Mod |'
+echo '-------------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Adding stylesheets
+if ! grep -q "${TP_DOMAIN}/css/base" /app/www/public/index.html; then
+ echo '---------------------------'
+ echo '| Adding the stylesheet |'
+ echo '---------------------------'
+ sed -i "s/<\/head>/<\/head> /g" /app/www/public/index.html
+ sed -i "s/<\/head>/<\/head> /g" /app/www/public/index.html
+ printf 'Stylesheet set to %s\n' "${TP_THEME}
+ "
+fi
\ No newline at end of file
diff --git a/docker-mods/librespeed/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/librespeed/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/librespeed/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/librespeed/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/librespeed/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/librespeed/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/librespeed/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/librespeed/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/librespeed/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/librespeed/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/lidarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/lidarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/lidarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/lidarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..0b1471c2
--- /dev/null
+++ b/docker-mods/lidarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,67 @@
+#!/usr/bin/with-contenv bash
+
+echo '---------------------------'
+echo '| Lidarr theme.park Mod |'
+echo '---------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_ADDON'=${TP_ADDON}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+APP_FILEPATH='/app/lidarr/bin/UI/index.html'
+LOGIN_FILEPATH='/app/lidarr/bin/UI/login.html'
+if [ "${TP_HOTIO}" = true ]; then
+ echo 'Changing to Hotio file path!'
+ APP_FILEPATH='/app/bin/UI/index.html'
+ LOGIN_FILEPATH='/app/bin/UI/login.html'
+fi
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Adding stylesheets
+if ! grep -q "${TP_DOMAIN}/css/base" "${APP_FILEPATH}"; then
+ echo '---------------------------'
+ echo '| Adding the stylesheet |'
+ echo '---------------------------'
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${LOGIN_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${LOGIN_FILEPATH}"
+ printf 'Stylesheet set to %s\n' "${TP_THEME}"
+ if [[ -n ${TP_ADDON} ]]; then
+ for addon in $(echo "$TP_ADDON" | tr "|" " "); do
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${LOGIN_FILEPATH}"
+ printf 'Added custom addon: %s\n\n' "${addon}"
+ done
+ fi
+fi
\ No newline at end of file
diff --git a/docker-mods/lidarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/lidarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/lidarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/lidarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/lidarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/lidarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/lidarr/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/lidarr/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/lidarr/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/lidarr/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/mylar3/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/mylar3/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/mylar3/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/mylar3/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..65732690
--- /dev/null
+++ b/docker-mods/mylar3/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,65 @@
+#!/usr/bin/with-contenv bash
+
+echo '-------------------------'
+echo '| Mylar3 theme.park Mod |'
+echo '-------------------------'
+
+APP_FILEPATH='/app/mylar3/data/interfaces/default'
+if [ "${TP_HOTIO}" = true ]; then
+ echo 'Changing to Hotio file path!'
+ APP_FILEPATH='/app/data/interfaces/default'
+fi
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'APP_FILEPATH'=${APP_FILEPATH}\\n\
+'TP_HOTIO'=${TP_HOTIO}\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+sed_file(){
+ sed -i "s/<\/head>/<\/head> /g" $1
+ sed -i "s/<\/head>/<\/head> /g" $1
+ printf 'Stylesheet set to %s on %s\n\n' "${TP_THEME}" "$1"
+}
+
+# Adding stylesheets
+echo '---------------------------------------'
+echo '| Adding the stylesheet to html files |'
+echo '---------------------------------------'
+
+if ! grep -q "${TP_DOMAIN}/css/base" "${APP_FILEPATH}/index.html"; then
+ find ${APP_FILEPATH} -type f -iname *.html | while read fname
+ do
+ sed_file $fname
+ done
+fi
diff --git a/docker-mods/mylar3/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/mylar3/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/mylar3/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/mylar3/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/mylar3/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/mylar3/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/mylar3/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/mylar3/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/mylar3/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/mylar3/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/nginx-proxy-manager/Dockerfile b/docker-mods/nginx-proxy-manager/Dockerfile
new file mode 100644
index 00000000..bf797487
--- /dev/null
+++ b/docker-mods/nginx-proxy-manager/Dockerfile
@@ -0,0 +1,6 @@
+FROM scratch
+# This is just a dummy file. LSIO doesnt have a Nginx Proxy Manager image..SWAG for life!
+LABEL maintainer="GilbN"
+LABEL app="Nginx-Proxy-Manager"
+#copy local files.
+COPY root/ /
\ No newline at end of file
diff --git a/docker-mods/nginx-proxy-manager/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/nginx-proxy-manager/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/nginx-proxy-manager/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/nginx-proxy-manager/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..8bdef50b
--- /dev/null
+++ b/docker-mods/nginx-proxy-manager/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,63 @@
+#!/usr/bin/with-contenv bash
+
+echo '--------------------------------------'
+echo '| Nginx Proxy Manager theme.park Mod |'
+echo '--------------------------------------'
+
+if [[ -d "/app/frontend" ]]; then
+ APP_FILEPATH='/app/frontend/' # jc21/nginx-proxy-manager
+else
+ APP_FILEPATH='/opt/nginx-proxy-manager/frontend/' # jlesage/nginx-proxy-manager
+fi
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'APP_FILEPATH'=${APP_FILEPATH}\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+sed_file(){
+ sed -i "s/<\/head>/<\/head> /g" $1
+ sed -i "s/<\/head>/<\/head> /g" $1
+ printf 'Stylesheet set to %s on %s\n\n' "${TP_THEME}" "$1"
+}
+
+# Adding stylesheets
+if ! grep -q "${TP_DOMAIN}/css/base" "${APP_FILEPATH}/index.html"; then
+ echo '---------------------------------------'
+ echo '| Adding the stylesheet to html files |'
+ echo '---------------------------------------'
+ find ${APP_FILEPATH} -type f -iname *.html | while read fname
+ do
+ sed_file $fname
+ done
+fi
diff --git a/docker-mods/nginx-proxy-manager/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/nginx-proxy-manager/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/nginx-proxy-manager/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/nginx-proxy-manager/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/nginx-proxy-manager/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/nginx-proxy-manager/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/nginx-proxy-manager/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/nginx-proxy-manager/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/nginx-proxy-manager/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/nginx-proxy-manager/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/nzbget/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/nzbget/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/nzbget/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/nzbget/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..3e94d1e1
--- /dev/null
+++ b/docker-mods/nzbget/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,54 @@
+#!/usr/bin/with-contenv bash
+
+echo '---------------------------'
+echo '| NZBGet theme.park Mod |'
+echo '---------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+APP_FILEPATH='/app/nzbget/webui/index.html'
+if [ "${TP_HOTIO}" = true ]; then
+ echo 'Changing to Hotio file path!'
+ APP_FILEPATH='/app/webui/index.html'
+fi
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Adding stylesheets
+if ! grep -q "${TP_DOMAIN}/css/base" "${APP_FILEPATH}"; then
+ echo '---------------------------'
+ echo '| Adding the stylesheet |'
+ echo '---------------------------'
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ printf 'Stylesheet set to %s\n' "${TP_THEME}"
+fi
\ No newline at end of file
diff --git a/docker-mods/nzbget/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/nzbget/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/nzbget/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/nzbget/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/nzbget/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/nzbget/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/nzbget/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/nzbget/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/nzbget/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/nzbget/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/plex/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/plex/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/plex/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/plex/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..4d042c9a
--- /dev/null
+++ b/docker-mods/plex/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,61 @@
+#!/usr/bin/with-contenv bash
+
+echo '-------------------------'
+echo '| Plex theme.park Mod |'
+echo '-------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+APP_FILEPATH=''
+if [ "${TP_HOTIO}" = true ]; then
+ echo 'Changing to Hotio file path!'
+ APP_FILEPATH='/app'
+fi
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Adding stylesheets
+if ! grep -q "${TP_DOMAIN}/css/base" "${APP_FILEPATH}"/usr/lib/plexmediaserver/Resources/Plug-ins-*/WebClient.bundle/Contents/Resources/index.html; then
+ echo '---------------------------'
+ echo '| Adding the stylesheet |'
+ echo '---------------------------'
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"/usr/lib/plexmediaserver/Resources/Plug-ins-*/WebClient.bundle/Contents/Resources/index.html
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"/usr/lib/plexmediaserver/Resources/Plug-ins-*/WebClient.bundle/Contents/Resources/index.html
+ printf 'Stylesheet set to %s\n' "${TP_THEME}"
+ if [[ -n ${TP_ADDON} ]]; then
+ for addon in $(echo "$TP_ADDON" | tr "|" " "); do
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"/usr/lib/plexmediaserver/Resources/Plug-ins-*/WebClient.bundle/Contents/Resources/index.html
+ printf 'Added custom addon: %s\n\n' "${addon}"
+ done
+ fi
+fi
\ No newline at end of file
diff --git a/docker-mods/plex/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/plex/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/plex/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/plex/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/plex/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/plex/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/plex/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/plex/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/plex/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/plex/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/prowlarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/prowlarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/prowlarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/prowlarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..37afbbbd
--- /dev/null
+++ b/docker-mods/prowlarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,67 @@
+#!/usr/bin/with-contenv bash
+
+echo '---------------------------'
+echo '| Prowlarr theme.park Mod |'
+echo '---------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_ADDON'=${TP_ADDON}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+APP_FILEPATH='/app/prowlarr/bin/UI/index.html'
+LOGIN_FILEPATH='/app/prowlarr/bin/UI/login.html'
+if [ "${TP_HOTIO}" = true ]; then
+ echo 'Changing to Hotio file path!'
+ APP_FILEPATH='/app/bin/UI/index.html'
+ LOGIN_FILEPATH='/app/bin/UI/login.html'
+fi
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Adding stylesheets
+if ! grep -q "${TP_DOMAIN}/css/base" "${APP_FILEPATH}"; then
+ echo '---------------------------'
+ echo '| Adding the stylesheet |'
+ echo '---------------------------'
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${LOGIN_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${LOGIN_FILEPATH}"
+ printf 'Stylesheet set to %s\n' "${TP_THEME}"
+ if [[ -n ${TP_ADDON} ]]; then
+ for addon in $(echo "$TP_ADDON" | tr "|" " "); do
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${LOGIN_FILEPATH}"
+ printf 'Added custom addon: %s\n\n' "${addon}"
+ done
+ fi
+fi
\ No newline at end of file
diff --git a/docker-mods/prowlarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/prowlarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/prowlarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/prowlarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/prowlarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/prowlarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/prowlarr/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/prowlarr/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/prowlarr/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/prowlarr/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/dependencies.d/init-mods b/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/run b/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/run
new file mode 100755
index 00000000..5c18c377
--- /dev/null
+++ b/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/run
@@ -0,0 +1,5 @@
+#!/usr/bin/with-contenv bash
+
+if ! [[ -x "$(command -v svn)" ]]; then
+ echo "subversion" >> /mod-repo-packages-to-install.list
+fi
diff --git a/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/type b/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/up b/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/up
new file mode 100644
index 00000000..12d7a60e
--- /dev/null
+++ b/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/run
\ No newline at end of file
diff --git a/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods-package-install b/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods-package-install
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..f830a825
--- /dev/null
+++ b/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,122 @@
+#!/usr/bin/with-contenv bash
+
+echo '------------------------------'
+echo '| qBittorrent theme.park Mod |'
+echo '------------------------------'
+
+APP_FILEPATH='/config/qBittorrent/qBittorrent.conf'
+if [ "${TP_HOTIO}" = true ]; then
+ echo 'Changing to Hotio file path!'
+ APP_FILEPATH='/config/config/qBittorrent.conf'
+fi
+
+# Backup config
+if [[ ! -f "${APP_FILEPATH}.bak" ]]; then
+ echo "Creating qBittorrent.conf backup in /config."
+ cp -p ${APP_FILEPATH} "${APP_FILEPATH}.bak"
+fi
+
+# Restore qBittorrent.conf
+if [ "${TP_DISABLE_THEME}" = true ]; then
+ echo "Restoring backup of qBittorrent.conf"
+ sed -i "s/WebUI\\\AlternativeUIEnabled=.*$/WebUI\\\AlternativeUIEnabled=false/g" "${APP_FILEPATH}";
+ exit 0
+fi
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'APP_FILEPATH'=${APP_FILEPATH}\\n\
+'TP_DISABLE_THEME'=${TP_DISABLE_THEME}\\n\
+'TP_HOTIO'=${TP_HOTIO}\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Downloading fresh webui files from source.
+if [[ ! -d /themepark ]]; then
+ echo '---------------------------------------'
+ echo '| Downloading WebUI files from github |'
+ echo '---------------------------------------'
+ printf '\nDownloading qBittorrent webui to "/themepark"..please wait\n'
+ svn export --quiet https://github.com/qbittorrent/qBittorrent/trunk/src/webui/www /themepark
+ printf '\nDownload finished\n\n'
+ printf '\nDownloading qBittorrent webui icons to "/themepark/xxx"..please wait\n'
+ svn export --force --quiet https://github.com/qbittorrent/qBittorrent/trunk/src/icons /temp
+ cp -a /temp/. /themepark/public/icons
+ cp -a /temp/. /themepark/private/icons
+ rm -rf /temp
+ printf '\nDownload finished\n\n'
+fi
+
+sed_file(){
+ sed -i "s/<\/body>/<\/body> /g" $1
+ sed -i "s/<\/body>/<\/body> /g" $1
+ sed -i "s/<\/head>/<\/head> /g" $1
+ sed -i "s/<\/head>/<\/head> /g" $1
+ printf 'Stylesheet set to %s on %s\n\n' "${TP_THEME}" "$1"
+}
+
+# Adding stylesheets
+echo '---------------------------------------'
+echo '| Adding the stylesheet to html files |'
+echo '---------------------------------------'
+if ! grep -q "${TP_DOMAIN}/css/base" /themepark/public/index.html; then
+ sed_file /themepark/public/index.html
+fi
+
+if ! grep -q "${TP_DOMAIN}/css/base" /themepark/private/index.html; then
+ find /themepark/private -type f -iname *.html | while read fname
+ do
+ sed_file $fname
+ done
+fi
+
+if ! grep -q "WebUI\\\RootFolder" "${APP_FILEPATH}"; then
+ echo '--------------------------------------'
+ echo '| Adding WebUI\RootFolder=/themepark |'
+ echo '--------------------------------------'
+ sed -i -e '$aWebUI\\RootFolder=/themepark' "${APP_FILEPATH}";
+fi
+
+if ! grep -q "WebUI\\\AlternativeUIEnabled" "${APP_FILEPATH}"; then
+ echo '------------------------------------------'
+ echo '| Adding WebUI\AlternativeUIEnabled=true |'
+ echo '------------------------------------------'
+ sed -i -e '$aWebUI\\AlternativeUIEnabled=true' "${APP_FILEPATH}";
+fi
+
+if ! grep -q "WebUI\\\RootFolder=/themepark" "${APP_FILEPATH}" || ! grep -q "WebUI\\\AlternativeUIEnabled=true" "${APP_FILEPATH}"; then
+ echo '-------------------------------------------------------'
+ echo '| Updating RootFolder and AlternativeUIEnabled values |'
+ echo '-------------------------------------------------------'
+ sed -i "s/WebUI\\\AlternativeUIEnabled=.*$/WebUI\\\AlternativeUIEnabled=true/g" "${APP_FILEPATH}";
+ sed -i "s/WebUI\\\RootFolder=.*$/WebUI\\\RootFolder=\/themepark/g" "${APP_FILEPATH}";
+fi
diff --git a/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mods-package-install/dependencies.d/init-mod-themepark-add-package b/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/init-mods-package-install/dependencies.d/init-mod-themepark-add-package
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark-add-package b/docker-mods/qbittorrent/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark-add-package
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/radarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/radarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/radarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/radarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..4051c1fd
--- /dev/null
+++ b/docker-mods/radarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,67 @@
+#!/usr/bin/with-contenv bash
+
+echo '---------------------------'
+echo '| Radarr theme.park Mod |'
+echo '---------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_ADDON'=${TP_ADDON}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+APP_FILEPATH='/app/radarr/bin/UI/index.html'
+LOGIN_FILEPATH='/app/radarr/bin/UI/login.html'
+if [ "${TP_HOTIO}" = true ]; then
+ echo 'Changing to Hotio file path!'
+ APP_FILEPATH='/app/bin/UI/index.html'
+ LOGIN_FILEPATH='/app/bin/UI/login.html'
+fi
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Adding stylesheets
+if ! grep -q "${TP_DOMAIN}/css/base" "${APP_FILEPATH}"; then
+ echo '---------------------------'
+ echo '| Adding the stylesheet |'
+ echo '---------------------------'
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${LOGIN_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${LOGIN_FILEPATH}"
+ printf 'Stylesheet set to %s\n' "${TP_THEME}"
+ if [[ -n ${TP_ADDON} ]]; then
+ for addon in $(echo "$TP_ADDON" | tr "|" " "); do
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${LOGIN_FILEPATH}"
+ printf 'Added custom addon: %s\n\n' "${addon}"
+ done
+ fi
+fi
\ No newline at end of file
diff --git a/docker-mods/radarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/radarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/radarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/radarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/radarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/radarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/radarr/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/radarr/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/radarr/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/radarr/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/readarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/readarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/readarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/readarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..28f2b78d
--- /dev/null
+++ b/docker-mods/readarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,67 @@
+#!/usr/bin/with-contenv bash
+
+echo '---------------------------'
+echo '| Readarr theme.park Mod |'
+echo '---------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_ADDON'=${TP_ADDON}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+APP_FILEPATH='/app/readarr/bin/UI/index.html'
+LOGIN_FILEPATH='/app/readarr/bin/UI/login.html'
+if [ "${TP_HOTIO}" = true ]; then
+ echo 'Changing to Hotio file path!'
+ APP_FILEPATH='/app/bin/UI/index.html'
+ LOGIN_FILEPATH='/app/bin/UI/login.html'
+fi
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Adding stylesheets
+if ! grep -q "${TP_DOMAIN}/css/base" "${APP_FILEPATH}"; then
+ echo '---------------------------'
+ echo '| Adding the stylesheet |'
+ echo '---------------------------'
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${LOGIN_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${LOGIN_FILEPATH}"
+ printf 'Stylesheet set to %s\n' "${TP_THEME}"
+ if [[ -n ${TP_ADDON} ]]; then
+ for addon in $(echo "$TP_ADDON" | tr "|" " "); do
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${LOGIN_FILEPATH}"
+ printf 'Added custom addon: %s\n\n' "${addon}"
+ done
+ fi
+fi
diff --git a/docker-mods/readarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/readarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/readarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/readarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/readarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/readarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/readarr/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/readarr/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/readarr/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/readarr/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/rutorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/rutorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/rutorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/rutorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..f57b9c48
--- /dev/null
+++ b/docker-mods/rutorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,50 @@
+#!/usr/bin/with-contenv bash
+
+echo '------------------------------'
+echo '| Rutorrent theme.park Mod |'
+echo '------------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Adding stylesheets
+if ! grep -q "${TP_DOMAIN}/css/base" /app/rutorrent/index.html; then
+ echo '---------------------------'
+ echo '| Adding the stylesheet |'
+ echo '---------------------------'
+ sed -i "s/<\/head>/<\/head> /g" /app/rutorrent/index.html
+ sed -i "s/<\/head>/<\/head> /g" /app/rutorrent/index.html
+ printf 'Stylesheet set to %s\n' "${TP_THEME}
+ "
+fi
\ No newline at end of file
diff --git a/docker-mods/rutorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/rutorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/rutorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/rutorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/rutorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/rutorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/rutorrent/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/rutorrent/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/rutorrent/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/rutorrent/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/sabnzbd/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/sabnzbd/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/sabnzbd/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/sabnzbd/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..129cf6ea
--- /dev/null
+++ b/docker-mods/sabnzbd/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,61 @@
+#!/usr/bin/with-contenv bash
+
+echo '----------------------------'
+echo '| SABnzbd theme.park Mod |'
+echo '----------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+APP_FILEPATH='/app/sabnzbd'
+if [ "${TP_HOTIO}" = true ]; then
+ echo 'Changing to Hotio file path!'
+ APP_FILEPATH='/app'
+fi
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Adding stylesheets
+if ! grep -q "${TP_DOMAIN}/css/base" "${APP_FILEPATH}/interfaces/Glitter/templates/main.tmpl"; then
+ echo '---------------------------'
+ echo '| Adding the stylesheet |'
+ echo '---------------------------'
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}/interfaces/Glitter/templates/main.tmpl"
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}/interfaces/Config/templates/_inc_header_uc.tmpl"
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}/interfaces/Config/templates/login/main.tmpl"
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}/interfaces/wizard/inc_top.tmpl"
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}/interfaces/Glitter/templates/main.tmpl"
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}/interfaces/Config/templates/_inc_header_uc.tmpl"
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}/interfaces/Config/templates/login/main.tmpl"
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}/interfaces/wizard/inc_top.tmpl"
+ printf 'Stylesheet set to %s\n' "${TP_THEME}"
+fi
\ No newline at end of file
diff --git a/docker-mods/sabnzbd/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/sabnzbd/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/sabnzbd/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/sabnzbd/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/sabnzbd/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/sabnzbd/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/sabnzbd/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/sabnzbd/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/sabnzbd/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/sabnzbd/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/sonarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/sonarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/sonarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/sonarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..636eb2ae
--- /dev/null
+++ b/docker-mods/sonarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,67 @@
+#!/usr/bin/with-contenv bash
+
+echo '---------------------------'
+echo '| Sonarr theme.park Mod |'
+echo '---------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_ADDON'=${TP_ADDON}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+APP_FILEPATH='/app/sonarr/bin/UI/index.html'
+LOGIN_FILEPATH='/app/sonarr/bin/UI/login.html'
+if [ "${TP_HOTIO}" = true ]; then
+ echo 'Changing to Hotio file path!'
+ APP_FILEPATH='/app/bin/UI/index.html'
+ LOGIN_FILEPATH='/app/bin/UI/login.html'
+fi
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Adding stylesheets
+if ! grep -q "${TP_DOMAIN}/css/base" "${APP_FILEPATH}"; then
+ echo '---------------------------'
+ echo '| Adding the stylesheet |'
+ echo '---------------------------'
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${LOGIN_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${LOGIN_FILEPATH}"
+ printf 'Stylesheet set to %s\n' "${TP_THEME}"
+ if [[ -n ${TP_ADDON} ]]; then
+ for addon in $(echo "$TP_ADDON" | tr "|" " "); do
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${LOGIN_FILEPATH}"
+ printf 'Added custom addon: %s\n\n' "${addon}"
+ done
+ fi
+fi
\ No newline at end of file
diff --git a/docker-mods/sonarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/sonarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/sonarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/sonarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/sonarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/sonarr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/sonarr/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/sonarr/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/sonarr/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/sonarr/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/dependencies.d/init-mods b/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/run b/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/run
new file mode 100755
index 00000000..5c18c377
--- /dev/null
+++ b/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/run
@@ -0,0 +1,5 @@
+#!/usr/bin/with-contenv bash
+
+if ! [[ -x "$(command -v svn)" ]]; then
+ echo "subversion" >> /mod-repo-packages-to-install.list
+fi
diff --git a/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/type b/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/up b/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/up
new file mode 100644
index 00000000..12d7a60e
--- /dev/null
+++ b/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/run
\ No newline at end of file
diff --git a/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods-package-install b/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods-package-install
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..962bed88
--- /dev/null
+++ b/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,54 @@
+#!/usr/bin/with-contenv bash
+
+echo '-------------------------'
+echo '| SWAG theme.park Mod |'
+echo '-------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_BRANCH'=${TP_BRANCH}\\n"
+
+# Set default
+if [[ -z ${TP_BRANCH} ]]; then
+ echo 'No branch set, defaulting to live'
+ TP_BRANCH='live'
+fi
+
+if [[ ${TP_BRANCH} == "master" ]]; then
+ TP_BRANCH='live'
+fi
+
+if [[ ${TP_BRANCH} == "develop" ]]; then
+ TP_BRANCH='live_develop'
+fi
+
+if [[ ${TP_BRANCH} == "testing" ]]; then
+ TP_BRANCH='live_testing'
+fi
+
+mkdir -p /config/www/themepark
+
+SHA_RELEASE=$(curl -sL "https://api.github.com/repos/gilbn/theme.park/commits/${TP_BRANCH}" | jq -r '.sha');
+if [[ ! -f "/config/www/themepark/sha.txt" ]]; then
+ SHA=""
+else
+ SHA=$(cat /config/www/themepark/sha.txt)
+fi
+# Downloading fresh webui files from source.
+if [[ $SHA != $SHA_RELEASE ]]; then
+ echo "-----------------------------------------------------"
+ echo "| Downloading latest files from ${TP_BRANCH} branch |"
+ echo "-----------------------------------------------------"
+ svn export --quiet --force "https://github.com/GilbN/theme.park/branches/${TP_BRANCH}/css" /config/www/themepark/css
+ svn export --quiet --force "https://github.com/GilbN/theme.park/branches/${TP_BRANCH}/resources" /config/www/themepark/resources
+ svn export --quiet --force "https://github.com/GilbN/theme.park/branches/${TP_BRANCH}/themes.json" /config/www/themepark
+ svn export --quiet --force "https://github.com/GilbN/theme.park/branches/${TP_BRANCH}/index.html" /config/www/themepark
+ printf '\nDownload finished\n\n'
+fi
+
+cat <<< "$SHA_RELEASE" > "/config/www/themepark/sha.txt"
+cp /themepark-confs/* /config/nginx/proxy-confs
+
+# permissions
+chown -R abc:abc \
+ /config/www/themepark
\ No newline at end of file
diff --git a/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mods-package-install/dependencies.d/init-mod-themepark-add-package b/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/init-mods-package-install/dependencies.d/init-mod-themepark-add-package
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark-add-package b/docker-mods/swag/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark-add-package
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/synclounge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/synclounge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/synclounge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/synclounge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..1b0a160e
--- /dev/null
+++ b/docker-mods/synclounge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,50 @@
+#!/usr/bin/with-contenv bash
+
+echo '-------------------------------'
+echo '| Synclounge theme.park Mod |'
+echo '-------------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Adding stylesheets
+if ! grep -q "${TP_DOMAIN}/css/base" /usr/lib/node_modules/synclounge/dist/index.html; then
+ echo '---------------------------'
+ echo '| Adding the stylesheet |'
+ echo '---------------------------'
+ sed -i "s/<\/head>/<\/head> /g" /usr/lib/node_modules/synclounge/dist/index.html
+ sed -i "s/<\/head>/<\/head> /g" /usr/lib/node_modules/synclounge/dist/index.html
+ printf 'Stylesheet set to %s\n' "${TP_THEME}
+ "
+fi
\ No newline at end of file
diff --git a/docker-mods/synclounge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/synclounge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/synclounge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/synclounge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/synclounge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/synclounge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/synclounge/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/synclounge/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/synclounge/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/synclounge/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/tautulli/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/tautulli/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/tautulli/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/tautulli/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..4013d706
--- /dev/null
+++ b/docker-mods/tautulli/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,55 @@
+#!/usr/bin/with-contenv bash
+
+echo '-----------------------------'
+echo '| Tautulli theme.park Mod |'
+echo '-----------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+APP_FILEPATH='/app/tautulli/data/interfaces/default/base.html'
+if [ "${TP_HOTIO}" = true ]; then
+ echo 'Changing to Hotio file path!'
+ APP_FILEPATH='/app/data/interfaces/default/base.html'
+fi
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Adding stylesheets
+if ! grep -q "${TP_DOMAIN}/css/base" "${APP_FILEPATH}"; then
+ echo '---------------------------'
+ echo '| Adding the stylesheet |'
+ echo '---------------------------'
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ printf 'Stylesheet set to %s\n' "${TP_THEME}"
+fi
\ No newline at end of file
diff --git a/docker-mods/tautulli/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/tautulli/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/tautulli/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/tautulli/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/tautulli/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/tautulli/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/tautulli/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/tautulli/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/tautulli/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/tautulli/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/thelounge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/thelounge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/thelounge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/thelounge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..96bc372b
--- /dev/null
+++ b/docker-mods/thelounge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,50 @@
+#!/usr/bin/with-contenv bash
+
+echo '-------------------------------'
+echo '| The Lounge theme.park Mod |'
+echo '-------------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Adding stylesheets
+if ! grep -q "${TP_DOMAIN}/css/base" /usr/lib/node_modules/thelounge/client/index.html.tpl; then
+ echo '---------------------------'
+ echo '| Adding the stylesheet |'
+ echo '---------------------------'
+ sed -i "s/<\/head>/<\/head> /g" /usr/lib/node_modules/thelounge/client/index.html.tpl
+ sed -i "s/<\/head>/<\/head> /g" /usr/lib/node_modules/thelounge/client/index.html.tpl
+ printf 'Stylesheet set to %s\n' "${TP_THEME}
+ "
+fi
\ No newline at end of file
diff --git a/docker-mods/thelounge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/thelounge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/thelounge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/thelounge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/thelounge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/thelounge/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/thelounge/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/thelounge/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/thelounge/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/thelounge/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/transmission/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/transmission/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/transmission/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/transmission/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..45c27963
--- /dev/null
+++ b/docker-mods/transmission/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,50 @@
+#!/usr/bin/with-contenv bash
+
+echo '---------------------------------'
+echo '| Transmission theme.park Mod |'
+echo '---------------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Adding stylesheets
+if ! grep -q "${TP_DOMAIN}/css/base" /usr/share/transmission/web/index.html; then
+ echo '---------------------------'
+ echo '| Adding the stylesheet |'
+ echo '---------------------------'
+ sed -i "s/<\/head>/<\/head> /g" /usr/share/transmission/web/index.html
+ sed -i "s/<\/head>/<\/head> /g" /usr/share/transmission/web/index.html
+ printf 'Stylesheet set to %s\n' "${TP_THEME}
+ "
+fi
\ No newline at end of file
diff --git a/docker-mods/transmission/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/transmission/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/transmission/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/transmission/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/transmission/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/transmission/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/transmission/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/transmission/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/transmission/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/transmission/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/dependencies.d/init-mods b/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/run b/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/run
new file mode 100755
index 00000000..16645ac6
--- /dev/null
+++ b/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/run
@@ -0,0 +1,5 @@
+#!/usr/bin/with-contenv bash
+
+if ! [[ -x "$(command -v jq)" ]]; then
+ echo "jq" >> /mod-repo-packages-to-install.list
+fi
diff --git a/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/type b/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/up b/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/up
new file mode 100644
index 00000000..12d7a60e
--- /dev/null
+++ b/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark-add-package/run
\ No newline at end of file
diff --git a/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods-package-install b/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods-package-install
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..8398de61
--- /dev/null
+++ b/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,134 @@
+#!/usr/bin/with-contenv bash
+APP_FILEPATH='/config/qBittorrent/qBittorrent.conf'
+INDEX_FILEPATH='/vuetorrent/public/index.html'
+if [ "${TP_HOTIO}" = true ]; then
+ echo 'Changing to Hotio file paths!'
+ APP_FILEPATH='/config/config/qBittorrent.conf'
+ INDEX_FILEPATH='/app/vuetorrent/public/index.html'
+fi
+
+# Backup config
+if [[ ! -f "${APP_FILEPATH}.bak" ]]; then
+ echo "Creating qBittorrent.conf backup in /config."
+ cp -p ${APP_FILEPATH} "${APP_FILEPATH}.bak"
+fi
+
+# Restore qBittorrent.conf
+if [ "${TP_DISABLE_THEME}" = true ]; then
+ echo "Restoring backup of qBittorrent.conf"
+ sed -i "s/WebUI\\\AlternativeUIEnabled=.*$/WebUI\\\AlternativeUIEnabled=false/g" "${APP_FILEPATH}";
+ exit 0
+fi
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+RELEASE_FILEPATH='/vuetorrent/release.json'
+NEEDS_UPDATE=false
+CURRENT_RELEASE=$(curl -s https://api.github.com/repos/WDaan/VueTorrent/releases/latest | jq -r ".assets[]")
+
+# ===============================================
+check_updates() {
+ if [[ ! -d ./vuetorrent ]]; then
+ NEEDS_UPDATE=true
+ elif [[ ! -f $RELEASE_FILEPATH ]]; then
+ NEEDS_UPDATE=true
+ else
+ old_date=$(date -d $(cat "${RELEASE_FILEPATH}" | jq -r ".updated_at") +%s)
+ new_date=$(date -d $(echo $CURRENT_RELEASE | jq -r ".updated_at") +%s)
+ if [ $new_date -gt $old_date ]; then
+ NEEDS_UPDATE=true
+ fi
+ fi
+}
+update_ui() {
+ printf '\nDownloading qBittorrent webui to "/vuetorrent"..please wait\n'
+ curl -L $(echo $CURRENT_RELEASE | jq -r ".browser_download_url") --output /tmp/vuetorrent.zip
+ printf '\nDownload finished\n\n'
+ if [[ -d /vuetorrent ]]; then
+ rm -rf /vuetorrent
+ fi
+ # mkdir -p /vuetorrent
+ unzip -q /tmp/vuetorrent.zip -d /
+ echo $CURRENT_RELEASE >"${RELEASE_FILEPATH}"
+}
+# ===============================================
+
+echo '-----------------------------------------'
+echo '| qBittorrent vuetorrent theme.park Mod |'
+echo '-----------------------------------------'
+
+if [[ -z ${TP_HOTIO} ]]; then
+ check_updates
+
+ if [ "$NEEDS_UPDATE" = true ]; then
+ echo '---------------------------------------'
+ echo '| Downloading WebUI files from github |'
+ echo '---------------------------------------'
+ update_ui
+ else
+ echo ' WebUI files are up-to-date!'
+ fi
+
+ if ! grep -q "WebUI\\\RootFolder" "${APP_FILEPATH}"; then
+ echo '--------------------------------------'
+ echo '| Adding WebUI\RootFolder=/vuetorrent |'
+ echo '--------------------------------------'
+ sed -i -e '$aWebUI\\RootFolder=/vuetorrent' "${APP_FILEPATH}"
+ fi
+
+ if ! grep -q "WebUI\\\AlternativeUIEnabled" "${APP_FILEPATH}"; then
+ echo '------------------------------------------'
+ echo '| Adding WebUI\AlternativeUIEnabled=true |'
+ echo '------------------------------------------'
+ sed -i -e '$aWebUI\\AlternativeUIEnabled=true' "${APP_FILEPATH}"
+ fi
+
+ if ! grep -q "WebUI\\\RootFolder=/vuetorrent" "${APP_FILEPATH}" || ! grep -q "WebUI\\\AlternativeUIEnabled=true" "${APP_FILEPATH}"; then
+ echo '-------------------------------------------------------'
+ echo '| Updating RootFolder and AlternativeUIEnabled values |'
+ echo '-------------------------------------------------------'
+ sed -i "s/WebUI\\\AlternativeUIEnabled=.*$/WebUI\\\AlternativeUIEnabled=true/g" "${APP_FILEPATH}"
+ sed -i "s/WebUI\\\RootFolder=.*$/WebUI\\\RootFolder=\/vuetorrent/g" "${APP_FILEPATH}"
+ fi
+fi
+
+# Adding stylesheets
+if ! grep -q "${TP_DOMAIN}/css/base" "${INDEX_FILEPATH}"; then
+ echo '---------------------------------------------------------'
+ echo '| Adding the stylesheet to /vuetorrent/public/index.html |'
+ echo '---------------------------------------------------------'
+ sed -i "s/<\/body>/<\/body> /g" "${INDEX_FILEPATH}"
+ sed -i "s/<\/body>/<\/body> /g" "${INDEX_FILEPATH}"
+ printf 'Stylesheet set to %s on public index.html\n' "${TP_THEME}"
+fi
\ No newline at end of file
diff --git a/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mods-package-install/dependencies.d/init-mod-themepark-add-package b/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/init-mods-package-install/dependencies.d/init-mod-themepark-add-package
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark-add-package b/docker-mods/vuetorrent/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark-add-package
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/whisparr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods b/docker-mods/whisparr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/dependencies.d/init-mods
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/whisparr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run b/docker-mods/whisparr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
new file mode 100755
index 00000000..8f710aaa
--- /dev/null
+++ b/docker-mods/whisparr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
@@ -0,0 +1,67 @@
+#!/usr/bin/with-contenv bash
+
+echo '-----------------------------'
+echo '| Whisparr theme.park Mod |'
+echo '-----------------------------'
+
+# Display variables for troubleshooting
+echo -e "Variables set:\\n\
+'TP_DOMAIN'=${TP_DOMAIN}\\n\
+'TP_COMMUNITY_THEME'=${TP_COMMUNITY_THEME}\\n\
+'TP_SCHEME'=${TP_SCHEME}\\n\
+'TP_ADDON'=${TP_ADDON}\\n\
+'TP_THEME'=${TP_THEME}\\n"
+
+APP_FILEPATH='/app/whisparr/bin/UI/index.html'
+LOGIN_FILEPATH='/app/whisparr/bin/UI/login.html'
+if [ "${TP_HOTIO}" = true ]; then
+ echo 'Changing to Hotio file path!'
+ APP_FILEPATH='/app/bin/UI/index.html'
+ LOGIN_FILEPATH='/app/bin/UI/login.html'
+fi
+
+# Set default
+if [[ -z ${TP_DOMAIN} ]]; then
+ echo 'No domain set, defaulting to theme-park.dev'
+ TP_DOMAIN='theme-park.dev'
+fi
+if [[ -z ${TP_SCHEME} ]]; then
+ echo 'No scheme set, defaulting to https'
+ TP_SCHEME='https'
+fi
+
+THEME_TYPE='theme-options'
+if [ "${TP_COMMUNITY_THEME}" = true ]; then
+ THEME_TYPE='community-theme-options'
+fi
+
+case ${TP_DOMAIN} in
+ *"github.io"*)
+ echo "Switching to github.io URL style"
+ TP_DOMAIN="${TP_DOMAIN}\/theme.park"
+ ;;
+esac
+
+if [[ -z ${TP_THEME} ]]; then
+ echo 'No theme set, defaulting to organizr'
+ TP_THEME='organizr'
+fi
+
+# Adding stylesheets
+if ! grep -q "${TP_DOMAIN}/css/base" "${APP_FILEPATH}"; then
+ echo '---------------------------'
+ echo '| Adding the stylesheet |'
+ echo '---------------------------'
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${LOGIN_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${LOGIN_FILEPATH}"
+ printf 'Stylesheet set to %s\n' "${TP_THEME}"
+ if [[ -n ${TP_ADDON} ]]; then
+ for addon in $(echo "$TP_ADDON" | tr "|" " "); do
+ sed -i "s/<\/head>/<\/head> /g" "${APP_FILEPATH}"
+ sed -i "s/<\/head>/<\/head> /g" "${LOGIN_FILEPATH}"
+ printf 'Added custom addon: %s\n\n' "${addon}"
+ done
+ fi
+fi
\ No newline at end of file
diff --git a/docker-mods/whisparr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type b/docker-mods/whisparr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
new file mode 100644
index 00000000..3d92b15f
--- /dev/null
+++ b/docker-mods/whisparr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/type
@@ -0,0 +1 @@
+oneshot
\ No newline at end of file
diff --git a/docker-mods/whisparr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up b/docker-mods/whisparr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
new file mode 100644
index 00000000..be856d4e
--- /dev/null
+++ b/docker-mods/whisparr/root/etc/s6-overlay/s6-rc.d/init-mod-themepark/up
@@ -0,0 +1 @@
+/etc/s6-overlay/s6-rc.d/init-mod-themepark/run
\ No newline at end of file
diff --git a/docker-mods/whisparr/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark b/docker-mods/whisparr/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/docker-mods/whisparr/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark b/docker-mods/whisparr/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-themepark
new file mode 100644
index 00000000..e69de29b
diff --git a/themes.json b/themes.json
index e1490ed8..26c760e9 100644
--- a/themes.json
+++ b/themes.json
@@ -33,6 +33,7 @@
},
"sonarr": {
"sonarr-4k-logo": "https://develop.theme-park.dev/css/addons/sonarr/sonarr-4k-logo/sonarr-4k-logo.css?sha=0b109c74f56f92465dc01bf9ea10a877ed87213c",
+ "sonarr-4k-text-logo": "https://develop.theme-park.dev/css/addons/sonarr/sonarr-4k-text-logo/sonarr-4k-text-logo.css?sha=9dc5b9037aa6ea1041229ecbea3d6469e3b975a7",
"sonarr-darker": "https://develop.theme-park.dev/css/addons/sonarr/sonarr-darker/sonarr-darker.css?sha=7c3c2ddcd71525229b0dcc186326003677908b7c",
"sonarr-text-logo": "https://develop.theme-park.dev/css/addons/sonarr/sonarr-text-logo/sonarr-text-logo.css?sha=0979cbe5aaabb148fd15f4122690685e7ae4a4f3"
},
@@ -373,6 +374,7 @@
"sonarr": {
"addons": {
"sonarr-4k-logo": "https://develop.theme-park.dev/css/addons/sonarr/sonarr-4k-logo/sonarr-4k-logo.css?sha=0b109c74f56f92465dc01bf9ea10a877ed87213c",
+ "sonarr-4k-text-logo": "https://develop.theme-park.dev/css/addons/sonarr/sonarr-4k-text-logo/sonarr-4k-text-logo.css?sha=9dc5b9037aa6ea1041229ecbea3d6469e3b975a7",
"sonarr-darker": "https://develop.theme-park.dev/css/addons/sonarr/sonarr-darker/sonarr-darker.css?sha=7c3c2ddcd71525229b0dcc186326003677908b7c",
"sonarr-text-logo": "https://develop.theme-park.dev/css/addons/sonarr/sonarr-text-logo/sonarr-text-logo.css?sha=0979cbe5aaabb148fd15f4122690685e7ae4a4f3"
},