Anthony Carrico <acarrico@memebeam.org> writes:
> On Thu, Dec 04, 2003 at 11:09:25PM +0100, Michel Schinz wrote:
>> And we wouldn't know what value to give to SCSH_LIB_DIRS, unless we
>> want to include one path per installed package, but we don't want that.
>> Of course, we could use GNU Stow (or something similar) to solve the
>> problem, but I hope we agree that's not a good idea. So the
>> installation procedure should be aware of the fact that it's installing
>> in a stow directory, and create appropriate symbolic links, to get
>> something like:
>
> I don't have any experience with this style administration, but
> wouldn't anyone using that kind of a policy already have their own
> local means of dealing with those symbolic links (stow itself, Michael
> Sperber's "two scsh scripts", or whatever)?
Yes, for sure. It's just that these techniques are pretty heavyweight,
since they imply an additional step in the installation procedure, and
they "load" the file system with many links, most of which are
unnecessary. In the case of scsh packages, the only links which are
really necessary are the ones which enable scsh to find its Scheme
code.
That's my main motivation for having two layouts. I'd like to have
something which looks good and is easy to use for both kinds of
installation.
[...]
> This reminds me: in order to locate resources, we still need to
> provide a method for packages to find their root (in the single
> layout option) or both their root and their layout (in the custom
> layouts option).
That's already there: the installation library provides two functions,
called "package-installation-dir" and
"package-installation-staging-dir" which return the "final" root and
the "temporary" one which is used during staged installations,
respectively. I use them in my installation script for sunet, for
example, to create the file "load.scm", which contains an absolute
reference to the "packages.scm" file.
Unfortunately, I realise I didn't document these functions right now,
sorry...
These functions would be subsumed by the "get-directory-name" function
I presented in the previous mail.
Michel.
|