#!/bin/sh
# webui4frpc deb/rpm 安装后脚本：建用户、建目录、装服务
set -e

if ! getent group webui4frpc >/dev/null 2>&1; then
    groupadd --system webui4frpc
fi
if ! getent passwd webui4frpc >/dev/null 2>&1; then
    useradd --system --gid webui4frpc \
            --home-dir /var/lib/webui4frpc --no-create-home \
            --shell /usr/sbin/nologin \
            --comment "webui4frpc service account" webui4frpc
fi

mkdir -p /var/lib/webui4frpc
chown -R webui4frpc:webui4frpc /var/lib/webui4frpc
chmod 750 /var/lib/webui4frpc
chown root:webui4frpc /etc/webui4frpc/webui4frpc.env 2>/dev/null || true
chmod 640 /etc/webui4frpc/webui4frpc.env 2>/dev/null || true

# Startup config + the directory that holds the admin password file.
# The service reads /etc/webui4frpc/config.json (see the unit's ExecStart), so
# the password never has to appear on the command line. secret/ is root-writable
# and group-readable by the service account; files inside are created by the
# admin, we only fix ownership/permissions of the directory itself.
mkdir -p /etc/webui4frpc/secret
chown root:webui4frpc /etc/webui4frpc/secret 2>/dev/null || true
chmod 750 /etc/webui4frpc/secret 2>/dev/null || true
chmod 644 /etc/webui4frpc/config.json 2>/dev/null || true

if command -v systemctl >/dev/null 2>&1; then
    systemctl daemon-reload || true
    systemctl enable webui4frpc.service || true
    if [ -z "${DPKG_ROOT:-}" ]; then
        systemctl restart webui4frpc.service || true
    fi
fi

cat <<'EOF'

webui4frpc 已安装。

  配置:  /etc/webui4frpc/config.json      (请设置 password，推荐 file:/etc/webui4frpc/secret/password)
  密钥:  echo '你的口令' > /etc/webui4frpc/secret/password && chmod 0640 /etc/webui4frpc/secret/password
  数据:  /var/lib/webui4frpc
  服务:  systemctl status webui4frpc
  界面:  http://<本机地址>:7500

改完配置后执行:  systemctl restart webui4frpc

EOF

exit 0
