Tag Archives: opensim

Mono 1.9 install script

Unfortunately no one has made ubuntu packages yet, however here is a script that I built based on Dirk’s post to automate mono 1.9 installation onto Ubuntu environments.

#!/bin/sh

# This is needed to pick up our built mono for commands
export PATH=/usr/local/bin:$PATH 

apt-get install build-essential bison gawk
apt-get install libglib2.0-dev
apt-get install libpng12-dev libx11-dev libfontconfig1-dev
apt-get install libfreetype6-dev libjpeg62-dev libtiff4-dev
apt-get install libungif4-dev libexif-dev libcairo2-dev
apt-get install libpango1.0-dev libgtk2.0-dev libglade2-dev
apt-get install libgnome2-dev libgnomecanvas2-dev libgnomeui-dev
apt-get install libgnomeprint2.2-dev libgnomeprintui2.2-dev
apt-get install libpanel-applet2-dev libgtksourceview-dev
apt-get install libgtkhtml3.14-dev

BUILDDIR=~/mono-build
mkdir -p $BUILDDIR
cd $BUILDDIR

wget http://go-mono.com/sources/libgdiplus/libgdiplus-1.9.tar.bz2
tar xvf libgdiplus-1.9.tar.bz2
cd libgdiplus-1.9
./configure --prefix=/usr/local
make
make install
cd ..

wget http://go-mono.com/sources/mono/mono-1.9.1.tar.bz2
tar xvf mono-1.9.1.tar.bz2
cd mono-1.9.1
./configure --prefix=/usr/local
make
make install
cd ..

wget http://switch.dl.sourceforge.net/sourceforge/nant/nant-0.86-beta1-src.tar.gz
tar xvf nant-0.86-beta1-src.tar.gz
cd nant-0.86-beta1
make install --prefix=/usr/local
cd ..

wget http://go-mono.com/sources/gtk-sharp210/gtk-sharp-2.10.4.tar.bz2
tar xvf gtk-sharp-2.10.4.tar.bz2
cd gtk-sharp-2.10.4
./configure --prefix=/usr/local
make
make install
cd ..

wget http://go-mono.com/sources/gnome-sharp2/gnome-sharp-2.16.1.tar.gz
tar xvf gnome-sharp-2.16.1.tar.gz
cd gnome-sharp-2.16.1
./configure --prefix=/usr/local
make
make install
cd ..

wget http://go-mono.com/sources/gtksourceview-sharp2/gtksourceview-sharp-2.0-0.12.tar.bz2
tar xvf gtksourceview-sharp-2.0-0.12.tar.bz2
cd gtksourceview-sharp-2.0-0.12
./configure --prefix=/usr/local
make
make install
cd ..

cd mono-1.9
wget  http://go-mono.com/sources/monodoc/monodoc-1.9.zip
unzip monodoc-1.9.zip
cd monodoc-1.9
./configure --prefix=/usr/local
make
make install
cd ../..

wget http://go-mono.com/sources/mono-tools/mono-tools-1.9.tar.bz2
tar xvf mono-tools-1.9.tar.bz2
cd mono-tools-1.9
./configure --prefix=/usr/local
make
make install
cd ..

wget http://ftp.novell.com/pub/mono/sources/mono-debugger/mono-debugger-0.60.tar.bz2
tar xvf mono-debugger-0.60.tar.bz2
cd mono-debugger-0.60
./configure --prefix=/usr/local
make
make install
cd ..

wget http://ftp.novell.com/pub/mono/sources/heap-buddy/heap-buddy-0.2.tar.gz
tar xvf heap-buddy-0.2.tar.gz
cd heap-buddy-0.2
./configure --prefix=/usr/local
make
make install
cd ..

wget http://ftp.novell.com/pub/mono/sources/mono-addins/mono-addins-0.3.1.tar.bz2
tar xvf mono-addins-0.3.1.tar.bz2
cd mono-addins-0.3.1
./configure --prefix=/usr/local
make
make install
cd ..

wget http://ftp.novell.com/pub/mono/sources/monodevelop/monodevelop-1.0.tar.bz2
tar xvf monodevelop-1.0.tar.bz2
cd monodevelop-1.0
./configure --prefix=/usr/local
make
make install
cd ..

Further Thoughts on Open Virtual Worlds

I was just lucky enough to be a participant in the Open Source, IP and Privacy in Virtual Worlds Life 2.0 panel in Secondlife. I would have to say being on the floor with such incredibly big names as Zero Linden, Eben Moglen, and Zha Ewry was rather humbling, even if I know Zha pretty well in real life. All of them have incredible thoughts on the space, and I personally learned quite a bit through the panel. An additional thought occurred to me after the panel, which isn’t all that fleshed out, but worth at least jotting down (I’m sure I’ll have a few more of these random thoughts over the next few days).

Freedom to Leave in Virtual Worlds

Eben talked very eloquently on the two powers provided by participants in an environment: Voice and Exit. While we explored both of them on the panel, something occurred to me is that Exit is really not all that possible today in any Virtual World sense. You can decide not to participate, but you don’t really have the freedom to leave.

