[Openmcl-devel] asdf location

Gary Byers gb at clozure.com
Wed Dec 5 22:55:38 PST 2007

By convention, application-specific data is often kept in a subdirectory
of a directory whose name (in English) is "/Library/Application Support/"
or "~/Library/Application Support".  (Apple seems to frown on the idea
of using these directories for "user data", and it seems like the
private/per-user ASDF directory should be somewhere in the user's
home directory.)

>From Cocoa, it's possible to use the function 
NSSearchPathForDirectorisInDomains to get the localized names of these
directories.  I don't know of a way of doing this reliably from the
BSD/POSIX world, and I'm not sure if it's wise to assume that the
user is running an English-localized version of OSX, so using hardwired
pathnames like /Library or ~/Library may not be a good idea..

It's obviously better to use a single location (or set of private/global
locations) for things like this. If the convention is to keep per-user
stuff in the user's home directory, then it's just a question of
figuring out where that should be.and what name it should have.

I -think- that "shared user data" (data shared by all users on a system)
is supposed to go in (what's called in English) /Users/Shared, but I'm
not sure if that pathname is localized (or how to find the localized

Before I get everyone (more) confused with this rambling, let me go
back to the first part of my question: would  there be an advantage
to having the lisp set up ASDF's central repository so that it
included one or more directories by default, or is it better to
leave this sort of customization to the user's init file ?

On Thu, 6 Dec 2007, Andrew Shalit wrote:

> Interesting.  I agree that there should be one or more standard places for 
> these things, but I wouldn't have thought to put them in /Library or 
> ~/Library.  I think of those directories as places for software and settings 
> that are automatically installed, not for things that I'm actively mucking 
> with.
> I'd prefer to have ASDF systems in a directory that has the same parent 
> directory as CCL.  So you would have "FOO/CCL/" and "FOO/ASDF Systems/"
> On Dec 6, 2007, at 12:04 AM, Cyrus Harmon wrote:
>> It would seem to me that looking in "/Library/CCL/ASDF Systems/" and
>> "~/Library/CCL/ASDF Systems/" for ASDF's central registry would be the
>> "mac-y" way to do things.
>> Cyrus
>> On Dec 5, 2007, at 6:05 PM, Gary Byers wrote:
>>> No, there isn't.
>>> At the very least, the "standard" way - requiring ASDF and setting its
>>> central registry to whatever you want in ~/ccl-init.lisp (nee
>>> ~/openmcl-init.lisp) doesn't work, because the IDE doesn't load the
>>> standard init file.  (It should.  See 
>>> <http://trac.clozure.com/openmcl/ticket/208
>>>> .)
>>> While we're on the subject: should CCL/OpenMCL initialize ASDF's
>>> central registry in some standard way ?  If so, what would people
>>> who use ASDF prefer ?
>>> On Wed, 5 Dec 2007, Cyrus Harmon wrote:
>>>> Obviously there are a million ways to do this, but is there an
>>>> idiomatic, preferred way place for .asd files and getting that place
>>>> into asdf:*central-registry* with the new CCL IDE?
>>>> thanks,
>>>> Cyrus
>>>> _______________________________________________
>>>> Openmcl-devel mailing list
>>>> Openmcl-devel at clozure.com
>>>> http://clozure.com/mailman/listinfo/openmcl-devel
>> _______________________________________________
>> Openmcl-devel mailing list
>> Openmcl-devel at clozure.com
>> http://clozure.com/mailman/listinfo/openmcl-devel

More information about the Openmcl-devel mailing list