RFC: Changing apache2 to install its files to /opt/local/ instead of /opt/local/apache2

js ebgssth at gmail.com
Sun Mar 2 05:01:14 PST 2008


> Before anyone does anything, I'd like to know why you want this
>  change.

Consistency, period.
When I upgraded from apache1 to apache2, it surprized me that
there is no conf dir in /opt/local/etc and apachectl is in
/opt/local/apache2/bin/.

> Let's figure out the pros and cons.
>
>  A con would be that all ports that depend on apache2 would have to be
>  checked. They may have hard-coded the location where apache2 puts its
>  files now.
>
>  Also, all existing users of apache2 would have to move their
>  httpd.conf files to the new location, and maybe update paths in it.
>  Anyone who just runs "sudo port upgrade apache2" will find their web
>  server suddenly broken.

Agreed, but an easy migration script that handling this job would be ease
the impact.

>  Note that the apache port has a variant "apache_layout" which puts
>  files in a different place than usual. I think this is problematic
>  because some ports that depend on apache assume that the apache port
>  is installed either with or without this variant, and don't work in
>  the other case. There should be no such variant; the port should just
>  install files in a single place.

I think options are good. I remember once you disagreed this idea,
but this is not a point of discussion. Let's skip this.

>  The apache, apache2 and apache20 ports should be kept in sync if
>  possible.
>
>  The apache port should be able to coexist with either the apache2 or
>  the apache20 port. Currently, they cannot coexist:
>
>  $ sudo port activate apache
>  Password:
>  --->  Activating apache
>  Error: port activate failed: Image error: /opt/local/share/man/man1/
>  dbmmanage.1.gz is being used by the active apache2 port.  Please
>  deactivate this port first, or use the -f flag to force the activation.
>  $

suffix would fix this issue.


More information about the macports-dev mailing list