1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/hotspot_ynh.git synced 2024-09-03 19:25:53 +02:00
hotspot_ynh/scripts/remove

143 lines
4.7 KiB
Text
Raw Normal View History

2014-11-02 21:30:56 +01:00
#!/bin/bash
# Wifi Hotspot app for YunoHost
2014-12-26 20:18:03 +01:00
# Copyright (C) 2015 Julien Vaubourg <julien@vaubourg.com>
# Contribute at https://github.com/labriqueinternet/hotspot_ynh
#
2014-12-26 20:18:03 +01:00
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
2014-12-26 20:18:03 +01:00
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
2014-12-26 20:18:03 +01:00
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#=================================================
2020-05-31 05:33:17 +02:00
# GENERIC START
#=================================================
# IMPORT GENERIC HELPERS
#=================================================
source _common.sh
source /usr/share/yunohost/helpers
#=================================================
# LOAD SETTINGS
#=================================================
2020-05-31 05:33:17 +02:00
ynh_script_progression --message="Loading installation settings..."
app=$YNH_APP_INSTANCE_NAME
2020-05-31 05:33:17 +02:00
firmware_nonfree=$(ynh_app_setting_get --app=$app --key=firmware_nonfree)
service_name=$(ynh_app_setting_get --app=$app --key=service_name)
2019-02-23 01:22:56 +01:00
#=================================================
# STANDARD REMOVE
#=================================================
2020-05-31 05:33:17 +02:00
# REMOVE SERVICE INTEGRATION IN YUNOHOST
#=================================================
2020-05-31 05:33:17 +02:00
# Remove the service from the list of services known by Yunohost (added from `yunohost service add`)
2019-02-26 01:11:59 +01:00
if yunohost service status $service_name >/dev/null 2>&1
then
2020-05-31 05:33:17 +02:00
ynh_script_progression --message="Removing $app service"
2019-02-26 01:29:05 +01:00
yunohost service stop $service_name
2019-02-23 01:22:56 +01:00
yunohost service remove $service_name
fi
#=================================================
# STOP AND REMOVE SERVICE
#=================================================
2020-05-31 05:33:17 +02:00
ynh_script_progression --message="Stopping and removing the systemd service..."
# Remove the dedicated systemd config
2020-05-31 05:33:17 +02:00
ynh_remove_systemd_config --service=$service_name
2019-02-23 01:22:56 +01:00
#=================================================
# REMOVE DEPENDENCIES
#=================================================
2020-05-31 05:33:17 +02:00
ynh_script_progression --message="Removing dependencies..."
2019-02-23 01:22:56 +01:00
# Remove metapackage and its dependencies
ynh_remove_app_dependencies
#=================================================
# REMOVE APP MAIN DIR
#=================================================
2020-05-31 05:33:17 +02:00
ynh_script_progression --message="Removing app main directory..."
2019-02-23 01:22:56 +01:00
# Remove the app directory securely
2020-05-31 05:33:17 +02:00
ynh_secure_remove --file="/usr/local/bin/$service_name"
2020-05-31 05:33:17 +02:00
ynh_secure_remove --file="/usr/local/bin/iw_multissid"
ynh_secure_remove --file="/usr/local/bin/iw_devices"
ynh_secure_remove --file="/usr/local/bin/iw_ssids"
ynh_secure_remove --file="/usr/local/bin/ipv6_expanded"
ynh_secure_remove --file="/usr/local/bin/ipv6_compressed"
2019-02-23 02:12:04 +01:00
2020-05-31 05:33:17 +02:00
ynh_secure_remove --file="/etc/sudoers.d/${app}_ynh"
2019-02-23 02:12:04 +01:00
for FILE in $(ls /tmp/.ynh-hotspot-* 2>/dev/null)
2019-02-09 13:03:20 +01:00
do
2020-05-31 05:33:17 +02:00
ynh_secure_remove --file="$FILE"
2019-02-09 13:03:20 +01:00
done
2014-11-02 21:30:56 +01:00
# Remove confs
2020-05-31 05:33:17 +02:00
ynh_secure_remove --file="/etc/dnsmasq.dhcpd/dhcpdv6.conf.tpl"
ynh_secure_remove --file="/etc/dnsmasq.dhcpd/dhcpdv4.conf.tpl"
for FILE in $(ls /etc/hostapd/hostapd.conf{.tpl?,} 2>/dev/null)
2019-02-09 13:03:20 +01:00
do
2020-05-31 05:33:17 +02:00
ynh_secure_remove --file="$FILE"
2019-02-09 13:03:20 +01:00
done
2019-02-23 01:22:56 +01:00
#=================================================
# CLOSE A PORT
#=================================================
if yunohost firewall list | grep -q "\- 547$"
then
2020-05-31 05:33:17 +02:00
ynh_script_progression --message="Closing port 547"
2019-02-23 01:22:56 +01:00
ynh_exec_warn_less yunohost firewall disallow TCP 547
fi
if yunohost firewall list | grep -q "\- 67$"
then
2020-05-31 05:33:17 +02:00
ynh_script_progression --message="Closing port 67"
2019-02-23 01:22:56 +01:00
ynh_exec_warn_less yunohost firewall disallow TCP 67
fi
#=================================================
# REMOVE LEGACY INTERFACES
#=================================================
if [ -d /etc/nginx/conf.d/*.d/$app.conf ]; then
ynh_secure_remove /etc/nginx/conf.d/*.d/$app.conf
fi
if [ -d /etc/php/*/fpm/pool.d/$app.conf ]; then
ynh_secure_remove /etc/php/*/fpm/pool.d/$app.conf
fi
if [ -d /var/www/$app ]; then
ynh_secure_remove /var/www/$app
fi
2019-02-23 01:22:56 +01:00
#=================================================
# GENERIC FINALIZATION
#=================================================
# REMOVE DEDICATED USER
#=================================================
2020-05-31 05:33:17 +02:00
ynh_script_progression --message="Removing the dedicated system user..."
2019-02-23 01:22:56 +01:00
# Delete a system user
2020-05-31 05:33:17 +02:00
ynh_system_user_delete --username=$app
2019-02-23 01:22:56 +01:00
#=================================================
# END OF SCRIPT
#=================================================
2020-05-31 05:33:17 +02:00
ynh_script_progression --message="Removal of $app completed"