list madness

Jonathan Blandford, here’s a link for your google battle. Personally I think it’s best for me to give up that fight.

list madness

Somebody’s bizarre server setup flooded the gtkmm list with hundreds of repeat emails, with everybody blaming everybody else. Luckily we didnt lose too many subscribers – about 500 now.

Debian, finally

Yes, I know, it's silly that it took this long. Every now and then over the years I have tried to install debian, without success, particularly on my laptop. But I finally managed it using knoppix's hard-disk install.

Knoppix is a bizarre parody of a distro and a UI nightmare – a linux demo that is not likely to impress anyone over the age of 8. But it does seem to have far better hardware detection than the regular debian installer, and I was able to apt-get GNOME 2.2 and GDM. I'm just learning about the 3 stable/unstable/testing levels, but it does seem very odd that the default in knoppix is testing. I can't seem to put the proper incantations in RedHat's grub.conf to make it boot the debian partition. That might not be knoppix's fault, but I suspect some file-system strangeness due to a funky kernel. I did try gnoppix, but couldn't get it to recognise my hard drive. A nice sensible bootable GNOME distro will be very nifty.

Hopefully I can now deal more quickly with the gtkmm C++-compliance compile errors that every new version of gcc on debian seems to show.

apt-getting stuff is so easy (well, you have to guess the package name). I've become used to building new stuff from source on Red Hat because I can never find RPMs. Fedora should solve this 3rd party RPMs problem perfectly.

libgdamm

I wrapped a lot more of libgda for libdamm, patching a bit more of libgda, but it's all stuck on my hard disk until I can get to a real internet connection. If I'm lucky then I might be able to do that once a week at the moment. I wish I had a proper job.

Release early, release often

People like releases. I got tired of waiting for a glib 2.3.0 release, so I released a glibmm 2.3.0 that depends on glib 2.2, so that I can get the code out there. The same day, we got a new contributor (J. Abelardo Gutierrez) who asked how he could help and had a patch to us in hours.

There's still no gtkmm 2.3.0 because that really does need GTK+ 2.3. I still haven't tracked down the strange treeview crash with GTK+ cvs HEAD, and I don't have a real connection anymore, but before I left Nuernberg I did several dated checkouts of GTK+, so hopefully I'll track it down. In the meantime, I strongly encourage everybody to hack on glibmm and gtkmm in cvs. There is new fun API that needs to be wrapped.

Because everybody wants libgdamm (C++ wrapper for libgda – generic database API) but nobody seems to want to do the work, I put out a release of the stuff that's been sitting in cvs for a while. Hopefully someone will pick it up.

I'd really like to release a tarball of libgnomeprint*mm, some time but it's been very difficult to get the necessary patches into libgnomeprint. Apparently that's going to get better soon. libgnomeprint, being purely postscript based, isn't the future of printing APIs in GTK+/GNOME. I hear that Cairo (previously Xr) might better unify the screen and print rendering APIs. But it would be nice to have the intermediate solution available to C++ coders.

GNOME

The new GNOME 2.5/2.6 schedule and organisation stuff AKA start pages is up, and jhbuild's gnome26 moduleset has switched to GTK+ HEAD (2.3), so the fun is starting. I really wish that I had my non-sleeping hours to work on it.

