[Openmcl-devel] RFC - init-file and asdf:*central-registry* changes

bryan o'connor bryan-openmcl at lunch.org
Wed Feb 16 18:17:16 PST 2005

there are two related patches in the queue for which i'd like some
feedback.  i've sent previous versions to the list over the last
year, so these should be familiar.

the first part involves changing the default application-init-file
from just HOME:openmcl-init.lisp to the following list:
   HOME:openmcl-init.lisp    ; current
   HOME:.openmcl;init.lisp   ; unix-like
   CCL:openmcl-init.lisp     ; system-wide default

to ensure backwards-compatibility, startup-ccl accepts either an atom
or list for the init-file arg.  if a list, it'll load *only* the first
one that exists.  if the file exists but has errors, it won't try any

this list is dumped as part of the initial image and can't be changed
at run-time.  you can always disable it and use "-n -l my-init-file"

personally, i prefer having the init file in a separate directory
(HOME:.openmcl) so i can potentially break it out into multiple files.
this is similar to the way xemacs stores its init files in .xemacs/
instead of one giant file like gnu emacs.

the second part, adds a default asdf:*central-registry*.  i propose
the following (a direct mapping from sbcl's default):
   CCL:tools;systems;		; packages distributed with openmcl
   CCL:tools;site-systems;	; site-wide locally-installed packages
   HOME:.openmcl;systems		; per-user locally-installed packages

we'd then ship with a symlink to asdf-install.asd in systems so
(require :asdf-install) would "just work".  future bundled projects
like the cocoa listener, editor, ide, etc. could ship with a similar

the asdf:*central-registry* can be modified at any time including in
your init-file.  this just adds a reasonable(?) default.

what do you think?


More information about the Openmcl-devel mailing list