On 08/05/10 16:24, Mark J. Nelson wrote:
On 07/27/10 12:56 PM, Sean Scott wrote:
Hi,

I'm the owner of the "mtst" package but must admit that I don't know much about how IPS packaging works.

First, thanks very much for the reply/information.

You need to read the pkg(5) manpage, and understand the difference
between a "require" dependency and an "incorporate" dependency.

I checked out the man page and armed with the information from your reply I think it make sense now. But I still think something should change wrt mtst.

The mtst package(s) is internal only and so is rightly part of repo.extra but all of repo.extra seems to depend and be part of the osnet consolidation.

Yes, mtst has always been part of the OS/Net consolidation, even when it
was an SVr4 package.

In addition, it is now part of a group package, "osnet-extra," which
says "install all of the packages that are part of the extra
repository."  This package is also part of the extra repository, and as
such is never delivered outside of Sun.

I don't want mtst to be part of the osnet-extra group package (or any group package) because it should never be delivered onto a system unless it is explicitly required/desired. If it comes along for the ride when some customer needs other on-extra packages this is a problem. Also if we are asked by legal all the time (ei: can/should customer/partner X be allowed to have mtst binaries?) because of this we still have a problem.

Being part of the on-extra repository is correct for mtst and we are happy with that. So is there a way exclude mtst from the group package?

It is also part of the incorporation "osnet-incorporation," which merely
says "if you install this package, its version must correctly match the
rest of OS/Net."  This is, after all, the reason that mtst is part of
OS/Net: it has knowledge of consolidation private interfaces, and should
appropriately be version constrained to match those interfaces.

You're right this is what we want.

"mtst" should not depend on any other packages at all, but even more importantly no packages or consolidations should depend on it. It is NOT to be sent to customer sites.

Why should mtst not depend on other packages?  If mtst requires an
object delivered by another package (for example, it links against a
library or invokes a command), then it should depend on those packages.

I might have been going a bit over the top, but I don't think mtst should depend on anything other than the core kernel pieces. It should not depend on any object delivery from any optional package and so I don't want it having needless dependencies wrt the pkg tool.

This in no way causes mtst to be delivered outside of Oracle.

Understood.

Is there any way I can remove any dependencies from the mtst package? The manifest file is here:

usr/src/pkg/manifests/system-fault-management-mtst.mf

I tried adding the following line but it did not have the desired effect:
set name=org.opensolaris.nodepend value=true

Again, I don't think you should really want to do this.

Removing the following line caused the manifest to be part of repo.redist instead of repo.extra so I added it back:
set name=org.opensolaris.redist value=internal

If you do not want mtst delivered outside of Oracle, do not change its
redist setting.

Understood, we do want mtst to remain part of repo.extra which is why I added that line back to the manifest. But we want mtst to be excluded from the osnet-extra group package (so it is NOT part of any group package). Can you describe a clean way to achieve this?

Thanks again for the reply/info, it's much appreciated,

Sean

Ideally I'd like very loose version checking as well, but that is not a must have. Can I define looser version checking in the manifest file that will override any default version checking? I mean things like:
depend fmri=pkg:/[email protected] type=require
   vs
depend fmri=pkg:/j...@1 type=require

Any help is much appreciated, cheers,

If you describe the problems you're encountering, and why you think that
they should be solved by modifying the package, we can help.

But I think this is right as it is.  You should not be mixing and
matching objects from different builds of OS/Net, regardless of whether
they're delivered through redist or extra.

--Mark

--
Sean Scott
-------------------------------------------------
Oracle Numetrix
Email: [email protected]
MTL Phone: +1 514 228 8042
-------------------------------------------------
_______________________________________________
on-ips-dev mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/on-ips-dev

Reply via email to