mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-10-26 21:47:20 +00:00
4f3e170612
The Unraid installer appended `bash <wrapper>` to /boot/config/go. The wrapper is an endless watchdog loop, so that line never returned, and rc.local never reached anything the user had placed after the Pulse block. On a maintainer host a reboot skipped swap, a memory logger and a hosts entry the agent needed to reach its server, and Pulse showed the host as down for two days while it was healthy. The entry now backgrounds the wrapper with its output redirected, so go returns and holds no boot output pipe open. Install-time cleanup used to delete every go line containing "pulse-agent", including log directories, hosts entries and a co-installed agent. It now removes only the installer's marker and command lines that name a start-pulse-agent.sh wrapper or this runtime binary outside a comment, so upgrades from the foreground or hand-edited entry still leave exactly one launch. Kept lines lose a trailing CR, as Unraid's fromdos does before running go, and a removal that would leave go unparseable is refused with a warning. Uninstall admits the detached entry as well as the earlier foreground form. The new tests execute the go file the installer writes and require it to return, release its output pipe and run the next line, with a planted foreground entry as the control, and pin the narrowed cleanup against the removal filter. The NAS teardown controls now render their Unraid entry through the same emitter.