Installing Diva Distro on Mac OS X 10.5 (OpenSimulator)

Installing Diva Distro on Mac OS X 10.5 (OpenSimulator)

Today I went about downloading and installing the Diva Distro on my Mac. I had been using an earlier OpenSimulator build in standalone, and then into the OSgrid build of OpenSimulator (with a few caveats), but was largely dissapointed with some aspects of the 0.7 build and some current issues OSgrid is having with it. Of course, other grids that are going to the later 0.7 build are running into the same problems, but that’s misnomer for the topic of this blog post …

I wanted to have a stable standalone which was grid-accessible, and one way to do that would be to enable hypergrid — after some research I found that the diva distribution includes this as well some other useful bits, and runs on Mac OS X using MySQL as the database (since Mono still has some database library problems with the new .NET routines, and hence breaks SQLlite which OpenSimulator uses by default… one workaround is to use a different database provider, and MySQL is one of those free databases I could use on Mac, so here I am…

Back to the install…

Off the top of my head, I am not so experienced with using MySQL on the Mac with OpenSimulator, so this will be a new experience for me, and I will just blog away my experience as the installation goes..

STEP 1 – DOWNLOAD

First, I had to download a few things. I already had Mono installed but not MySQL, and I already had OpenSim 0.6.5 installed, but we would be going to a newer build for the Diva Distribution (most likely… a 0.7x build I would guess)

So, first thing I did was download MySQL. Since I am on a MacBook Pro with a Intel Duo Core CPU, and I am running 10.5.x of the OS, I got mysql-5.5.8-osx10.5-x86_64 (the 64 means its a 64bit version, just like my Mac is).

Next, I downloaded the Diva distro package from github, currently this is in the D2 directory, even though it wasn’t updated since Sept 2010 I am told this is the latest build? Ok, so off I went and got the “diva-r13981.zip” file as well she had a nice IAR so I grabbed that while I was there. Stuff like wifi (which isnt about wireless internet) is included in Diva Distro so I am looking forward to that.

I unpacked the MySQL tarball to a directory and stuck it in /usr/local/mysql but didn’t touch the Diva ZIP file yet, so I guess at this point I am ready to install (I had to give permissions to the directory since it seems by default Mac OS X doesn’t have write access there from that level of the GUI)

STEP 2 – INSTALL (this wasn’t quite right, scroll down for more..)

Following the MySQL install-binary document I opened up a terminal window and typed in my commands…

shell> groupadd mysql
shell> useradd -r -g mysql mysql

OOPS, of course, this doesn’t work in Mac OSX so I will use the System preferences pane to do this.. no wait, it says the user is already there with that name so can’t create a group. Perhaps the OS X preferences aren’t really telling me everything that is there?

shell> cd /usr/local
shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz
shell> ln -s full-path-to-mysql-VERSION-OS mysql
shell> cd mysql

OOPS, well I already did this when I unpacked it from the GUI… looking at the next series of commands… Hmm… yeah, I got a better idea, instead of mucking with the command line let me just find some pre-configured installer and run that … (searches … finds something)

Look at this!
(mysql-5.5.8-osx10.5-x86_64.dmg)

STEP 1 AGAIN

Yeah, that’s more of what I am looking for! (deletes other archive and directory.. downloads the DMG, mounts and opens it..)

STEP 2 AGAIN (still not correct, we’ll find out why in a sec)

First I ran the MySQL 5.5.8 community installer package, typed my password and away it went. Success.

Should I install the startup Item? Hmm… SQL pref pane? Hmm… Well I am just doing this instal as a test, not sure if I really need to start it up each time the computer boots up, but it’s easy enough to change later. I guess I will go ahead and do both for now.

Runs the MySQLstartitem.pkg … typed password, clicked blah blah blah, done.

Double-clicks the mySQL pref pane thingy .. oh, it doesnt work on a intel based mac, great :P right clicks it on the system prefs, removes it.

opens up that readme.txt file lol…

ok it says to run this command:

sudo /Library/StartupItems/MySQLCOM/MySQLCOM start

It says “Starting MySQL database server” — all looks hunky-dory so far. (but it wasn’t… scroll down for more..)

I already have the directory aliased per the DMG installer and don’t think I will need the extra command line aliases so skipping that. Now onto the diva distro part! Yay!?

STEP 3 – Installing OPEN SIM!

First, I unpacked the zip file to a folder.
moved this unpacked folder to near my opensim install…
/opt/diva-r13981/

Next I read the text files..
IMPORTANT.txt (doesnt apply to me)
INSTALL.txt (sorta applies.)
MONO.txt – I’m good with Mono 2.4.2.3, yay!
MYSQL.txt – some important config stuff here

OOPS! gets an error..
ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)

Hmm what’s that mean? permissions? thing not running? ok, started it again.. Nope that doesn’t help.. hmm..  sql doesnt have rights to the directory, I guess… scratches head…

well this brings my install to a screeching halt, doesn’t it?
maybe a reboot is in order eh? (reboots..)

Well, right at reboot I get a message that “An item in the Startup Items folder (“/Library/StartupItems/MySQLCOM”) does not have the proper security settings.” — AHAH! do I decide later, disable, or fix it? decide later..

Googled the net, I found problems with MySQL 5.5 with suggestion to go down to 5.1 to fix which works fine.. so thus DOWNLOAD and INSTALL from 5.1 DMG image again!!

