Recently some enthusiasts got together the idea of running OpenSim off a usb key. Even doing a video to show the process. Pathfinder did a great post on it, as did Ener Hax. Tateru Nino made a ready to go version of it available.
Pretty Cool, if you are a Windows person. You plug in a usb key, press a couple of buttons, and have a self contained virtual world on your machine that you can connect to with your fave viewer (SL, Phoenix, Imprudence, etc.)
I’d been waiting to see if someone would do the same thing for the Mac folks. Time Passed …
… Well … ok, fine, I’ll do it!
So I am undertaking the MacSimStick Project.
I must be out of my mind. There are a lot of moving parts :)
So What Is The Goal?
The goal is to insert a usb key into a mac, click on an icon, have a self contained virtual worlds environment come to life, use it, and to be able to walk away with any changes you make.
That nicely glosses over about a dozen things happening in the background.
Some assumptions and goals:
- be self contained, keeping off of the local disk as much as possible (log files, etc)
- dont make the user install anything
- wont assume what they have installed (such as Mono).
- dont interfere with web server or database already running on the machine (use different ports)
- provide the power to change things (MySQL and OpenSim consoles), but work without requiring their use
What Are The Puzzle Pieces To This?
A reason why I include Apache and PHP is because it opens up a lot of interactively options for scripts in a Sim to call into a local web server.
Where Am I With It?
I am working with a disk image on my iMac: /Volumes/MacSimStick
The first iteration of this will depend on that name. I compiled Apache, PHP, MySQL, and Mono to depend on paths within /Volumes/MacSimStick/usr/local
Apache, PHP, and MySQL work fine.
The Diva Distro of OpenSim is connecting to MySQL and writing to the database, but bombing out further in the process. I’m thinking that a good approach will be turn off a lot of things (why is it trying to call JScript?), get things working end to end, and then slowly turn some things back on.
If I am still stuck in a day or so, I will upload what I have to get some more eyes on the problems.
What’s Next? What Do I Need?
As far as configuration goes:
- corral all of the config files together by having a Config dir full of links to the actual files (PHP, Apache, MySQL, Mono, OpenSim)
- create a startup script which launches a terminal session (using the “screen” command). This will provide separate shells for MySQL and Opensim.
- create a shutdown script
I need beta testers. I dont want to make this widely available until I am confident that it works for a handful of folks (for one thing, it’s going to be a sizeable download). Contact me at my gmail.com address: javajoint, and I will point you at a download. I am pondering if I want to put this up at Amazon S3 or Dropbox … It’s going to be a few hundred meg.
I need some extra eyes checking out the configuration.
Donations! This is going to cost me in hosting, and I am between jobs. If you can help sponsor the work, cost of hosting, etc, I’d sure appreciate it. I’ll stick a PayPal button at the bottom of this post.
More on this soon. Thanks for the enthusiasm so far!