Files
2025-07-23 08:58:09 +00:00

77 lines
3.2 KiB
Bash
Executable File

#!/usr/bin/with-contenv bashio
# shellcheck shell=bash
set -e
################
# Alternate UI #
################
CUSTOMUI=$(bashio::config 'customUI')
# Install webui
if bashio::config.has_value 'customUI' && [ ! "$CUSTOMUI" = default ] && [ ! "$CUSTOMUI" = custom ]; then
# Variables
bashio::log.info "Alternate UI enabled : $CUSTOMUI. If webui don't work, disable this option"
# Clean folders
if [ -d /"$CUSTOMUI" ]; then rm -r /"${CUSTOMUI:?}"; fi
if [ -f /"$CUSTOMUI" ]; then rm -r /"${CUSTOMUI:?}"; fi
### Download WebUI
case $CUSTOMUI in
"combustion-release")
curl -o /tmp/combustion.zip -L "https://github.com/Secretmapper/combustion/archive/release.zip"
unzip /tmp/combustion.zip -d /
;;
"transmission-web-control")
### Install WebUI
mkdir -p /transmission-web-control
curl -sL "$(curl -s https://api.github.com/repos/ronggang/transmission-web-control/releases/latest | jq --raw-output '.tarball_url')" | tar -C /transmission-web-control/ --strip-components=2 -xz
# Enables the original UI button in transmission-web-control
ln -s /usr/share/transmission/public_html/* /transmission-web-control/ 2> /dev/null || true
ln -s /usr/share/transmission/public_html/index.html /transmission-web-control/index.original.html
;;
"kettu")
mkdir -p /kettu \
&& curl -o /tmp/kettu.tar.gz -L "https://github.com/endor/kettu/archive/master.tar.gz"
tar xf /tmp/kettu.tar.gz -C /kettu --strip-components=1
;;
"flood-for-transmission")
curl -o /tmp/flood-for-transmission.tar.gz -L "https://github.com/johman10/flood-for-transmission/releases/download/latest/flood-for-transmission.tar.gz"
tar xf /tmp/flood-for-transmission.tar.gz -C /
;;
"transmissionic")
TRANSMISSIONIC_VERSION=$(curl -s -L "https://api.github.com/repos/6c65726f79/Transmissionic/releases/latest" | jq -r .tag_name)
echo "**** grab transmissionic ****" \
&& if [ -z "${TRANSMISSIONIC_VERSION+x}" ]; then
TRANSMISSIONIC_VERSION="$(curl -s "https://api.github.com/repos/6c65726f79/Transmissionic/releases/latest" \
| jq -rc ".tag_name")"
fi \
&& curl -o \
/tmp/transmissionic.zip -L \
"https://github.com/6c65726f79/Transmissionic/releases/download/${TRANSMISSIONIC_VERSION}/Transmissionic-webui-${TRANSMISSIONIC_VERSION}.zip" \
&& unzip \
/tmp/transmissionic.zip -d \
/themes \
&& mv /themes/web /transmissionic
;;
**)
exit 0
;;
esac
# Define variable
CUSTOMUI="/${CUSTOMUI}"
chown -R abc:abc "$CUSTOMUI"
if cat /etc/services.d/*/*run* &> /dev/null; then sed -i "1a export TRANSMISSION_WEB_HOME=$CUSTOMUI" /etc/services.d/*/*run* 2> /dev/null; fi
if [ -d /var/run/s6/container_environment ]; then printf "%s" "$CUSTOMUI" > /var/run/s6/container_environment/TRANSMISSION_WEB_HOME; fi
printf "%s\n" "TRANSMISSION_WEB_HOME=\"$CUSTOMUI\"" >> ~/.bashrc
fi