> On Nov 8, 2021, at 04:00, FritzS GMX wrote:
> 
> Which users (and their groups) are created by MacPorts and how can they be 
> created during a new installation so that they get a UID (also GroupID) 
> previously defined by me.
> Is there possibly a script suggestion that could be used before the MacPorts 
> installation?
> 
> I want to achieve UID's & GroupID's starting from 530.
> 
> I want to install MacPorts on my new M1 MacMini with Monterey.
> 
> From my old Mac with ElCapitan
> # _messagebus 512
> # avahi 511
> # ldap 500
> # macports 506
> # messagebus 508
> # named 509
> # pulse 510

MacPorts provides no method for you to influence which UIDs and GIDs it chooses 
when it creates new users and groups. It picks the next free number starting at 
501. If you want to change that, you can modify the source.

If the user/group MacPorts wants to create already exists, MacPorts doesn't do 
anything, so one solution is for you to pre-create the users/groups you need 
with the desired IDs.



When you install MacPorts, it creates the "macports" user. If you use the pkg 
installer, the code that does this is here:

https://github.com/macports/macports-base/blob/v2.7.1/portmgr/dmg/postflight.in#L164-L169

If you build from source, the code that does this is here:

https://github.com/macports/macports-base/blob/v2.7.1/Makefile.in#L53-L58

You can change NEXTUID from 501 to something else if you want it to search for 
an unused ID starting at a different number.



Individual ports that you install may create their own users/groups. To find 
the ones that do, grep the Portfile for the commands "adduser", "addgroup" (the 
old commands) and "add_users" (the new command).

The code that creates these users/groups is here:

https://github.com/macports/macports-base/blob/v2.7.1/src/pextlib1.0/Pextlib.c#L270-L304

The constants MIN_USABLE_UID and MIN_USABLE_GID are defined here:

https://github.com/macports/macports-base/blob/v2.7.1/configure.ac#L277-L280

You can change MIN_USABLE_UID and MIN_USABLE_GID from 501 to something else if 
you want it to search for an unused ID starting at a different number. If you 
update MacPorts to a new version using selfupdate or our pkg installer these 
changes would be lost, so if you want to preserve this modification make sure 
you only update MacPorts base by building from your modified sources in the 
future.

Reply via email to