Mono 2.0 in Fink Unstable

I’ve got Mono 2.0 updated and packaged up for Fink unstable. It includes Cocoa#, Gtk#, and MonoDevelop 1.0, all tested and working.

Congratulations to the Mono team on getting 2.0 released!

Share on Facebook

Share on Facebook

The Calm Before the Storm

Sure, it may seem quiet, but oh man, there’s been a lot going on.

First of all, a little off topic… Hockey season has started again. Go ‘Canes! <grin>

Second, as you might or might not be aware, a new kitty is coming to town soon. While David Morrison has done the majority of the work, I’ve been trying to help clean up some loose ends in getting things ready in Fink — validator fixes, working around compiler issues, and other misc stuff.

Third, I and a few other folks have been working on finally getting GNOME up to 2.20 (including GTK+ 2.12) in Fink, which is a metric TON of work. GTK+ 2.8 introduced a dependency on Pango‘s Cairo backend, which has to bubble up into build-time dependencies for literally hundreds of Fink packages. Through a combination of brute force and some automation, this is now to the point where it’s time for brave users to help us find the kinks, test upgrades, and other fun stuff. Expect an announcement sometime this weekend with details.

Fourth, I’ve been working on getting . . . → Read More: The Calm Before the Storm

Share on Facebook

Updates since June 29th

There are quite a few updates since my last big post. Most notable are getting mono up-to-date (although monodevelop still doesn’t work), Ruby on Rails, and kde 3.5.4 (as of this post, it’s 10.4-only, my 10.3 build machine is still chugging through doing a final verification build, but it should be out in the next day or two).

actionmailer-rb: new package (for Ruby on Rails) actionpack-rb: new package (for Ruby on Rails) actionwebservice-rb: new package (for Ruby on Rails) activerecord-rb: new package (for Ruby on Rails) activesupport-rb: new package (for Ruby on Rails) amarok: updated to 1.4.1 (still no GStreamer engine…) boo: updated to 0.7.6.2237-4 cairo: updated to 1.2.0 cocoa-sharp: updated to 0.9.1 fastercsv-rb: new package (fast CSV parsing for Ruby) ferret-rb: new package (a port of the Lucene search engine to Ruby) gecko-sharp: updated to use firefox1.5 instead of firefox (1.0.x) gnupg and gnupg-idea: updated to 1.4.5 glitz: updated to 0.5.6 gst-plugins-bad-0.10: dependency fixes gst-plugins-base-0.10: updated to 0.10.9 gst-plugins-good-0.10: updated to a 0.10.4 snapshot (for updated OSX drivers) gst-plugins: dependcy fixes gstreamer-0.10: . . . → Read More: Updates since June 29th

Share on Facebook

GNOME ABI is always backwards-compatible, except for when it’s not

So I’m rather surprised by GNOME‘s response to a recent bug on symbol visibility on Mac OS X. One of the things GNOME has done very well in the past is to always preserve backwards-compatibility, and they’ve generally stuck to it (and when they haven’t, it’s been an accident, and has been remedied).

But given the comments on the bug, apparently ELF linking with indirect symbols is now the only officially supported way to compile GNOME libraries, and breaking ABI compatibility is OK as long as it doesn’t break any important platforms. (ahem)

I’m in favor of refactoring code to the proper places as much as the next guy, but this is breaking ABI, and should wait for gnome-vfs3. That’s the way it works, you’re making a compact with the user that as long as this major number doesn’t change, your old binaries should still work. It’s a shame that they’ll break that covenant for the purposes of the convenience of framework developers. It’s not like there aren’t ways to consolidate the code that doesn’t break binary-compatibility.

And here I was going to help Daniel Macks work on . . . → Read More: GNOME ABI is always backwards-compatible, except for when it’s not

Share on Facebook

Mono updated to 1.1.11 — MonoDevelop is working!!

Finally got MonoDevelop working again. Looks like the last hurdle was mozilla — for some reason, gecko-sharp (or mono 1.1.10/1.1.11, or something) was bombing with the mozilla 1.7.5 libraries. I’ve changed the dependencies to use firefox instead, and everything works. (Yay!)