“freedom to leave”, an open-standards based assurance that users can move their data easily between interoperable platforms and services.

Today, if you decide to leave any virtual world platform (even OpenSim), you pretty much have to leave you data behind. I think that one of the features people will be looking for in the virtual worlds of tomorrow is the same freedom to leave that they get from any standard web or mail infrastructure provider today. Part of what has made Google successful in the application hosting space is by ensuring it’s easy to leave the platform.

One of the biggest reasons I left LiveJournal was that it was hard to leave, and the longer I built up content in that environment, the harder it was going to be for me to get it out.

Planet OpenSim Gets a Facelift

Some hacking last night got the bulk of the Planet OpenSim site pulling style elements directly from the OpenSim wiki, which makes for a much more unified them experience. 

We’re now tracking 10 blogs on Planet OpenSim, with lots of very good information on OpenSim development and usage being written up by members of the community.  If you’ve got an OpenSim relevant blog and would like to be included on the list, please just drop a comment on this post to tell me about it.

Hacking on OpenSim Infrastructure: Mantis Improvements For The Win!

Among other roles in the OpenSim project, I’m reluctant admin for most of the opensimulator.org infrastructure. Infrastructure being defined as: scm repo (subversion and mercurial), bug tracker (mantis), and wiki (media wiki).

Recently I decided to do some hacking on our mantis tracker to make it work better for the project. There was a very real reason to do this, our mantis has over 350 open and unassigned issues, and was starting to get massively ignored by most developers as it was far too overwhelming to route out real issues in mantis vs. stale issues vs. user errors in such a large sea.

The first change in this area was creating an osmantis bot. This is an IRC bot that spits out a message in our #opensim-dev channel on every mantis change. This brings the same level of visibility to our bugs as to our svn commits (which get the same treatment). This involved a rather brutal amount of hackering in mantis, and a perl IRC bot that runs on opensimulator.org. If you’ve been on IRC at all in the last couple of weeks you’ve seen it.

This morning I introduced 3 new states related to patches (patch included, patch feedback, patch ready). The agreed policy of OpenSim is that patches come in via mantis. However, as nothing really makes patches stand out more than regular issues, we were loosing a lot of patches in mantis. I believe our oldest patch in mantis which clearly hadn’t been looked at by anyone was over 3 months old. Not a great state to be in. With the new set of states mantis issues with patches can be set to patch included as part of triage. This will make them pop up to the top of everyone’s attention.

Another issue we’ve had is that users can’t close their own issues. I just fixed that (I think), so if you have reported issues via OpenSim mantis I’d ask to go check to make sure they still look valid. If they aren’t, please close them, to help us clean up the current state of things.

I’m hoping these changes make it easier for us to manage issues coming into the project, and make using mantis more effective for everyone.

The Earth in OpenSim

Xplanet is this great program on Linux that does projections of the earth (including all kinds of possible overlays to include things like real time clouds, earthquake activity, and major storms.)  For years I’ve used it as the background image on my Linux desktop.  On the way home last night, while chatting with my friend Trey, it occured to me that through creative use of OpenSim, we could easily do this this in world with dramatic effect.

Below is a couple of screen shots of my 10m globe.  I had to modify the code paths for osSetDynamicTextureURL to get 1024×1024 textures into the pipe, as 512×512 doesn’t actually look good wrapped on a 10m globe.  There is still a bit of work to make this really good (like completing osSetDynamicTextureURL so we don’t need another timing loop in LSL to do refresh), but the initial results are quite nice. 🙂

The circles with numbers are earthquakes in the last 24 hours plus magnitudes (this information comes from the TotalMarker project).

Here you can see the storm track of the named storm Ivan (also from TotalMarker).

OpenSim Database Hacking

Another day, another set of ADO.NET code gutted.  I love mondays!

Today the SQLite Assets for OpenSim were liberated from their cruel ADO.NET oppressor, saving memory and CPU time in the process.  I did manage to break things for an hour or two as I had misunderstood the semantics of IDataReader.  Thanks to Grumly57 on #opensim-dev for sorting out what I did that was really dumb. 🙂

Reuters Article on OpenSim

There is an article on OpenSim up at the Reuters Second Life booth. On balance, the article isn’t that bad, though it has that standard mainstream need to create some sort of conflict in a story, so be it.

What I do find quite interesting is how fast the development of OpenSim has been going (emphasis is mine).

SECOND LIFE, Sept. 6 (Reuters) – Adam Frisby opened his Second Life client and logged into the virtual world, but right away things were subtly different.

In the world in which he found himself — one that closely resembled Second Life but was in fact a universe of his own making — there was no ability to customize an avatar’s appearance, for instance. So Frisby’s look was locked into the default, not Second Life’s white T-shirt and jeans but a light blue shirt and red pants. And Frisby’s walk and flight were a little awkward — the world’s physics engine was turned off to speed performance….

Inventory and appearance altering started working a week ago. The front page screenshot on the OpenSim web page shows me in my first attempt of this. We are moving fast now. I think the 2 month target in the article is a bit too optimistic, but the project is evolving quite nicely on a daily basis.