mirror of
https://github.com/YunoHost-Apps/wireguard_ynh.git
synced 2024-09-03 20:35:58 +02:00
in case of remove the application it should be possible to remove the wg0 interface. in order to create another installation in the future.
91 lines
3.1 KiB
Bash
91 lines
3.1 KiB
Bash
#!/bin/bash
|
|
|
|
#=================================================
|
|
# GENERIC START
|
|
#=================================================
|
|
# IMPORT GENERIC HELPERS
|
|
#=================================================
|
|
|
|
source _common.sh
|
|
source /usr/share/yunohost/helpers
|
|
|
|
#=================================================
|
|
# STANDARD REMOVE
|
|
#=================================================
|
|
# REMOVE SERVICE INTEGRATION IN YUNOHOST
|
|
#=================================================
|
|
|
|
# Remove the services from the list of services known by Yunohost (added from `yunohost service add`)
|
|
|
|
if ynh_exec_warn_less yunohost service status wireguard_ui >/dev/null
|
|
then
|
|
ynh_script_progression --message="Removing WireGuard UI service integration..." --weight=1
|
|
yunohost service remove wireguard_ui
|
|
fi
|
|
|
|
if ynh_exec_warn_less yunohost service status wg-quick@wg0 >/dev/null
|
|
then
|
|
ynh_script_progression --message="Removing WireGuard service integration..." --weight=1
|
|
yunohost service remove wg-quick@wg0
|
|
fi
|
|
|
|
#=================================================
|
|
# STOP AND REMOVE SERVICE
|
|
#=================================================
|
|
ynh_script_progression --message="Stopping and removing the systemd service..." --weight=1
|
|
|
|
# YunoHost does not handle services not ending with .service, let's remove it manually
|
|
systemctl stop wireguard@wg0.path
|
|
systemctl disable wireguard@wg0.path --quiet
|
|
ynh_secure_remove --file="/etc/systemd/system/wireguard@.path"
|
|
|
|
systemctl stop wireguard@wg0.service
|
|
systemctl disable wireguard@wg0.service --quiet
|
|
ynh_secure_remove --file="/etc/systemd/system/wireguard@.service"
|
|
|
|
ynh_remove_systemd_config --service=wireguard_ui
|
|
|
|
#=================================================
|
|
# REMOVE APP MAIN DIR
|
|
#=================================================
|
|
ynh_script_progression --message="Removing app main directory..." --weight=1
|
|
|
|
# Remove WireGuard configuration directory securely
|
|
ynh_secure_remove --file="/etc/wireguard"
|
|
|
|
#=================================================
|
|
# REMOVE NGINX CONFIGURATION
|
|
#=================================================
|
|
ynh_script_progression --message="Removing NGINX web server configuration..." --weight=1
|
|
|
|
# Remove the dedicated nginx config
|
|
ynh_remove_nginx_config
|
|
|
|
#=================================================
|
|
# REMOVE LOGROTATE CONFIGURATION
|
|
#=================================================
|
|
ynh_script_progression --message="Removing logrotate configuration..." --weight=1
|
|
|
|
# Remove the app-specific logrotate config
|
|
ynh_remove_logrotate
|
|
|
|
#=================================================
|
|
# SPECIFIC REMOVE
|
|
# Delete the wg0 interface
|
|
#=================================================
|
|
ip link delete wg0
|
|
#=============================================
|
|
# REMOVE VARIOUS FILES
|
|
#=================================================
|
|
|
|
# Remove sudoers file
|
|
ynh_secure_remove --file="/etc/sudoers.d/${app}_ynh"
|
|
|
|
# Remove sysctl file for port forwarding
|
|
ynh_secure_remove --file="/etc/sysctl.d/$app.conf"
|
|
|
|
#=================================================
|
|
# END OF SCRIPT
|
|
#=================================================
|
|
|
|
ynh_script_progression --message="Removal of $app completed" --last
|