On Tue, Mar 04, 2025 at 03:52:37PM +0000, Simon McVittie wrote:
> If I understand correctly, the adduser maintainers' recommendation is
> that, to the contrary, packages *should* invoke adduser unconditionally,
> and let adduser decide what (if anything) it needs to do to arrange for
> the desired state to exist. adduser maintainers: is that correct, or
> am I misunderstanding?

Adduser tries hard to do this. Calling adduser --system will exit
successfully if the caller's requests can be satisfied when adduser
returns. Hence, it will create the user if it does not exist, and leave
it untouched if it already exists as a system user.

However, if a user requested with adduser --system already exists as a
normal user, adduser will error out. It won't convert a normal user to a
system user for obvious reasons.

That being said, the behavior that led to this bug was observed with
adduser 3.143, which had a bug in this part of the code. Please retry
with adduser 3.144.

Greetings
Marc

Reply via email to