On a fresh install the requirement checks run before the things they probe exist, leaking raw command stderr: - check_install_type.sh: `$( (id -u "$user") )` printed "id: 'dockerinstall': no such user" to the terminal AND — since id's error goes to stderr, not the captured stdout — the next line's `[[ "$ISUSER" == *"no such user"* ]]` could never match, so the rootless-user-absent branch was dead. Add `2>&1` (matching siblings on lines 25/31): no leak, and the check now works. - grep on $sysctl (the rootless marker conf, absent until rootless is set up) printed "grep: /etc/sysctl.d/99-libreportal-rootless.conf: No such file or directory". Add -s to the four $sysctl greps (check_docker_rootless, rootless_start_setup, rootless_docker x2); "marker absent" is still detected (non-zero exit), just without the file-not-found message. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> Signed-off-by: librelad <librelad@digitalangels.vip>
14 lines
333 B
Bash
Executable File
14 lines
333 B
Bash
Executable File
#!/bin/bash
|
|
|
|
checkDockerRootlessRequirement()
|
|
{
|
|
if [[ $CFG_DOCKER_INSTALL_TYPE == "rootless" ]]; then
|
|
### Docker Rootless
|
|
if grep -qs "ROOTLESS" $sysctl; then
|
|
isSuccessful "Docker Rootless appears to be installed."
|
|
else
|
|
isNotice "Docker Rootless does not appear to be installed."
|
|
((preinstallneeded++))
|
|
fi
|
|
fi
|
|
} |