#!/bin/bash

installDockerRootlessUser()
{   
    if [[ $CFG_DOCKER_INSTALL_TYPE == "rootless" ]]; then
        if id "$CFG_DOCKER_INSTALL_USER" &>/dev/null; then
            isSuccessful "User $CFG_DOCKER_INSTALL_USER already exists."
        else
            # Create the rootless docker user. The login name (last arg) was
            # missing, so useradd failed silently — masked by local result=$(...)
            # — and the user never existed, breaking the whole rootless setup.
            # -m makes its home; with SUB_UID/GID configured in login.defs,
            # useradd also assigns its subordinate uid/gid ranges (needed for
            # rootless). Run unmasked so checkSuccess sees real failures.
            runSystem useradd -m -s /bin/bash -d "/home/$CFG_DOCKER_INSTALL_USER" "$CFG_DOCKER_INSTALL_USER"
            checkSuccess "Creating $CFG_DOCKER_INSTALL_USER User."
        fi
        # (Re)assert the password regardless — the user may have been pre-created
        # in init.sh's root phase (so /docker/containers ownership is ready before
        # the manager-run boot scans), where the password isn't set.
        updateDockerInstallPassword;
    fi
}