Amarok: updated to 1.3.7, changed to allow the choice of backends: xine, gstreamer, or both

amrnb: new package, a speech codec used for mobile phones

Cocoa#: resurrected package, a Cocoa interface for Mono

Gecko#: updated to use firefox libraries instead of mozilla

GStreamer: new packages for GStreamer 0.10 (gstreamer, gst-plugins-base, gst-plugins-good, gst-plugins-ugly)

IKVM: updated to 0.22.0.0

libgdiplus: updated to 1.1.11

liboil-0.3: new package, a CPU optimization library

libsmoke: resurrected package, library for making Qt language bindings

Mono: updated to 1.1.11

MonoDevelop: updated to 0.9 — and it even works 😉

Mono Tools: updated to 1.1.11

MonoDoc: updated to 1.1.11

perl modules: updated a number of perl modules, cleaning up installation, as well as some version bumps:

DBI: updated to 1.49

Digest: updated to 1.14

IO::Stringy: updated to 2.110

MailTools: updated to 1.67

Mime-Tools: updated to 5.418

Net::Jabber: new package, version 2.0

Net::XMPP: new package, version . . . → Read More: Mono updated to 1.1.11 — MonoDevelop is working!!

Share on Facebook

More Misc. Fink Updates

Been doing a lot more to catch up on my Fink packages (and updates to a few that aren’t mine) and have been working on getting KDE 3.4.2 cleaned up in unstable.

amarok: updated to 1.3.1

boo: updated to 0.6

bundle-kde*: lots of cleanups to fix upgrades

cairo: updated to 1.0

glitz: fixed a minor libtool library issue

gstreamer & gst-plugins: updated to 0.8.11, modernized dependencies (libshout2, etc.)

kde/koffice i18n: fixed download issues

kdeaddons3: made a kdeaddons3 package (which includes kpackage and a few other misc. utilities)

kdepim3: really fix the kaddressbook/kmail crash this time (by using gpgme’s pthread implementation, instead of pth)

libbonobo2 & libbonoboui2: updated to 2.10.1

libcapsinetwork: updated to 0.3.0 (to go along with monopd 0.9.3)

md5deep: new package, MD5/SHA1/etc. tool

monodevelop: fix building against Boo 0.6

monopd: updated to 0.9.3

pbzip2: multi-cpu-aware version of bzip2

system-openssl-dev: put some info in the package description on how to use it

Share on . . . → Read More: More Misc. Fink Updates

Share on Facebook

Gnome 2.4 and XFree86

Been working on doing test builds of the Gnome 2.4 stuff and looking for missing build dependencies; it’s starting to look *really* good. All of the major bugs seem to be worked out, only a few minor things until it’s releasable, if I had to bet. Also, I’ve made a newer xfree86 snapshot. If you’re running unstable on 10.3, you should be able to “fink install xfree86” after a selfupdate and get 4.3.99.901-2. This is roughly equivalent to the 4.4 release candidate that Torrey announced, although it’s a slightly newer CVS snapshot. Please let me know if you run into any problems with it, initial testing shows it to be pretty stable on my system.

Share on Facebook

Share on Facebook

Interesting KDE vs. Gnome Discussion

There’s an interesting discussion between Havoc Pennington (from RedHat) and Miguel de Icaza (from Ximian) on the issues of Gnome/KDE interoperability. Strangely, I find myself agreeing with both of them for the most part, although in the end I prefer KDE3 to Gnome 2 currently. One thing I don’t understand is that one of Havoc’s reasons for not liking KDE is the supposed duplication of code between Qt and KDE:

That said, we are on track to be *substantially* smaller and faster if we kill the duplication of platform in gtk vs. libbonoboui, speed up pixbuf handling, optimize fontconfig, and some stuff like that. kdelibs is *huge*, as is Qt, and they heavily duplicate each other.

It seems to me that this is an interesting point of view from someone who works on a framework that is entirely written in C. KDE makes very heavy use of subclassing, there is really not much duplication going on in the KDE codebase as far as I am aware (with some exceptions). If he were to point to issues of inefficiency in compilers’ implementations of C++ where vtable lookups induced by . . . → Read More: Interesting KDE vs. Gnome Discussion

Share on Facebook