Am Donnerstag, 27.11.03 um 08:11 Uhr schrieb Daniel Macks:


Okay, another idea. Consider for major versions N:

  fooN.info:
    Package: fooN
    Version: N.0.0
    SplitOff: <<
      Package: foo-dev
      Provides: fooN-dev
    <<

The fooN packages are empty (like Type: bundle). By having all the
major versions of the -dev be arranged as different %v of the same %n,
their installation are mutually exclusive. They all conflict with and
replace one another but they don't have to explicitly list all others
as Conflicts/Replaces). A dependency on fooN-dev causes dpkg to
automatically install the version of foo-dev that provides it (handled
as a simple %v upgrade/downgrade). This works in simple tests.

This sounds like a pretty good idea / approach. Though I didn't yet really have time to consider all consequences, and most importantly actually try it. But at least on the first look, I see no major problems.


The
only problem I've seen so far is that since fooN-dev are virtual, one
cannot manually 'fink build' or 'fink install' them (which IMO borders
on being a bug in its own right).

Well that is a matter of perspective, I guess. Semantically IMHO the current behavior is perfectly correct. However, it may indeed not match what you expect. But it's not a bug, it's a missing feature :-). Fink could allow you to build "provided" packages, but since multiple packages may provide the same foo, fink may have to ask the user which is meant etc....


But if you know what's going on, you can interact with foo-dev-%v.

But that's easy to screw up and in fact hard to do while staying forward compatible... you don't want to depend on an exact revision. And "foo-dev (>= 2.0-1) instead of "foo2-dev" isn't good enough either, since "foo-dev 3.0-1" would also match it, despite not providing foo2-dev.


So it seems this would require a tweaks to the dependency engine, but that should be feasible.


Cheers,


Max



-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program.
Does SourceForge.net help you be more productive?  Does it
help you create better code?  SHARE THE LOVE, and help us help
YOU!  Click Here: http://sourceforge.net/donate/
_______________________________________________
Fink-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/fink-devel

Reply via email to