[General] Running Lively from a Subdirectory: How To

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

[General] Running Lively from a Subdirectory: How To

Philip Weaver
The following is description of one way to be able to run your Lively worlds
while the kernel resides inside a subdirectory. The benefit is that all of
your world documents can exist@the top level of your root directory and
are easier to locate and manage.  This also makes updating from svn much
simpler. You can also keep your localconfig in the root directory while the
defaultconfig resides in the Lively subdirectory.

*Concerns*

These instructions may become obsolete once
"lively.lang.Namespace.defaultBase" begins to reflect a Config setting.
"lively.lang.Namespace.defaultBase" is not available when the Config files
are loaded.

For portability, these instructions use a relative path for Config.codeBase
(below). Haven't delved into the ramifications but it works fine in my
worlds. example.xhtml has a few problems perhaps because some paths are in
subdirectories. "lively.lang.Namespace.defaultBase" is not to easy to modify
because it does not yet exist when the Config files are loaded.  Overall,
something in the kernel or in Namespace.uri() needs to change in the
repository so that the BaseExtension.js patch (below) would not be
necessary. The patch is placed in "your-lib/BaseExtension.js" to make future
updates from svn easier.

Please post to the list if you find improvements to this solution for
tidying the Lively installation. (a weekday is fine :-) ) Please post to the
list if discover and resolve the problems with loading example.xhtml

*Instructions*
*
*
*Make a backup of your Lively directory before continuing.*

Create a new directory named "lively" inside the root kernel directory. Move
the contents of the root kernel directory into "lively".

In each of your world documents, replace:

   - xlink:href="

with:

   - xlink:href="lively/

Next, in each of your world documents, also replace:

   - <script type="text/ecmascript" xlink:href="lively/Base.js"/>

with:

   - <script type="text/ecmascript" xlink:href="lively/Base.js"/>
   <script type="text/ecmascript" xlink:href="your-libs/BaseExtension.js"/>

*your-libs/BaseExtension.js*

Config.codeBase = '/lively/';
lively.lang.Namespace.prototype.uri =
lively.lang.Namespace.prototype.uri.wrap(function(proceed) {
lively.lang.Namespace.defaultBase = Config.codeBase;
var result = proceed();
 return result;
});

Phil
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://livelykernel.sunlabs.com/pipermail/general/attachments/20090418/7f1bf836/attachment.html 


Reply | Threaded
Open this post in threaded view
|

[General] Running Lively from a Subdirectory: How To

Robert Krahn
Config.codeBase is now defined and used consistently. In order to run  
LK from a subdirectory you just have to set this property.

Robert


On Apr 19, 2009,@1:34 AM, Philip Weaver wrote:

> The following is description of one way to be able to run your  
> Lively worlds while the kernel resides inside a subdirectory. The  
> benefit is that all of your world documents can exist@the top  
> level of your root directory and are easier to locate and manage.  
> This also makes updating from svn much simpler. You can also keep  
> your localconfig in the root directory while the defaultconfig  
> resides in the Lively subdirectory.
>
> Concerns
>
> These instructions may become obsolete once  
> "lively.lang.Namespace.defaultBase" begins to reflect a Config  
> setting. "lively.lang.Namespace.defaultBase" is not available when  
> the Config files are loaded.
>
> For portability, these instructions use a relative path for  
> Config.codeBase (below). Haven't delved into the ramifications but  
> it works fine in my worlds. example.xhtml has a few problems perhaps  
> because some paths are in subdirectories.  
> "lively.lang.Namespace.defaultBase" is not to easy to modify because  
> it does not yet exist when the Config files are loaded.  Overall,  
> something in the kernel or in Namespace.uri() needs to change in the  
> repository so that the BaseExtension.js patch (below) would not be  
> necessary. The patch is placed in "your-lib/BaseExtension.js" to  
> make future updates from svn easier.
>
> Please post to the list if you find improvements to this solution  
> for tidying the Lively installation. (a weekday is fine :-) ) Please  
> post to the list if discover and resolve the problems with loading  
> example.xhtml
>
> Instructions
>
> Make a backup of your Lively directory before continuing.
>
> Create a new directory named "lively" inside the root kernel  
> directory. Move the contents of the root kernel directory into  
> "lively".
>
> In each of your world documents, replace:
> xlink:href="
> with:
> xlink:href="lively/
> Next, in each of your world documents, also replace:
> <script type="text/ecmascript" xlink:href="lively/Base.js"/>
> with:
> <script type="text/ecmascript" xlink:href="lively/Base.js"/>
> <script type="text/ecmascript" xlink:href="your-libs/
> BaseExtension.js"/>
> your-libs/BaseExtension.js
>
> Config.codeBase = '/lively/';
> lively.lang.Namespace.prototype.uri =  
> lively.lang.Namespace.prototype.uri.wrap(function(proceed) {
> lively.lang.Namespace.defaultBase = Config.codeBase;
> var result = proceed();
>
> return result;
> });
>
> Phil
> _______________________________________________
> General mailing list
> [hidden email]
> http://livelykernel.sunlabs.com/mailman/listinfo/general

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://livelykernel.sunlabs.com/pipermail/general/attachments/20090420/fa4251c2/attachment.html 


Reply | Threaded
Open this post in threaded view
|

[General] Running Lively from a Subdirectory: How To

Philip Weaver
Woot!

On Sun, Apr 19, 2009@5:34 PM, Robert Krahn <
[hidden email]> wrote:

> Config.codeBase is now defined and used consistently. In order to run LK
> from a subdirectory you just have to set this property.
> Robert
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://livelykernel.sunlabs.com/pipermail/general/attachments/20090419/41159c4a/attachment.html