installing software and my own laziness

Since getting a new computer I’ve been psyched to try out new software on it that I never had the disk space before, like mono. I’m not really knowledgeable enough to know if the whole CLI paradigm is really better than Java, as some claim, but it’s a pretty great idea. Anyway, since I use .NET at work it’s an interesting thing to play around with at home.

So installing mono itself is really easy. But it’s still Linux-oriented enough that there aren’t any installers for monodevelop, the IDE for mono that runs on mono. I tried to install it from source, using the only partly helpful mono os x page, but I had to figure out a few things for myself that weren’t on there. For one thing, the scripts couldn’t follow the symlinks that mono put in /usr/bin, so I had to put /Library/Frameworks/Mono.framework/Versions/Current/Commands in the PATH. After that I built all the dependencies with fink that page talks about. Then I got to the point of downloading the actual source for monodevelop,and realized I had installed the wrong version of gtk#. Argh. It so happened that I was perusing the fink package database then and saw listings for mono and monodevelop, so I decided to just bite the bullet and remove my existing mono installation and do it from fink.

Now, I have no idea if I got rid of mono properly. There’s no documentation about it, and google didn’t help. So I just deleted /Library/Frameworks/Mono.framework/ and all the symlinks to it that were in /usr/bin, and called it good. I was ready to just install mono through fink.

Then I made a pretty major mistake and learned a lesson, one that I will repeat to you now: if you are running a fink install through an ssh session and the session dies, not only will the build fail but the package dependencies will get totally fucked up, to the point where after an hour or two of trying to follow the directions in this FAQ entry, you’ll get pissed off and just

rm -rf /sw

and start over, since there was nothing you cared about in there anyway.

So now fink is rebuilding everything, and from now all fink builds will run inside of a screen session.

Leave a Reply