This is nothing new, of course.  NeXTStep introduced things like ~&#x2F;Apps, &#x2F;LocalLibrary, and &#x2F;LocalApps back in the early 1990s.<p>Daniel J. Bernstein, around the turn of the century, proposed a &#x2F;package hierarchy (for package management without the need for conflict resolution) and a &#x2F;command directory.  (<a href="http:&#x2F;&#x2F;cr.yp.to&#x2F;slashpackage.html" rel="nofollow">http:&#x2F;&#x2F;cr.yp.to&#x2F;slashpackage.html</a>)  Their major problem was the idea that one had to register things with what was to most of the world just some bloke on another continent.  But they had concepts like a hierarchical package naming scheme (&quot;admin&#x2F;&quot;, &quot;mail&#x2F;&quot;, &amp;c.), self-contained build trees with versioned names, and an &quot;index&quot; directory full of symbolic links.