Breaking long dependency chains

Clemens Lang cal at macports.org
Sun Mar 18 11:26:47 PDT 2012


On Sun, Mar 18, 2012 at 7:17 PM, Kevin Walzer <kw at codebykevin.com> wrote:
> Yet right now port is installing glib, and was installing Perl before I
> killed the process. Where do these come in? Why do I need glib, or Perl for
> that matter, to install the native Aqua/quartz variant of Tk?
>
> […]
>
> A badly needed feature in MacPorts is the ability to fully and recursively
> model  the dependency tree of a specific port: not just its dependencies,
> but the dependencies of its dependencies. That would be revealing. "port
> deps tk" lists four dependencies which I would expect would take 30-60
> minutes to install. Instead it's hours and hours and counting because of
> hidden dependencies like Perl and glib (and no doubt their dependencies in
> turn).

Are you looking for "port rdeps tk +quartz"?

> I also wonder if the emergence of Homebrew has taken away some of MacPorts
> (and Fink's) user base.


It sure has. Homebrew's slogan is "MacPorts driving you to drink? Try
Homebrew!" It doesn't get any more obvious what their target audience
is.

The problem with moving too many features (and dependencies) to variants is
  1. the buildbot only building archives for the default variants
  2. not a lot of users actually knowing about variants from my
experience, thus thinking the port just lacks the disabled features
  3. MacPorts not being able to depend on variants natively. It's
always a major hassle to check for things like perl5 +threads or atk
+gobject_introspection, which are needed in dependents of those
packages.

-- 
Clemens Lang
GSoC Student


More information about the macports-dev mailing list