Hosting on Self

Russell Allen mail at
Tue Feb 4 05:19:05 UTC 2014

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, and 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.

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:

External domain names can then be aliased to these names. Eg, is aliased to (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. 


Here is an example session:

> mio list
> mio copy basic test
> mio list
> mio wake test
> mio awake
> 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
"Self 36" ^C
> mio tell test save
> mio sleep test
> mio awake
> mio list
> mio delete test
> mio list

More information about the Self-interest mailing list