diff --git a/.github/workflows/auto-build.yml b/.github/workflows/auto-build.yml index fef13e45..0f81953d 100644 --- a/.github/workflows/auto-build.yml +++ b/.github/workflows/auto-build.yml @@ -5,6 +5,40 @@ on: - master paths: - 'docker-mods/**' + workflow_dispatch: + inputs: + app: + description: 'Select an app' + required: true + type: choice + options: + - radarr + - sonarr + - readarr + - lidarr + - bazarr + - whisparr + - prowlarr + - plex + - jellyfin + - emby + - sabnzbd + - synclounge + - transmission + - calibre-web + - lazylibrarian + - mylar3 + - duplicati + - tautulli + - vuetorrent + - deluge + - jackett + - librespeed + - nzbget + - qbittorrent + - rutorrent + - swag + - thelounge jobs: push_to_ghcr_io: runs-on: ubuntu-latest @@ -24,6 +58,7 @@ jobs: username: ${{ github.repository_owner }} password: ${{ secrets.GH_PAT }} - name: find correct directory then build&push + if: ${{ github.event_name == 'push' }} run: | for i in ${{ steps.getfile.outputs.files }} do @@ -38,6 +73,11 @@ jobs: docker build docker-mods/$directory --tag ghcr.io/gilbn/theme.park:$directory docker push ghcr.io/gilbn/theme.park:$directory done + - name: manually build + if: ${{ github.event.inputs.app }} + 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 }} push_to_dockerhub: runs-on: ubuntu-latest steps: @@ -55,6 +95,7 @@ jobs: username: ${{ secrets.DH_USER }} password: ${{ secrets.DOCKERHUB_TOKEN }} - name: find correct directory then build&push + if: ${{ github.event_name == 'push' }} run: | for i in ${{ steps.getfile.outputs.files }} do @@ -68,4 +109,9 @@ jobs: fi docker build docker-mods/$directory --tag gilbn/theme.park:$directory docker push gilbn/theme.park:$directory - done \ No newline at end of file + done + - name: manually build + if: ${{ github.event.inputs.app }} + 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 diff --git a/docker-mods/plex/root/etc/cont-init.d/98-themepark b/docker-mods/plex/root/etc/cont-init.d/98-themepark index eabe9546..4d042c9a 100644 --- a/docker-mods/plex/root/etc/cont-init.d/98-themepark +++ b/docker-mods/plex/root/etc/cont-init.d/98-themepark @@ -45,7 +45,7 @@ if [[ -z ${TP_THEME} ]]; then fi # Adding stylesheets -if ! grep -q "${TP_DOMAIN}/css/base" "${APP_FILEPATH}"; then +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 '---------------------------' diff --git a/docker-mods/whisparr/Dockerfile b/docker-mods/whisparr/Dockerfile new file mode 100644 index 00000000..116bed58 --- /dev/null +++ b/docker-mods/whisparr/Dockerfile @@ -0,0 +1,7 @@ +FROM scratch + +LABEL maintainer="GilbN" +LABEL app="Whisparr" + +#copy local files. +COPY root/ / \ No newline at end of file diff --git a/docker-mods/whisparr/root/etc/cont-init.d/98-themepark b/docker-mods/whisparr/root/etc/cont-init.d/98-themepark new file mode 100644 index 00000000..8f710aaa --- /dev/null +++ b/docker-mods/whisparr/root/etc/cont-init.d/98-themepark @@ -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