Subject: Re: Third Party User-UIDs > 1000
To: Gavan Fantom <gavan@coolfactor.org>
From: Greg Troxel <gdt@ir.bbn.com>
List: tech-pkg
Date: 02/15/2006 07:00:59
    +USERADD?=	/usr/sbin/useradd -P pkgsrc
        
Analyzing your proposal:

It doesn't get pkgsrc into the business of assigning the uids and
having a global registry, but merely causes all of them to end up in
one range, at least on NetBSD.

It doesn't make adding support for ranges to other OSes any harder.
(Of course, the local policy issue is the hardest, but the framework
lets each OS make its own rules.)

If (counterfactual hypothesis!) we did later want to have e.g. a
registry file in pkgsrc for uids so that builds on different machines
would produce binary packages with the same numeric ids, then this
scheme doesn't get in the way.  We'd need to have a range and then map
it to a local range, and something that feels like this would need to happen.

I think this is a reasonable approach, solving the problem on NetBSD
and showing a way forward for other systems if they want to go there.

The current system isn't bothering me because at BBN we use uids more
or less from 10000-250000 and 60000-63000, based on employee IDs
(which are 4 or 5 digits, and thankfully not UN Global Serial
Numbers).  And if your proposal were implemented, it would still leave
useradd choosing different uids for people on different machines, but
at least would avoid part of the grief, making the rest more
manageable.

Besides

  patch to useradd to add -P
  new /etc/usermgmt.conf:pkgsrc or some such
  change to NetBSD.mk

there would need to be a strategy to avoid using -P on systems that
don't have it yet.

-- 
        Greg Troxel <gdt@ir.bbn.com>