Rationale behind naming "dot d" (.d) directories
Jordan K. Hubbard
jkh at apple.com
Wed Apr 22 22:46:58 PDT 2009
On Apr 22, 2009, at 10:33 PM, Ryan Schmidt wrote:
> The reason I ask is for a change I'm working on for the php5
> extension ports. Currently, ports like php5-memcache just print a
> message telling the user to add these lines to their php.ini:
>
> extension_dir=/opt/local/lib/php/extensions/no-debug-non-zts-20060613
> extension=memcache.so
>
> But php can be configured to look for additional ini files in a
> certain directory. So I would like to modify the php5 port to do
> this, and then modify ports like php5-memcache to just install a
> file like e.g. memcache.ini which contains these lines. Then the
> extension will automatically be loaded and the user won't have to do
> it manually.
Sounds laudable, just as long as you also figure out how to undo this
when the php port is removed. Nothing worse than something which
installs itself with side-effects yet fails to remove those side-
effects when it's removed / upgraded away. :)
> Currently, the php.ini is in /opt/local/etc. This is a little out in
> the open and I would like to move it into a directory of its own,
> probably named for the port, so, say, /opt/local/etc/php5. This
> would also be a step toward allowing php4 and php5 (and a
> hypothetical future php6) to be installed simultaneously which is
> desirable.
Sounds entirely reasonable.
> Now I need a directory in which php5 extension ports will install
> their small additional .ini files. I don't think it should be the
> same /opt/local/etc/php5 directory because php is set up to first
> look for its one true php.ini and then load all the additional ini
> files in a directory; this might cause php.ini to be parsed twice,
> which is at best wasteful and at worst could cause problems.
How about having a "system" path of ${prefix}/etc/php5 and ${prefix}/
var/db/php5 for the additional bits?
>> Don't forget, /etc/rc used to be a single file...
>
> And indeed I wasn't looking: it *is* a single file, even on Leopard.
Sorry, brain-fart. I meant the /usr/local/etc/rc file - you're correct
that /etc/rc remains still too historical to be replaced, though it
certainly should be.
- Jordan
More information about the macports-dev
mailing list