Files
narOS/packages/nucleic-a11y-agent/stage.sh
T

22 lines
1.2 KiB
Bash
Raw Normal View History

# Stage the prebuilt Rust AT-SPI semantic agent + its systemd USER unit, with a static
# global-enable symlink so it starts in every graphical session (no `systemctl --global
# enable` needed inside the mmdebstrap chroot). Prefer the CI-built dist/bin binary; fall
# back to the committed guest build (arm64) — the same artifact the pre-narOS base build bakes.
stage() {
local dest="$1" arch="$2"
local bin="$OS_DIR/dist/bin/nucleic-a11y-agent-$arch"
if [ ! -x "$bin" ] && [ "$arch" = arm64 ]; then
bin="$OS_DIR/../guest/nucleic-a11y-agent/build/nucleic-a11y-agent"
fi
local unit="$OS_DIR/../guest/nucleic-a11y-agent/systemd/nucleic-a11y-agent.service"
if [ ! -x "$bin" ]; then
echo "prebuilt binary missing: dist/bin/nucleic-a11y-agent-$arch" > "$dest/.skip-reason"
return 1
fi
install -D -m 0755 "$bin" "$dest/usr/local/bin/nucleic-a11y-agent"
install -D -m 0644 "$unit" "$dest/usr/lib/systemd/user/nucleic-a11y-agent.service"
install -d "$dest/etc/systemd/user/graphical-session.target.wants"
ln -sf /usr/lib/systemd/user/nucleic-a11y-agent.service \
"$dest/etc/systemd/user/graphical-session.target.wants/nucleic-a11y-agent.service"
}