Planet GNOME was a great idea (jdub's). It's a great way to see what people are up to, and I think it really energises people. I believe in structural solutions.

Nuremberg, gtkm 2.3

For the first half of next week, I’ll be in Nürnberg with a real internet connection. So it’ll be patch-applying time. Try not to miss the window of opportunity. I’ll try to get gtkmm 2.4 even more ready for a 2.3.0 release, but it doesn’t look like we are going to get a GTK+ 2.3.0 soon. Personally I think it’s a mistake not to release early, release often.

This jhbuild gui thing from nullity (Seth) looks like fun. I look forward to trying it.

libxml++

We released a new version, finally with namespace support thanks to Dan Dennedy. libxml++ is is a real pleasure to work on because it has a limited scope and clear aims. People seem to like it. As far as I can tell it's as standards-compliant and useful as Xerces-C++ without being so horribly complex. Of course we'd like to know if it isn't.

GTK+ bindings

pfremy, that is complete arse. The vast majority of this vast list of bindings are for the latest GTK+ API. GTK+ is designed for wrapping. It’s not just another C library – it’s GTK+. That article is old, and it’s by paying attention to that kind of thing that GTK+ is so easy to wrap today. I love C++. I know GTK+. I know what I’m talking about.

GNOME 2.4, stuff

GNOME 2.4 was released while I was on holiday. It was nice to miss the stress and just read the reviews when I got back. People seem pleased but unsurprised, and that’s how it should be.

I don’t understand any of that Ars Technica “spatial finder” article, and it’s not the first time I’ve tried to read it. I suspect that it’s badly written, and I hope that it’s just about opening folders in their own windows and not having back/forward buttons. If so, it’ll be more like classic MacOS and I’ll be happy. Anyway, I’ll have to try it before offering an opinion.

I found About Face 2.0 at Munich’s Computer Bookshop at the Obelisk. It’s rather dull and lengthy, but I want to read it so that I can help push the personas idea forward.

I’ll have very little cvs connectivity for the next few weeks, and there’s lots of things I’d like to do. I’d really like a month or so of uninterrupted time for GNOME/gtkmm hacking. Unfortunately it looks like my current contract will be extended until the end of the year, and I can’t say No to it without upsetting the agent.

Back from walking around the Dachstein

I’m back from walking around the Dachstein range. I couldn’t do the whole 8 days as planned because the first heavy snow of the season blocked the route. The weather started sunny, and became pleasantly scots-like, which I enjoyed, but the mountain pass that was unpleasant one day, became impossible a couple of days later. So I walked down to the rain in the valley.

Along the way, I found my first BookCrossing book at the Gablonzerhütte.

Location

Yesterday I left my perfect little Häuschen and I'll be in a Pension when I get back to Linz. I'm in Nuernberg all this week, then I plan to walk around the alps for a week or so – Probably the Dachstein, and probably nothing too serious because the weather is becoming dangerous.

BookCrossing

I find bookcrossing fascinating. Anything that connects cyberspace to the real world starts to look like a phenomenon. I hope that the recent word-of-mouth and activity is the start of a great success. I love to look at the lists of locations for cities that I know. For instance, Munich, Linz, Nuernberg, London. There are people out there, acting dangerously like individuals.

GNOME release team

GNOME 2.4 is in the last stages now, as stable as you'd expect an incremental time-based release to be. jfleck is working on the release notes again, so we can make a suitable hooha about the final release.

There's a hard code freeze (not for translation and documentation) that prevents any nasty instability creeping in when we don't have time to fix it. At this point we always get lots of freeze-break-requests. Most of them get approved and that's OK because the point is to force people to think very carefully, slow down, prioritize, and work with the relevant groups. We just check that they've considered what they should consider and talk to whoever they should talk to. Our response rate seems a bit better this time but I do always worry that, because we use a private mailing list, people don't see the queue of requests. They might think that they are just being ignored and they can't see how the process is working for other people.

At this stage, it seems to be the translators who are most active. I'm really impressed at the firm, considered way that menthos has been dealing with the string freeze-break requests. The GNOME internationalization/translation project is a great example of how a large group of people can build something together because they have the benefit of working withing a clear structure that functions only according to their needs.

I'm officially stepping down from the release team after 2.4. My reasons are

  • I try to do the stuff, or push for the stuff, that doesn't get done otherwise, and that's stressful.
  • Between my recent paid-work overtime, vagrant lifestyle, and connection problems, I can not give the time that I would like.
  • Hopefully I've documented us a bit more and made the process a little clearer, so I don't need to stick around to do more of that. An important part of that was making it very clear how people can get involved.
  • I strongly believe that people should not stay in positions of power for too long. We don't have much real power, but I have been able to make a fuss without people telling me to hush, a privilege that few of us deserve more than others. I hope that the release team membership continues to balance between continuity and flux, so it has the benefit of fresh ideas, attitudes, and perspectives while energising contributors and spreading the time-based release-process religion.

I will be missing out on the exciting GNOME 2.5/2.6 phase, which would have given ample opportunity for abuse of power:

  • You should see a questionnaire to the lists soon which will form the basis of some rough aims/roadplan for 2.6 and 2.8. It's like a higher-level How-To-Help lists of things to do.

  • GTK+ 2.4 will make a big difference, allowing us to make sense of the GNOME API that's been a bit confused recently. Some of that will probably wait for GNOME 2.8, but hopefully it will start in 2.4. I want to say “This is how it's done.” , rather than “Some people do this, some people do this.”. It should also make HIGification much easier, and of course it'll have the file selector dialog that Joe Slashdot has been going on hunger strike for.
  • The new modules that didn't make it into GNOME 2.4 (e.g. the media player and the keyboard switcher) should be ready for 2.6 and probably 1 or 2 more, so this could really be the GNOME that starts to look frighteningly complete.

But instead I can get back to the pleasant job of wrapping the new GTK+ 2.4 API in gtkmm and sharing in the resultant glory. Hopefully I'll do some actual hacking on GNOME itself.</a></a>

libglademm

I started an unstable branch of libglademm so that I could add some API to support use of derived widgets with .glade files. This allows people, for instance, to layout their window in glade, and then still keep their code nice and organised by actually implementing that window in a class that's inherited from Gtk::Window. It's better than using a placeholder child widget.

gnomemm

I put out new versions of all the gnomemm stuff. That always takes ages. This time gnome-vfsmm gets a mention along with the other stuff. Apparently there are problems with the libbonobomm build, so I'll probably put out a new version of that again.

I'm getting tired of libbonobo*mm making it so hard to build libgnomeuimm. I have been using the dependeny to encourage people to be aware of libbonobo*mm and keep it up-to-date, but I think it's time to give people a break. libgnomeui only exposes bonobo stuff for the DockWidget, and almost nobody cares about implementing or hosting Bonobo controls. I think I will remove the dependency, freeze the libgnomeuimm API, and cut libbonobo*mm loose for people who care about it.

This makes sense because almost everybody seems to expect that Bonobo will not be used in any non-deprecated part of the libgnomeui API in future. It will be something that you can use if you want to, but that you won't have to drag around if you don't want to.

Luckily this should not leave orbitcpp orphaned, because some of the people who care about that don't even use gtkmm.

libgnomeprintmm

Enough people have asked about printing that I started to wrap gnome-print. I already have a simple example working that generates a postscript file. It's all in cvs. I'm not completely happy with the libgnomeprint API, and I think it will need to break API again before it gets into the GNOME Developer Platform.

gtkmm

Owen has announced that he'll release tarballs of the unstable GTK+ 2.3. I'm looking forward to that, because it means we can release some of the glibmm and gtkmm 2.3 stuff that's in cvs, and get started on the new APIs.