unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
From: prj@po.cwru.edu (Paul Jarc)
Cc: guile-devel <guile-devel@gnu.org>,
	Marius Vollmer <marius.vollmer@uni-dortmund.de>
Subject: Re: The load path
Date: Fri, 05 Nov 2004 14:22:30 -0500	[thread overview]
Message-ID: <m3hdo4xfqr.fsf@multivac.cwru.edu> (raw)
In-Reply-To: <87actw15s9.fsf@trouble.defaultvalue.org> (Rob Browning's message of "Fri, 05 Nov 2004 12:59:02 -0600")

Rob Browning <rlb@defaultvalue.org> wrote:
> Ahh, so you don't mean the case where the user installed their own
> copy of guile.

Right - the user just installs a newer version of a module.  (Like
installing a new Gnus, but still using the system Emacs.)

> Having both options might make sense, i.e. --disable-init-dir and
> "--init-dir DIR".

Sure.

>> Maybe best practice would be to put the initialization code in a
>> normal module called (foo init), and then the init file merely loads
>> that module.
>
> Hmm, but that won't allow the init file to set up the %load-path if
> needed, i.e.

Ah, right.

Hmm.  ISTM modules are already good enough for everything except
tweaking %load-path, since that has to be done before the modules can
be found.  But if that's the only problem that needs to be solved,
then there's a very simple solution: have a directory full of
subdirectories that all get added to %load-path.  For a module
installed somewhere else, you can just drop a symlink in the central
directory, pointing to the module's directory.

So first augment %load-path unconditionally; then load the site init
code (optional, default yes); then load the user init code (optional,
default yes).

> It also still doesn't leave any way for the local admin to specify
> configurations that are guaranteed to run at a particular time without
> modifying all the other init files.

Let Guile load a site init file by default.  Distros will create that
file, and they can have it load a local-admin init file at the
appropriate spot (maybe even one at the beginning and one at the end).
People installing from source will create the site init file
themselves, since there's no distro sitting between them and Guile.

> This approach would allow dependencies without conflating
> initialization and the normal module namespace,

What sort of init code needs to be handled, other than %load-path
tweaking?

> and it seems like it would allow the local admin a reasonable level
> of control.

Yes, I'd say your approach is flexibile enough.


paul


_______________________________________________
Guile-devel mailing list
Guile-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/guile-devel


  reply	other threads:[~2004-11-05 19:22 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-10-16 17:52 The load path Andy Wingo
2004-10-17 19:40 ` Rob Browning
2004-10-17 23:13 ` Greg Troxel
2004-11-05 15:05 ` Marius Vollmer
2004-11-05 15:25   ` Paul Jarc
2004-11-05 16:43     ` Rob Browning
2004-11-05 17:43       ` Paul Jarc
2004-11-05 18:59         ` Rob Browning
2004-11-05 19:22           ` Paul Jarc [this message]
2004-11-05 22:05             ` Rob Browning
2004-11-06  7:25               ` Paul Jarc
2004-11-06 16:19                 ` Rob Browning
2004-11-06 22:58                   ` Rob Browning
2004-11-05 16:15   ` Rob Browning
2004-11-05 17:31   ` Andreas Rottmann
2004-11-05 18:57     ` Greg Troxel
2004-11-05 19:07     ` Rob Browning
2004-11-05 19:19   ` Greg Troxel
2004-11-05 23:53     ` Neil Jerram
2004-11-06  4:54       ` Rob Browning
2004-11-06 14:38         ` Andreas Vögele
2004-11-06 17:49         ` Neil Jerram
2004-11-06 21:21           ` Rob Browning
2004-11-07 18:46             ` Neil Jerram
2004-11-07 21:16               ` Rob Browning
2004-11-09 15:22               ` Paul Jarc
2004-11-10 18:43           ` Andy Wingo
2004-11-11 13:23             ` Greg Troxel
2004-11-12 21:31             ` Neil Jerram
2004-11-13  0:22               ` Greg Troxel
2004-11-13  1:08                 ` Rob Browning
2004-11-13 16:12                   ` Greg Troxel
2004-11-14 11:02                     ` Neil Jerram
2004-11-14 14:05                       ` Greg Troxel
2004-11-18 19:44                         ` Neil Jerram
2004-11-19 14:46                           ` Greg Troxel
2004-11-14 10:48                   ` Neil Jerram
2004-11-15 16:43                     ` Andy Wingo
2004-11-18 19:54                       ` Neil Jerram

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/guile/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=m3hdo4xfqr.fsf@multivac.cwru.edu \
    --to=prj@po.cwru.edu \
    --cc=guile-devel@gnu.org \
    --cc=marius.vollmer@uni-dortmund.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).