[self-interest] Hosting Selflanguage.org on Self

David Ungar ungar at me.com
Thu Feb 6 08:02:59 UTC 2014


Yes, amazingly cool! A website hosted in Self!!


On Feb 5, 2014, at 3:05 AM, Tobias Pape <Das.Linux at gmx.de> wrote:

> Hey Russell,
> 
> On 04.02.2014, at 06:19, Russell Allen <mail at russell-allen.com> wrote:
> 
>> Hi guys,
>> 
>> I promised that I'd write up how the Self websites are being hosted.
>> 
>> We rely on Wordpress for our blog, and Nabble for our mailing list archive. Downloads are served up from a Amazon EC2 bucket and our source files for the default World and the VM are on GitHub.
>> 
>> However www.selflanguage.org, handbook.selflanguage.org and bibliography.selflanguage.org are all hosted ourselves. They are on a Fedora 19 VM at DigitalOcean. Each site is a Self world running a Self webserver, behind nginx. Each Self world is running in a SELinux sandbox which allows it (hopefully!) only enough permissions to run and be a server on a TCP port.
> 
> 
> Thats darn cool!
> 
> 
>> 
>> Tieing all of this together is a first pass at Self-focused management software. Users can upload, run and connect to running Self worlds (command line only so far). Each world is given a port, if it runs a webserver on that port then it will be live at:
>> 
>> snapshotname.username.messaging.io
>> 
>> External domain names can then be aliased to these names. Eg, selflanguage.org is aliased to www.self.messaging.io (ie a snapshot called 'www' run by the 'self' user)
>> 
>> So in essence it is a very small Self cloud.
>> 
>> The management software at the moment is a few small python and bash scripts with < 1000 lines all up, and it doesn't scale beyond a single Linux VM.
>> 
>> You talk to it through a small python script called 'mio' which connects via XML-RPC over https. I've put a sample session below.
>> 
>> I plan on making a couple more fixes/enhancements then maybe opening it up to people on this mailing list to play with if anyone's interested. 
>> 
>> Russell
>> 
>> Here is an example session:
>> 
>>> mio list
>> basic
>>> mio copy basic test
>>> mio list
>> basic
>> test
>>> mio wake test
>>> mio awake
>> test
>>> mio connect test
>> Connecting... (^c to disconnect)
>> for I386: LogVMMessages = true
>> for I386: PrintScriptName = true
>> for I386: Inline = true
>> for I386: SICDeferUncommonBranches = false (not implemented)
>> for I386: SICReplaceOnStack = false (not implemented)
>> for I386: SaveOutgoingArgumentsOfPatchedFrames = true
>> 
>> Welcome to the Self system! (Version 4.4)
>> 
>> Copyright 1992-2011 AUTHORS.
>> See the legal/LICENSE file for license information and legal/AUTHORS for authors.
>> 
>> Type _Credits for full credits.
>> 
>> VM version: 4.1.13
>> 
>> "Self 35" 3 + 4
>> 7
>> "Self 36" ^C
>> Disconnected
>>> mio tell test save
>>> mio sleep test
>>> mio awake
>>> mio list
>> basic
>> test
>>> mio delete test
>>> mio list
>> basic
>> 
>> 
>> 
> 
> 




More information about the Self-interest mailing list