init
This commit is contained in:
@@ -0,0 +1,128 @@
|
||||
#!/usr/bin/with-contenv bashio
|
||||
|
||||
##########
|
||||
# INIT #
|
||||
##########
|
||||
|
||||
# Define preferences line
|
||||
cd /config/qBittorrent/
|
||||
LINE=$(sed -n '/Preferences/=' qBittorrent.conf)
|
||||
LINE=$((LINE + 1))
|
||||
|
||||
##################
|
||||
# Default folder #
|
||||
##################
|
||||
|
||||
if bashio::config.has_value 'SavePath'; then
|
||||
DOWNLOADS=$(bashio::config 'SavePath')
|
||||
sed -i '/SavePath/d' qBittorrent.conf
|
||||
sed -i "$LINE i\Downloads\\\SavePath=$DOWNLOADS" qBittorrent.conf
|
||||
mkdir -p $DOWNLOADS || true
|
||||
chown -R abc:abc $DOWNLOADS || bashio::log.info "Error, please check default save folder configuration in addon"
|
||||
bashio::log.info "Downloads can be found in $DOWNLOADS"
|
||||
|
||||
else
|
||||
mkdir -p /share/qBittorrent || true
|
||||
chown -R abc:abc /share/qBittorrent
|
||||
|
||||
fi
|
||||
|
||||
################
|
||||
# Correct Port #
|
||||
################
|
||||
|
||||
sed -i '/PortRangeMin/d' qBittorrent.conf
|
||||
sed -i "$LINE i\Connection\\\PortRangeMin=6881" qBittorrent.conf
|
||||
|
||||
################
|
||||
# SSL CONFIG #
|
||||
################
|
||||
|
||||
# Clean data
|
||||
sed -i '/HTTPS/d' qBittorrent.conf
|
||||
|
||||
bashio::config.require.ssl
|
||||
if bashio::config.true 'ssl'; then
|
||||
bashio::log.info "ssl enabled. If webui don't work, disable ssl or check your certificate paths"
|
||||
#set variables
|
||||
CERTFILE=$(bashio::config 'certfile')
|
||||
KEYFILE=$(bashio::config 'keyfile')
|
||||
sed -i "$LINE i\WebUI\\\HTTPS\\\Enabled=True" qBittorrent.conf
|
||||
sed -i "$LINE i\WebUI\\\HTTPS\\\CertificatePath=/ssl/$CERTFILE" qBittorrent.conf
|
||||
sed -i "$LINE i\WebUI\\\HTTPS\\\KeyPath=/ssl/$KEYFILE" qBittorrent.conf
|
||||
fi
|
||||
|
||||
################
|
||||
# WHITELIST #
|
||||
################
|
||||
|
||||
cd /config/qBittorrent/
|
||||
if bashio::config.has_value 'whitelist'; then
|
||||
WHITELIST=$(bashio::config 'whitelist')
|
||||
#clean data
|
||||
sed -i '/AuthSubnetWhitelist/d' qBittorrent.conf
|
||||
sed -i "$LINE i\WebUI\\\AuthSubnetWhitelistEnabled=true" qBittorrent.conf
|
||||
sed -i "$LINE i\WebUI\\\AuthSubnetWhitelist=$WHITELIST" qBittorrent.conf
|
||||
bashio::log.info "Whitelisted subsets will not require a password : $WHITELIST"
|
||||
fi
|
||||
|
||||
###############
|
||||
# USERNAME #
|
||||
###############
|
||||
|
||||
cd /config/qBittorrent/
|
||||
if bashio::config.has_value 'Username'; then
|
||||
USERNAME=$(bashio::config 'Username')
|
||||
#clean data
|
||||
sed -i '/WebUI\\\Username/d' qBittorrent.conf
|
||||
#add data
|
||||
sed -i "$LINE i\WebUI\\\Username=$USERNAME" qBittorrent.conf
|
||||
bashio::log.info "WEBUI username set to $USERNAME"
|
||||
fi
|
||||
|
||||
################
|
||||
# Alternate UI #
|
||||
################
|
||||
|
||||
# Clean data
|
||||
sed -i '/AlternativeUIEnabled/d' qBittorrent.conf
|
||||
sed -i '/RootFolder/d' qBittorrent.conf
|
||||
rm -f -r /webui
|
||||
mkdir -p /webui
|
||||
chown abc:abc /webui
|
||||
|
||||
if bashio::config.has_value 'customUI'; then
|
||||
### Variables
|
||||
CUSTOMUI=$(bashio::config 'customUI')
|
||||
bashio::log.info "Alternate UI enabled : $CUSTOMUI. If webui don't work, disable this option"
|
||||
|
||||
### Download WebUI
|
||||
case $CUSTOMUI in
|
||||
"vuetorrent")
|
||||
curl -s -S -J -L -o /webui/release.zip $(curl -s https://api.github.com/repos/WDaan/VueTorrent/releases/latest | grep -o "http.*vuetorrent.zip") >/dev/null
|
||||
;;
|
||||
|
||||
"qbit-matUI")
|
||||
curl -s -S -J -L -o /webui/release.zip $(curl -s https://api.github.com/repos/bill-ahmed/qbit-matUI/releases/latest | grep -o "http.*Unix.*.zip") >/dev/null
|
||||
;;
|
||||
|
||||
"qb-web")
|
||||
curl -s -S -J -L -o /webui/release.zip $(curl -s https://api.github.com/repos/CzBiX/qb-web/releases | grep -o "http.*qb-web-.*zip") >/dev/null
|
||||
;;
|
||||
esac
|
||||
|
||||
### Install WebUI
|
||||
mkdir -p /webui/$CUSTOMUI
|
||||
unzip -q /webui/release.zip -d /webui/$CUSTOMUI
|
||||
rm /webui/*.zip
|
||||
CUSTOMUIDIR="$(dirname "$(find /webui/$CUSTOMUI -iname "public" -type d)")"
|
||||
sed -i "$LINE i\WebUI\\\AlternativeUIEnabled=true" /config/qBittorrent/qBittorrent.conf
|
||||
sed -i "$LINE i\WebUI\\\RootFolder=$CUSTOMUIDIR" /config/qBittorrent/qBittorrent.conf
|
||||
fi
|
||||
|
||||
##########
|
||||
# CLOSE #
|
||||
##########
|
||||
|
||||
bashio::log.info "Default username/password : admin/adminadmin"
|
||||
bashio::log.info "Configuration can be found in /config/qBittorrent"
|
||||
Reference in New Issue
Block a user