[CM] question on audio distributions, CCRMA or Agnula, others?
rm@fabula.de
rm@fabula.de
Wed, 2 Mar 2005 21:46:06 +0100
On Wed, Mar 02, 2005 at 11:01:32AM -0800, Fernando Lopez-Lezcano wrote:
>
>
> That is true for a user that installs in his/her/its home directory (or
> somewhere else where he has write access) and has complete control of
> the software.
>
> It is not possible to do that on a packaged version of cm/clm/cmn (at
> least the way I package it), the user of the software is typically not
> the installer (root) and will not have write access to the packaged
> binaries.
>
> Planet CCRMA has had Common Lisp based packages for cm/clm/cmn since
> 2001. The packaging approach I have used lately is to load the prebuilt
> systems at runtime on top of a clean lisp image (this is for cm 2.4.x,
> clm2/clm3 and cmn). Maybe this could be used as "inspiration" for other
> packagers. The current package structure is like this (this is after
> several iterations over the years on how to package the stuff):
Hmm, the way ASDF is set up on Debian each user has her own spool area
for compiled fasls. So the source is installed in a central palce
(/usr/share/common-lisp/sources/...) but the compiled fasls go into
userspecific cache directories:
/var/cache/common-lisp-controller/$USER/$IMPLEMENTATION/$PACKAGE
Once there used to be a fasl-cache for the whole system (and the
common lisp controller was required to keep that cache up to date but
it turned out that that approach was more of a security headache then
a performance improvement).
A "hypothetical" cm.deb would put all source files (including the
ASDF package description) into /usr/share/common-lisp/sources/cm/
and then create a link from the asdf file into //usr/share/common-lisp/systems.
After that a simple (asdf:oos 'asdf:load-op :cm) would load Common Music
(allways with the most up-to-date fasls - even after an update of the
Lisp implementation).
> clm -> source code only, common to all lisps
> clm-cmucl -> requires "clm" and "cmucl", packages all cmucl binaries
> clm-sbcl -> requires "clm" and "sbcl", packages all sbcl binaries
> clm-xxx for other supported versions of lisp
Distributing binary lisp files is a nightmare - at least for the
Open Source Lisps i know ....
Cheers RalfD