RFC: MacPorts Filesystem Hierarchy Standard

js ebgssth at gmail.com
Thu Mar 6 05:48:09 PST 2008


>  > I wrote the Filename hierarchy standard for MacPorts.
>  > I know there's already porthier(7), but I thought it would be nice
>  > to have more specific standard.
>
>  So is this meant to replace porthier(7)? Than you should write it up as
>  a patch for the manual page. I don't think we need yet another place for
>  it. Coordinate with markd and simon on this.

No, I meant to replace hier part of the Guide.
After this change, porthier change would be followed.

>  > This document defines the standard placement of file and directory
>  > installed by MacPorts. This document also intended to replace the
>  > existing porthier(7)[1]. Every ports in MacPorts project should follow
>  > this standard. Most of this based on hier(7)[2].
>
>  Why are you referencing to OpenBSD hier? Mac OS X also has a man page
>  `hier'.

In my experience, OpenBSD is the most rigid system with high quality
documentations.
That's why I refered to it.

>  > Naming Convension
>  >
>  > When two or more ports have files in common, e.g. apachectl in apache
>  > and apache2, each port must prepend the part of its major version
>  > number to the files as a suffix. (e.g. apachectl for apache,
>  > apachectl2 for apapche2)
>
>  Append, not prepend.

Bad English writer...
Thanks.


>  > Everything installed by MacPorts must be in /opt/local or
>  > /Applications/MacPorts. The former is used for non-aqua applications
>  > and may be changed by modifying macports.conf. The latter is for aqua
>  > applications and cannot be changed.
>
>  Write ${prefix} instead of /opt/local, or if it goes into the man page,
>  it could be expanded during install.
>
>  The applications dir should be changeable in future versions, but at the
>  moment it is still hardcoded in ports, so this is right.

I'll change this line like "${prefix}, which is changeable and default
to /opt/local"

> >   - db
>  >   Miscellaneous, automatically generated system-specific database
>  >   files. For example, ... what?
>  >   (Note that currently mysql data directory is created here. This is
>  >   not correct.)
>
>  No idea what is meant to reside here. Sure, mysqlX could also go into
>  var/mysqlX.

BSDs save system-specific data like locate.database here.
might be good place to put macports dir.


More information about the macports-dev mailing list