mirror of
https://gitcode.com/JianFeeeee/HomeAgent.git
synced 2026-11-07 01:37:34 +00:00
refactor(deploy): deb control 与 postinst/prerm 改用 hologramagent 包名与 /var/lib/hologram
四个 control:Package: homeagent-{client,server,full,toolchain} →
hologramagent-*,Maintainer/Homepage 品牌名,toolchain 的 SDK 安装路径
/usr/lib/homeagent/sdk → /usr/lib/hologram/sdk。
postinst/prerm:SERVICE_NAME="hologramagent"。
这一行是「改一半就静默失效」的典型:
systemctl enable/start/stop 全部带 2>/dev/null || true,
单元名不对时**不报错**——装完既不 enable 也不 start,用户以为装好了。
现在 postinst 的 DATA_DIR/SETUP_SH 也一起指向 /var/lib/hologram、
/usr/lib/hologram/setup.sh,否则 setup.sh 会在旧目录里初始化凭据,
而内核按新单元从新目录读 —— 表现为「装完登录不上,credentials.txt 找不到」。
setup.sh 同步:HOLOGRAM_DATA / HOLOGRAM_API_KEY 前缀、模型目录
/usr/lib/hologram/models/...。与 postinst 传的变量名必须一致,
否则 DATA_DIR 回落到默认值、凭据写到另一个目录。
Homepage/Documentation 用 trueagent/HologramAgent(与原值同源,只换品牌词);
仓库 owner 与地址本身归批 4,这里不动。
This commit is contained in:
@ -1,10 +1,10 @@
|
||||
#!/bin/sh
|
||||
set -e
|
||||
|
||||
SERVICE_NAME="homeagent"
|
||||
SERVICE_NAME="hologramagent"
|
||||
HOMED_BIN="/usr/bin/homed"
|
||||
DATA_DIR="/var/lib/homeagent"
|
||||
SETUP_SH="/usr/lib/homeagent/setup.sh"
|
||||
DATA_DIR="/var/lib/hologram"
|
||||
SETUP_SH="/usr/lib/hologram/setup.sh"
|
||||
|
||||
# unit 由本包装到 /etc/systemd/system/,而旧 postinst 只查
|
||||
# /lib/systemd/system/(merged-usr 下等于 /usr/lib/systemd/system,那里没有
|
||||
@ -34,9 +34,9 @@ case "$1" in
|
||||
# credentials.txt、没进数据库),用户拿它登录必然失败,安装却一声不响。
|
||||
# 失败必须看得见,并给出可直接执行的补救命令。
|
||||
if [ -x "$SETUP_SH" ]; then
|
||||
if ! HOMEAGENT_DATA="$DATA_DIR" "$SETUP_SH"; then
|
||||
echo "E: homeagent 初始化失败——凭据可能未写入 config.db。" >&2
|
||||
echo "E: 请手动重试:HOMEAGENT_DATA=$DATA_DIR $SETUP_SH" >&2
|
||||
if ! HOLOGRAM_DATA="$DATA_DIR" "$SETUP_SH"; then
|
||||
echo "E: hologramagent 初始化失败——凭据可能未写入 config.db。" >&2
|
||||
echo "E: 请手动重试:HOLOGRAM_DATA=$DATA_DIR $SETUP_SH" >&2
|
||||
fi
|
||||
else
|
||||
echo "W: 未找到 $SETUP_SH,跳过凭据初始化。" >&2
|
||||
@ -51,10 +51,10 @@ case "$1" in
|
||||
# (仅 enable 不会让已在运行的进程换用新文件)。
|
||||
if [ -z "${2:-}" ]; then
|
||||
systemctl start "$SERVICE_NAME" 2>/dev/null || \
|
||||
echo "W: homeagent 服务未能启动,请检查:systemctl status $SERVICE_NAME" >&2
|
||||
echo "W: hologramagent 服务未能启动,请检查:systemctl status $SERVICE_NAME" >&2
|
||||
else
|
||||
systemctl restart "$SERVICE_NAME" 2>/dev/null || \
|
||||
echo "W: homeagent 服务未能重启,请检查:systemctl status $SERVICE_NAME" >&2
|
||||
echo "W: hologramagent 服务未能重启,请检查:systemctl status $SERVICE_NAME" >&2
|
||||
fi
|
||||
else
|
||||
echo "W: 未找到 ${SERVICE_NAME}.service,未启用服务。" >&2
|
||||
|
||||
Reference in New Issue
Block a user