Caching a system (non-human) user causes it to be considered not a system account
While adding an integration test to Debian's accountsservice packaging (mainly to verify my backports of !116 (closed) and !118 (merged)), I noticed this behaviour:
-
Start with an account that accountsservice considers to be a local system account. I used
_apt
, a reserved system user that is part of our upgrade mechanism:# grep _apt /etc/passwd _apt:x:100:65534::/nonexistent:/usr/sbin/nologin
-
Call
user = AccountsService.UserManager.get_default().cache_user("_apt")
using GObject-Introspection -
Look at its properties with
user.is_system_account()
and so on -
What I expected:
user.is_local_account()
is true,user.is_system_account()
is also true -
Actual result:
user.is_local_account()
is true (after !116 (closed)), butuser.is_system_account()
is false
Is this intended?