On Tue, Mar 18, 2008 at 10:43:12PM -0700, Jyri Virkki wrote: > Are there plans to support functional dependencies, so for example a > package can declare it needs "a database", and both MySQL and postgres > packages can fulfill that dependency?
We've talked about this a handful of times, and have always run into a bunch of semantic fuzziness. For instance, if a package needs "a database" and doesn't care which one (i.e., doesn't link against a database's libraries), then that dependency might even be satisfied by a database installed on another machine, listening on a port that your machine can talk to. Even if the requirement is for a local package, how would you communicate this dependency to the user? Do you pause the installation and ask the user to select from a list of packages that would satisfy the dependency? If there's package providing "a database", then presumably you could just plow on. Indeed, if the behavior where at least one satisfying package on the system is sufficient, and no satisfying packages fails the installation, then you can almost have this today, with optional dependencies. Create a cluster package containing the available databases, each as optional dependencies. That cluster would effectively then be a virtual package, though we would need to introduce the semantic of "at least one", which we can't currently express. When Stephen returns, he might remember if we'd ended up deciding anything, or find any notes he might have on the subject. I don't think there's anything electronic, though an archive search might reveal something. Danek _______________________________________________ pkg-discuss mailing list [email protected] http://mail.opensolaris.org/mailman/listinfo/pkg-discuss
