2014-11-11 16:39:27 +01:00
|
|
|
#!/bin/bash
|
2013-10-29 14:14:27 +01:00
|
|
|
|
2016-05-17 22:13:59 +02:00
|
|
|
# Exit on command errors and treat unset variables as an error
|
|
|
|
set -eu
|
2016-05-14 09:56:38 +02:00
|
|
|
|
|
|
|
# Get app instance name
|
|
|
|
app=$YNH_APP_INSTANCE_NAME
|
|
|
|
|
2016-12-28 16:54:07 +01:00
|
|
|
# Source app helpers
|
|
|
|
. /usr/share/yunohost/helpers
|
|
|
|
|
2013-10-29 14:14:27 +01:00
|
|
|
# Retrieve arguments
|
2016-05-14 09:56:38 +02:00
|
|
|
domain=$YNH_APP_ARG_DOMAIN
|
|
|
|
path=$YNH_APP_ARG_PATH
|
2013-10-29 14:14:27 +01:00
|
|
|
|
2016-05-14 09:56:38 +02:00
|
|
|
sudo yunohost app checkurl $domain$path -a $app
|
2014-11-11 16:39:27 +01:00
|
|
|
if [[ ! $? -eq 0 ]]; then
|
2013-10-29 14:51:24 +01:00
|
|
|
exit 1
|
|
|
|
fi
|
2013-10-29 14:14:27 +01:00
|
|
|
|
|
|
|
# Remove trailing "/" for next commands
|
|
|
|
path=${path%/}
|
|
|
|
|
|
|
|
# Check port availability
|
|
|
|
sudo yunohost app checkport 9091
|
2013-10-29 14:51:24 +01:00
|
|
|
if [[ ! $? -eq 0 ]]; then
|
2014-11-11 16:39:27 +01:00
|
|
|
exit 1
|
2013-10-29 14:51:24 +01:00
|
|
|
fi
|
2013-10-29 14:14:27 +01:00
|
|
|
sudo yunohost app checkport 51413
|
2014-11-11 16:39:27 +01:00
|
|
|
if [[ ! $? -eq 0 ]]; then
|
|
|
|
exit 1
|
2013-10-29 14:51:24 +01:00
|
|
|
fi
|
|
|
|
|
|
|
|
# Open port in firewall
|
|
|
|
sudo yunohost firewall allow TCP 51413 > /dev/null 2>&1
|
2013-10-29 14:14:27 +01:00
|
|
|
|
|
|
|
# Install official debian package
|
2014-11-11 16:39:27 +01:00
|
|
|
sudo apt-get install transmission-daemon -y -qq
|
2013-10-29 14:14:27 +01:00
|
|
|
|
|
|
|
# Make directories and set rights
|
2016-12-28 17:23:48 +01:00
|
|
|
sudo mkdir -p /home/yunohost.transmission/{progress,completed,watched}
|
2014-12-04 11:48:27 +01:00
|
|
|
sudo chown -R debian-transmission:www-data /home/yunohost.transmission/
|
2016-12-28 17:23:48 +01:00
|
|
|
sudo chown -R debian-transmission:debian-transmission /home/yunohost.transmission/progress /home/yunohost.transmission/watched
|
2014-12-04 11:44:02 +01:00
|
|
|
sudo find /home/yunohost.transmission/ -type f | while read LINE; do sudo chmod 640 "$LINE" ; done
|
|
|
|
sudo find /home/yunohost.transmission/ -type d | while read LINE; do sudo chmod 750 "$LINE" ; done
|
2016-12-28 17:23:48 +01:00
|
|
|
sudo find /home/yunohost.transmission/watched -type d | while read LINE; do sudo chmod 770 "$LINE" ; done
|
|
|
|
ynh_app_setting_set "$app" watchdir "/home/yunohost.transmission/watched"
|
2013-10-29 14:14:27 +01:00
|
|
|
|
2016-12-28 16:54:07 +01:00
|
|
|
# Create RPC password
|
|
|
|
rpcpassword=$(ynh_string_random)
|
|
|
|
ynh_app_setting_set "$app" rpcpassword "$rpcpassword"
|
|
|
|
|
2013-10-29 14:14:27 +01:00
|
|
|
# Configure Transmission and reload
|
2016-12-28 17:23:48 +01:00
|
|
|
sudo service transmission-daemon stop
|
2016-12-28 16:54:07 +01:00
|
|
|
sed -i "s@RPCPASSWORDTOCHANGE@$rpcpassword@g" ../conf/settings.json
|
2013-10-29 14:51:24 +01:00
|
|
|
sed -i "s@PATHTOCHANGE@$path@g" ../conf/settings.json
|
2013-10-29 14:14:27 +01:00
|
|
|
sudo cp ../conf/settings.json /etc/transmission-daemon/settings.json
|
2016-12-28 17:23:48 +01:00
|
|
|
sudo service transmission-daemon start
|
2013-10-29 14:14:27 +01:00
|
|
|
|
2013-12-07 10:10:55 +01:00
|
|
|
# Monitor service
|
2014-05-18 15:40:05 +02:00
|
|
|
sudo yunohost service add transmission-daemon
|
2013-12-07 10:10:55 +01:00
|
|
|
|
2014-11-11 16:22:53 +01:00
|
|
|
# Patch sources to add a download button
|
2016-06-08 16:17:30 +02:00
|
|
|
sudo cp ../sources/toolbar-downloads.png /usr/share/transmission/web/style/transmission/images/toolbar-downloads.png
|
|
|
|
sudo bash -c 'cat ../sources/ynh_common.css >> /usr/share/transmission/web/style/transmission/common.css'
|
|
|
|
sudo sed -i "s@<div id=\"toolbar-inspector\" title=\"Toggle Inspector\"></div>@<div id=\"toolbar-inspector\" title=\"Toggle Inspector\"></div><div id=\"toolbar-separator\"></div><a href=\"../../downloads/\" id=\"toolbar-downloads\" title=\"Downloads\" target=\"_blank\"></a>@g" /usr/share/transmission/web/index.html
|
2014-11-11 16:22:53 +01:00
|
|
|
|
2013-10-29 14:14:27 +01:00
|
|
|
# Configure Nginx and reload
|
2013-10-29 14:51:24 +01:00
|
|
|
sed -i "s@PATHTOCHANGE@$path@g" ../conf/nginx.conf
|
2016-05-14 09:56:38 +02:00
|
|
|
sudo cp ../conf/nginx.conf /etc/nginx/conf.d/$domain.d/$app.conf
|
2013-10-29 14:51:24 +01:00
|
|
|
sudo service nginx reload
|