robbat2: (Default)
[personal profile] robbat2

To add a new USE flag, that's globally enabled for all Linux profiles, what's the minimum set of profiles that need to change? Deprecated profiles must be handled as well, for users that need to migrate still.

I ran into this today, while working on the USE=modules changes for linux-mod.eclass.

As an attempt to solve this, I munged up some GraphViz work to show profile inheritance, pictures as the end. Both sets have the trailing profiles "/desktop", "/developer", "/server" turned off for the 2008.0 and 10.0 releases, to cut down on the noise.

Graphs and script for download.

My answers as to which profiles:

  • default-linux
  • default/linux
  • base
  • embedded

Odd observations

  • Several Prefix profiles (linux/{amd64,ia64,x86} link to 2008.0 profiles explicitly instead of the generic architecture)
  • default/linux does not bring in base. Some profiles at a glance neglect this and might not have base brought in at all.
  • "embedded" is all alone in the tree.

Thumbnail of one graph

Question for any skilled GraphViz users:

If all nodes in a given subgroup/cluster have an edge going to a single destination node, is there any way to get graphviz to replace them with a single fat edge from cluster to destination node?

lines between clusters

Date: 2009-09-21 12:34 pm (UTC)
From: [identity profile] corec (from
I don't know if this helps, but you could somehow use "compound=true" as in dotguide page 30 (

Re: lines between clusters

Date: 2009-09-21 08:38 pm (UTC)
From: [identity profile]
compound only enables cluster edges. You have to explicitly declare them still.

Re: lines between clusters

Date: 2010-03-23 11:25 pm (UTC)
From: (Anonymous)
check out - heirarchical edge bundles

Re: lines between clusters

Date: 2010-03-23 11:50 pm (UTC)
From: [identity profile]
pretty, but please add a graphviz implementation now.

May 2017

141516171819 20

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags