[arch-general] Arch pkg user and group IDs?

Eli Schwartz eschwartz93 at gmail.com
Mon Nov 28 00:03:02 UTC 2016


On 11/27/2016 04:04 PM, Eli Schwartz wrote:
> On 11/27/2016 08:52 AM, Martin Kühne via arch-general wrote:
>> Yes, arch system users are numbered automatically, but the groups
>> and users you listed are a bit of special snowflakes for systemd.
>> I'm not sure whether remapping them would be possible.
> 
> AFAIK those systemd users/groups are generated by sysusers.d, which 
> doesn't declare specific UIDs. So I assume that is read from 
> /etc/login.defs, besides which I don't see how that would otherwise
> work on distros that use lower max values.
> 

Actually, the systemd "eevulz maintainers" meme strikes again. Or at
least, a rather bizarre design choice:
https://github.com/systemd/systemd/issues/3855

On 8/2/2016 10:44 AM, Lennart Poettering commented on Github:
> I am strongly against this. Sorry. These defines should be chosen by
> the distro vendor, not by users. And it's not realistic to change
> these definitions during runtime anyway (as you cannot reasonably
> move the IDs allocated during installation).
> 
> Quite frankly, these settings should never have been in /etc as this
> suggests all would be fine with randomly changing the values for
> this, but this cannot work. Sorry.

Completely missing the forest for the trees...

So clearly, the systemd way is to install an Arch system/chroot, change
the defaults, and re-roll your systemd packages for use in a brand-new
installation, then repeat *in perpetuity* , if you intend to deviate *at
install time* from the user-configurable choices of the distro
maintainers. So much for end-user configurability of systems, and here I
thought it would be as simple as initially populating that file on a
blank partition.

I don't know if that is evil, I simply do not know what the logic is at
all. This breaks systemd-sysuser's promised holy grail of declarative
system users -- the "imperative" is still there, but moved, and hidden
inside the binary that translates those files.
The user/package wants certain users, the system announces what a user
should look like, and then systemd stomps all over that by memorizing
how it created users the first time (regardless of which hardware that
was), and then just doing that again.

-- 
Eli Schwartz


More information about the arch-general mailing list