Compare commits

...

2 Commits

Author SHA1 Message Date
librelad
fba5456218 Merge claude/2 2026-05-24 20:49:18 +01:00
librelad
c2e62374bb fix(install): install root helpers after the repo copy, not before
initRootHelpers ran inside initUsers, before initGIT copies the repo into
/docker/install — so it read helper sources from a not-yet-populated
$script_dir/scripts/system and skipped all 7 ("Root helper source
missing"). This was masked on every prior install because the old
deploy's `rm -rf /docker` left /usr/local/lib/libreportal/ intact, so the
helpers were simply never reinstalled. A genuine clean install (now that
the deploy uses the full uninstall) exposed it: the runtime ended up with
only the CLI wrapper, the scoped sudoers pointed at missing helper paths,
and the WebUI never came up.

The helpers are only needed at runtime (the install phase uses the broad
install-phase sudo), and nothing between initUsers and initGIT uses them,
so move the call to right after initGIT (before initLibrePortalCommand,
which already installs the wrapper to the same dir post-copy).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Signed-off-by: librelad <librelad@digitalangels.vip>
2026-05-24 20:49:18 +01:00

View File

@ -715,8 +715,6 @@ initUsers()
isError "Refusing to install an invalid sudoers drop-in for $sudo_user_name." isError "Refusing to install an invalid sudoers drop-in for $sudo_user_name."
fi fi
rm -f "$sudoers_tmp" rm -f "$sudoers_tmp"
initRootHelpers
} }
# Tighten the manager's sudo from the install-phase NOPASSWD: ALL down to the # Tighten the manager's sudo from the install-phase NOPASSWD: ALL down to the
@ -1423,6 +1421,7 @@ else
initUsers initUsers
initFolders initFolders
initGIT initGIT
initRootHelpers
initLibrePortalCommand initLibrePortalCommand
initUpdateConfigs initUpdateConfigs
completeInitMessage completeInitMessage