On Thu, 8 Apr 2004, Rob van der Heij wrote: > On Thu, 2004-04-08 at 23:38, Jos Vos wrote: > > > But these "conditionals" will be evaluated at build time, so they > > apply to the build host, is that ok? You could then do something > > like (untested, YMMV, but you get the idea): > > No, I need them to relate to versions on the target system. Build is > only done once. I want my package as a kind of "level set" so it would > pull in any other packages at the correct level. > > > Well, you could let the preinstall script fail, but this is dirty > > and absolutely "not done" I think. > > I was hoping for a defined interface where the preinstall script could > refuse installation. But doing my check there would not prevent a > package of incorrect level to be installed later. > You another approach, that doesn't quite exist as I know, but would probably be easier to get added to rpm (read, I am somewhat interested in this), is something simular to Solaris packages verifyscript (not to be confused with rpm's %verify). Basically, what I am thinking is having another script added (lets call it %predep for now) to packages (optionally of course), which would be run before the transaction starts running for real (that is rolling through the PSM and FSM), and if it returns an error, then the transaction stops right there. I can see uses for this in that it would provide way for a packager to provide opaque prevalidation logic to rpm such that the package could request the transaction stop before it really got started based on information that only it could reasonably know. The problem is that being opaque to rpm, it would not be able to really look at dependencies (that I can think of yet). Certainly, with current versions of rpm it could get at the rpmdb and do queries but that would not give it information on the total dependency set that is made up of both DB provides and requirements, and transaction provides and requirements. Anway, its something to think about. Cheers...james > Rob > > > _______________________________________________ > Rpm-list mailing list > Rpm-list@xxxxxxxxxx > https://www.redhat.com/mailman/listinfo/rpm-list > _______________________________________________ Rpm-list mailing list Rpm-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/rpm-list