We are working on improving a script that's currently used by the Distribution Constructor to pre-import SMF services and applying SMF profiles in the root archive during the process of constructing the LiveCD. This is done to optimize the boot performance.
The script we are using now, mkrepo, is actually a hacked together script based on the manifest-import SMF service start method. We removed most of the functionality except searching for all manifests, loading of the manifests and applying the profiles. For reference, here's the script we use right now: http://src.opensolaris.org/source/xref/caiman/slim_source/usr/src/cmd/distro_const/utils/mkrepo The ultimate goal is to get rid of our own script, because we don't want to maintain our version of something that already exists else where. The following thread is the latest discussion. I have some suggestions on what need to be done in there. http://www.opensolaris.org/jive/thread.jspa?threadID=107033&tstart=0 The following is the bug we filed to track this work. It has all the discussion we had on this. http://defect.opensolaris.org/bz/show_bug.cgi?id=5209 From the Distribution Constructor(DC) point of view, the following features are needed: 1) Find all the manifests in the alternate root, and pre-import all the manifest we found. 2) Apply profiles to the alternate root's SMF repository. In addition to the various profiles the manifest-import script normally applies in first boot, DC also needs to be able to apply 1 or more user provided SMF profiles. These will be applied after all the "standard" ones are applied. 3) Manifest-import script determines at boot time which platform the machine is running on, and creates the appropriate link for the platform.xml profile, before applying it. Since the machine on which DC runs is not the one that will be used for running image produced, creating the link during image construction time is wrong. This needs to be done during first boot of the LiveCD/AI image. If the current manifest-import script is updated such that all the code for doing manifest search/import and applying profile are put into functions in some sort of library delivered by the SMF group, items 1+2 should be easily done. Is this possible? We are not sure what to do with item 3. In the discussion thread above, I mentioned we can do this as a special case in one of the LiveCD/AI boot up SMF script. Is there a better way to do it? Thanks. --Karen
