Files
Frametop--frametop/pointer/helper/frametop-pointer.service
T
DeeJanuzandClaude Opus 5.5 6dd9fb1ad8 One launch switch: scripts/in-box runs a program in the container it was built for
Every place an installed Frametop started a program with `distrobox enter dev --` now goes
through scripts/in-box: the pointer and power units, ft-gazed (ft-gaze, ft-eyes), the gaze
check's panel, the desktop's ft-screens, the remote desktop's krdp and VNC, and the three
settings apps. in-box starts the container in a scope of its own (container-up.sh, which now
takes the container's name) and becomes `distrobox enter BOX --`, so callers behave as before.

BOX is "dev" for a source install. A release names its own container in .frametop-release,
so the same tree runs from an image without editing nine call sites. FRAMETOP_BOX overrides
both. Development tools (frame.sh, the headless test, the gaze probe and lab) and hand
tracking, which install.sh doesn't install, keep using the dev container.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 20:54:13 -06:00

24 lines
959 B
Desktop File

# Template: the installer replaces @REPO@ with the repo path on the Frame.
[Unit]
Description=Frametop pointer helper: the universal 3D mouse (cursor, collision, ft_pointer driver)
Documentation=file://@REPO@/README.md
# Needs SteamVR's IPC; it starts and stops with SteamVR.
After=steamvr.service frametop-input-relay.service
PartOf=steamvr.service
Requisite=steamvr.service
[Service]
# Runs in the container it was built in (the dev container, or a release's: scripts/in-box,
# which starts it in a scope of its own, so stopping this service can't stop it). The helper
# process lives in the container, so clean it up explicitly around it.
ExecStartPre=-/usr/bin/pkill -x ft-pointer
ExecStart=@REPO@/scripts/in-box @REPO@/pointer/helper/build/ft-pointer
ExecStopPost=-/usr/bin/pkill -x ft-pointer
Restart=on-failure
RestartSec=3
# The container session (conmon) ignores SIGTERM; don't wait 90 s for it.
TimeoutStopSec=5
[Install]
WantedBy=steamvr.service