STEP 1 (third time is a charm!)

download and install mysql-5.1.54-osx10.5-x86_64.dmg here we go..

STEP 2

installed, installed startup items… and..
$ sudo /Library/StartupItems/MySQLCOM/MySQLCOM start
Password:
Starting MySQL database server
$ /usr/local/mysql/bin/mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.1.54 MySQL Community Server (GPL)

RUNNING! YAY!

I put those aliases in too..
$ alias mysql=/usr/local/mysql/bin/mysql
$ alias mysqladmin=/usr/local/mysql/bin/mysqladmin

Back to OpenSim stuff from Diva notes..

STEP 3

Now for some post install configuration (this is step 1 of the INSTALL.txt doc for the diva distro, now going through the doc/MYSQL.txt)

mysql> create database opensim;
ERROR 1044 (42000): Access denied for user ”@’localhost’ to database ‘opensim’

HMMMM…. Seen that before! I’m not logged in as root or under sudo, so fixing..

$sudo ./mysql

(running..)

mysql> create database opensim;

Query OK, 1 row affected (0.01 sec)

mysql> create user opensim identified by ‘PASSWORD';

Query OK, 0 rows affected (0.00 sec)

mysql> create user ‘opensim’@’localhost’ identified by
-> ‘PASSWORD';
Query OK, 0 rows affected (0.00 sec)

mysql> grant all on opensim.* to opensim;
Query OK, 0 rows affected (0.00 sec)

mysql> grant all on opensim.* to ‘opensim’@’localhost';
Query OK, 0 rows affected (0.00 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

So far so good!

STEP 4 (diva’s install.txt step 2)

Now I just need to setup DNS for the sim. I had my DynDNS service setup for the sims I have running on OSgrid, but I’ll need to setup another one for this installation..

haha, I got hypergrid.dyndns.org to go with the starlord.dyndns.org ;)

Anyway, I already have my 2wire DSL router configured for use with Open Simulator and New World Grid, so that is good to go. Checked the configuration to make sure the ports were properly assigned to this computer, and they are.. so continuing..

STEP 5: Moving on to step 3 on the install.txt note.. looking at WIFI.txt

Hmm, I need a gmail account for sending email notifications? Ah, I see why, because it uses google’s secure smtp to send emails. Ok, I will use my SL bot account to do that, since bots love to do tasks like that. Hehe..

Gosh, I am almost done?! That was EASY so far! Now on to step 4 of the install.txt doc, going to run Configure.exe .. I guess it’s safe to minimize that MySQL prompt that’s been there since the earlier step ;)

Ran it, entered stuff it asked.. and it finished saying:

Your world is Islandia
Your loginuri is http://hypergrid.dyndns.org:9000
Your Wifi app is http://hypergrid.dyndns.org:9000/wifi

And it also said to go and modify ‘bin/config-include/MyWorld.ini’
but I’m happy so far and won’t mess with it ;)

STEP 6: UP AND RUNNING!

Next up.. running OpenSim.exe, this is the moment we’ve all been waiting for! I’m already in the bin directory with a prompt in the Terminal (console) window, so here goes…. holds breath and cringes a bit while typing this command… crossing fingers…

$ mono OpenSim.exe

It started up, entered in my region estate info [no, StarLord Estates] and gave it my first and last name for owner ;) … looks like it created four regions Islandia 1 2 3 4, and now I am staring at a nice Region (root) # prompt, yay! It’s running!

Ok, I will need to create the master avatar account (that’s me!) and 3 accounts for the default avatars…

Oh… DUH it already created the master account login in that configure.exe step.. Hmm, what about those default avatars? I will need to make those, one for male, one for female, and one for neutral as they say ;)

I’ll load up Imprudence and poke around this little sim hehe…

OOPS!! ugh, it grabbed the FQDN configuration but it didn’t connect properly because of my NAT loopback perhaps, I will need to mod my hosts file or some such workaround…

So I poked in 127.0.0.1 instead of the domain and I am looking at my little default splash page. Woot! Wonder if anyone else can reach me though? Hmm, shrug.. Well here I go into my little world now… (plugs in login details to Imprudence and hits ‘Log In’ button…)

Took awhile for initializing multimedia stuff (though the console output says ‘All clear. Sending login response to client.’ then sits waiting for region handshake.. OOPS! Hmm.. having trouble connecting the viewer says..

Maybe I will take a look at that configuration file after all… Nothing needed to change here …

STEP 7 : Default avatar accounts (on the W.I.F.I. webapp)

I went ahead and created the Male Avatar, Female Avatar, and Neutral Avatar accounts (for default appearances),

STEP 8: FIXING NAT LOOPBACK

Yes, I had to edit my hosts file…

assigned 127.0.0.1 to hypergrid.dyndns.org

STEP 9: LOGIN TO YOUR WORLD!

Trying Imprudence again…
YAY! I’m in and Ruthed… LOL but I’m in… woot :)

Now I just wonder if anyone else out there can reach the thing heh..

This was a very random seat-of-your-pants install blog, if you need help or have comments, questions, feel free to contact me via this website and I will do what I can to assist or help you test and troubleshoot (even though I am not Diva nor do I have any official status with Imprudence or OpenSimulator projects) … I am primarily a Mac user but the install is fairly the same regardless of the platform ;)