As I’m sure you’re all aware, NetInfo is gone in Leopard, replaced by plist files living in /var/db/dslocal. This might present issues if you are migrating users from Tiger machines to Leopard. Two scenarios for us:
1) If we use radmind to update a machine in-place from Tiger to Leopard, we’ll need a way to convert any local user accounts from the NetInfo database to the new dslocal store.
2) If you migrate user data and accounts from a Tiger machine to a Leopard machine (and you don’t want to use Apple’s Migration Assistant, or can’t), again, you might need to convert NetInfo user account info to dslocal.
As it turns out, even though NetInfo is gone, its ghost lives on in Leopard. In /System/Library/PrivateFrameworks is the NetInfo.framework. This provides most of the plumbing needed by higher-level tools. Of specific interest is “nicl”, which has the ability to work with “raw” NetInfo database files. If you copy /usr/bin/nicl from a Tiger installation to a Leopard machine and point it at a NetInfo database file – it will work just fine:
aquaman:Resources root# /tmp/nicl -raw /Volumes/Tiger/private/var/db/netinfo/local.nidb -list /users
This might be useful in a script to import local users from a Tiger installation into a new Leopard install.