Files
LOGAR/compilation/install_linux_server.sh
T
me0nline 37f959e402
CI Test Suite / Run Component Tests & Pipeline Verification (push) Failing after 1m4s
Release Binaries & Packages / Build & Release Standalone Binaries (Linux & Windows Cross-Compilation) (push) Successful in 4m38s
feat(licensing): add WebUI license import modal, remove lic step from setup, default unlicensed to 0 seats
2026-09-26 20:50:57 +02:00

73 lines
1.9 KiB
Bash

#!/usr/bin/env bash
set -euo pipefail
INSTALL_DIR="/opt/logar-server"
CONFIG_DIR="/etc/logar"
# Parse command line options
while [[ $# -gt 0 ]]; do
case "$1" in
--config-dir|--data-dir)
CONFIG_DIR="$2"
shift 2
;;
*)
shift
;;
esac
done
echo "============================================================"
echo " LOGAR Server Enterprise Linux Installer"
echo "============================================================"
# Interactive configuration if running in a terminal without CLI arguments
if [ -t 0 ]; then
read -r -p "Enter Data and Configuration Directory [${CONFIG_DIR}]: " USER_CFG
if [ -n "${USER_CFG}" ]; then
CONFIG_DIR="${USER_CFG}"
fi
fi
mkdir -p "${INSTALL_DIR}" "${CONFIG_DIR}" "/var/log/logar"
if [ -f "dist/Server.bin" ]; then
cp dist/Server.bin "${INSTALL_DIR}/Server"
elif [ -f "dist/Server" ]; then
cp dist/Server "${INSTALL_DIR}/Server"
elif [ -f "dist/LOGAR_Server" ]; then
cp dist/LOGAR_Server "${INSTALL_DIR}/Server"
else
echo "[!] Warning: dist/Server.bin binary not found in current directory. Continuing with existing binary if present."
fi
if [ -f "${INSTALL_DIR}/Server" ]; then
chmod +x "${INSTALL_DIR}/Server"
fi
cat <<EOF > /etc/systemd/system/logar-server.service
[Unit]
Description=LOGAR Hub and Aggregator Engine
After=network.target
[Service]
Type=simple
WorkingDirectory=${INSTALL_DIR}
ExecStart=${INSTALL_DIR}/Server --config ${CONFIG_DIR}/server_config.json
Restart=always
RestartSec=5s
User=root
LimitNOFILE=65536
[Install]
WantedBy=multi-user.target
EOF
if command -v systemctl >/dev/null 2>&1; then
systemctl daemon-reload
systemctl enable --now logar-server.service || true
echo "[+] LOGAR Server service installed and activated."
else
echo "[+] Systemd service installed at /etc/systemd/system/logar-server.service"
fi