#!/bin/sh
# #
#   @app                ConfigServer Firewall & Security (CSF)
#                       Login Failure Daemon (LFD)
#   @website            https://configserver.dev
#   @docs               https://docs.configserver.dev
#   @download           https://download.configserver.dev
#   @repo               https://github.com/Aetherinox/csf-firewall
#   @copyright          Copyright (C) 2025-2026 Aetherinox
#                       Copyright (C) 2006-2025 Jonathan Michaelson
#                       Copyright (C) 2006-2025 Way to the Web Ltd.
#   @license            GPLv3
#   @updated            10.08.2025
#   
#   This program is free software; you can redistribute it and/or modify
#   it under the terms of the GNU General Public License as published by
#   the Free Software Foundation; either version 3 of the License, or (at
#   your option) any later version.
#   
#   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
#   General Public License for more details.
#   
#   You should have received a copy of the GNU General Public License
#   along with this program; if not, see <https://www.gnu.org/licenses>.
#   
#   @script     ConfigServer Firewall Installer
#   @desc       determines the users distro and (if any) control panel, launches correct installer sub-script
#   @author     Aetherinox
#   @repo       https://github.com/Aetherinox/csf-firewall
#   
#   @usage      Normal install          sh install.sh
#               Dryrun install          sh install.sh --dryrun
# #

# #
#    Allow for execution from different relative directories
# #

script_dir="$(cd "$(dirname "$0")" && pwd)"

# #
#    Change working directory
# #

cd "$script_dir" || exit 1

# #
#    Start script
# #

echo
echo "Selecting installer..."
echo

if [ -e "/usr/local/cpanel/version" ]; then
	echo "Running csf cPanel installer"
	echo
	sh $script_dir/install.cpanel.sh
elif [ -e "/usr/local/directadmin/directadmin" ]; then
	echo "Running csf DirectAdmin installer"
	echo
	sh $script_dir/install.directadmin.sh
elif [ -e "/usr/local/interworx" ]; then
	echo "Running csf InterWorx installer"
	echo
	sh $script_dir/install.interworx.sh
elif [ -e "/usr/local/cwpsrv" ]; then
	echo "Running csf CentOS Web Panel installer"
	echo
	sh $script_dir/install.cwp.sh
elif [ -e "/usr/local/vesta" ]; then
	echo "Running csf VestaCP installer"
	echo
	sh $script_dir/install.vesta.sh
elif [ -e "/usr/local/CyberCP" ]; then
	echo "Running csf CyberPanel installer"
	echo
	sh $script_dir/install.cyberpanel.sh
else
	echo "Running csf generic installer"
	echo
	sh $script_dir/install.generic.sh
fi