Category Archives: General

GNOME Betas, GTK+ API Freeze, and GNOME Bindings API Freeze

This is the time when we get stressed:

  • The GTK+ maintainers had to decide to finally freeze their API to avoid delaying the GNOME 2.6 release.
  • The GNOME release-team had to decide whether GNOME was ready for 2.6, based on the bugzilla status, and particularly with the lateness of the GTK+ API freeze.
  • The GNOME Bindings had API freeze, though we weren't sure until the last minute whether GTK+ would do the same. For the Java and Perl bindings this is the first time they've ever done an API freeze. It's the 4th time for gtkmm.

It's always scary to make these decisions, but we shouldn't forget that it's meant to be scary. It's far better to tear your hair out for a week at API-freeze time than to have a constant state of uncertainty for a year. And I think it's actually perfectly normal to have repeated threats and expectations of API freeze – you need to shake the problems out of the tree.

Likewise with the worrying about the stability and quality of final betas – having a schedule makes everyone really think about it, and really fix the big problems.

I'm becoming a release schedule fanatic.

Mark McLoughlin has lots more time for the release-team recently, as part of his new job, I guess. During the past few weeks he has done a really wonderful job of organising us and coordinating with the GTK+ team. It's a very significant contribution to GNOME 2.6.

Division

I try very hard not to express any strong opinions here on divisive stuff such as politics or taste in music. That's dull but keeps everyone feeling included.

But sheesh, the Bush administration must go. A constitutional ammendment to ban homosexuals from getting married? In the fine tradition of amendments that abolished slavery, gave equal rights regardless of race, gave women the right to vote, and reduced the voting age from 21 to 18. The constitution, crufty as it is, makes Americans relatively free and it's outrageous to use it to reduce the harmless freedoms of a part of society. In europe we call this facism.

Bush knows that this amendment will never be passed because it's just meant to please an extreme minority of voters (I wonder, will he dare to support the amendment to deny abortion to women.), but it is unacceptable for a president to even suggest this.

I know that it's bad to invade a country, send people to die, kill innocents, destroy the world's environment, and destroy the american economy, and lie to the public, just so your friends get a few dollars extra for their retirement. But I think this is just the final straw for me.

The rest of the world is praying that Kerry wins the election, but the chances are very slim, what with the routinely corrupt american election process (see Kennedy v. Nixon), and now:

  • Probably-legitimate reweighting of the states' electoral votes so that Bush would have easily won in 2000 without Florida.
  • Widespread sweeping unregulated removal of people from voting lists, so that they can't discover until voting day that they can't vote. It worked in Florida in 2000, so they're doing it all over the place now.
  • Use of known-to-be-flawed electronic voting machines, controlled by politcally-motivated companies.

If Bush gets to rule for another 4 years, the rest of the world is likely to just give up on America and try to keep out of it's way. Unfortunately many people already have. That's a shame for the majority of decent moderate Americans.

Settled, connected

For the past week or so I have been surrendering to humankind's base instincts to gather and assemble IKEA furniture, and to acquire household electrical items.

And I now have DSL. No more frantic hotspotting for minutes at a time.

gtkmm

We have until March 1st to get stuff done for the Bindings API freeze, but that should be OK now I'm connected. Bryan Forbes has taken care of a lot of minor API issues recently, which gives me more time for bigger problems.

Giving me money

Someone just gave me $1 via PayPal for some FileMaker templates that I put on the web 5 years ago. Sounds like the start of a late-90s business plan to me.

My SMTP server (not really under my control), can't send to sourceforge mailing lists:

... while talking to mail.sourceforge.net.:
>>> DATA
<<< 550-Postmaster verification failed while checking <murrayc@murrayc.com>
<<< 550-Called:   66.33.196.49
<<< 550-Sent:     RCPT TO:<postmaster@murrayc.com>
<<< 550-Response: 550 <postmaster@murrayc.com>: User unknown
<<< 550-Several RFCs state that you are required to have a postmaster
<<< 550-mailbox for each mail domain. This host does not accept mail
<<< 550-from domains whose servers reject the postmaster address.
<<< 550 Sender verify failed550 5.1.1 <libxmlplusplus-general@lists.sourceforge.net>... User unknown
<<< 503 valid RCPT command must precede DATA

This is annoying and obscure to me, and I have 5% battery left. Ooh, I think I just figured it out, and can fix it. Pressing Post anyway.

Back to Bayern!

After a lot of wandering around Munich, looking at a lot of random places, I finally found an apartment – on Schellingstrasse in Schwabing. It's not the Glockenbachviertel, but oh well. It is, however, the classic clean white, geometrically-perfect, empty, german apartment. Now I need to try not to throw too much money away at IKEA.

I already ordered DSL so the year of internet-deprivation should be over next week.

libsigc++ 2 and gtkmm

I just released versions of gtkmm and co that use libsigc++ 2. Everything seems to work, and the syntax is incrementally better – no more numbers such as Slot0<>, Slot1<>, etc. Martin Schulze has done a wonderful job maintaining libsigc++ 2 and put a lot of effort into getting it and gtkmm ready in time. I critize everything and everyone but I can't find a single fault with what he's done. That doesn't feel right.

Bindings API freeze has been delayed by 2 weeks due to the GNOME schedule slip of 2 weeks. So, that gives everyone one more last chance to get changes in and test stuff properly. That's actually the ideal way to do API freeze sometimes – keep saying it's the last chance and keep sounding like you mean it. However, schedule slip is exceptional and I wouldn't bet on it ever happening again.

jhbuild on debian

Yesterday I tried again to get jhbuild working on my debian installation. This script from jamesh seems essential.

gtkmm and SUN Forte C++

I am still very concerned that I have no access to a SUN box with the Forte C++ compiler to fix the build issues. I guarantee that the Forte users will resurface a few days after the total API freeze.

Gallery

I finally got around to putting gallery on my site so I can have thumbnail views of my photos. It was very easy with my hoster. Moving all of my old (boring) photos into gallery was tedious. Now is not the time to tell me that there is something better than gallery.

Leaving Comneon

Today is my last day at Comneon, where I’ve been a contractor/freelancer/consultant for the past year. This means sweet blessed freedom from ClearCase. ClearCase is failure.

The idea is to be in Munich instead of Linz, though I don’t have anything lined up yet, and I’m not trying very hard. Don’t bother sending email to murray.cumming@comneon.com any more.

This happens every year or so. Once again, I won’t be very online for the next month, because I need to find an apartment and I will no longer have access to the company’s DSL. But I will deal with the important stuff and you should flame me if I don’t.

murrayc@murrayc.com

I noticed that dreamhost have added all kinds of features for free, including SMTP access and mail forwarding (to an account behind a proxy at whatever company I am at) and webmail (so I can see my email behind a proxy even when the company’s exchange servers are down). So I have no more need for usa.net, though they’ve been very reliable for the past 8 years or so.

So, I’ll now be using murrayc@murrayc.com, and nobody needs to think that I’m a Yank. murrayc@usa.net will forward to murrayc@murrayc.com for a while.

Madness

I’m pondering the idea of starting some small open-source-based company in Munich so that I have some hope of working on worthwhile projects in future. I like that using open source means that it’s not a big disadvantage for a software company to be small, or even at risk of being short-lived, and that we could be honest about that. In fact, I think that the ability to have a more personal working relationship with a local software company could be a big advantage, particularly for other small companies.

At the start this would not be so different than freelancing, but it would allow me to have a company name that could build a small reputation and advertise itself, and it would allow other freelancer-type people to huddle under the same company name.

Of course this is insanity, sure to fail, but I for the last few months I haven’t been able to get the idea out of my head. I keep thinking up marketing blurb that sounds both effective and convincing. The only thing that might save me is that it is impossible without finding other suitable developers in Munich. I think I’ll see who I can find over the next few months.

Bblogs as tech support

If anyone knows what I need to apt-get to make my Dell Inspiron 8100 touchpad work with kernel 2.6 in debian, please email me. Apparently there's some new X driver that I need. Or maybe I'm supposed to configure it as a PS2 device.

Update: I received several answers, mostly involving installing a synaptic touchpad driver from source. But enveraltin showed me that I just need to add psmouse to /etc/modules, and that you can get it working quickly with a “modprobe psmouse” command. I think Jan Van Buggenhout was trying to tell me the same thing, but he vastly overestimated my understanding of these things.

Back from Blighty

The weekend in London was much more fun than I expected. As ever, London depends on who you are with.

We met my sister at the Tate Modern. The sun thing is really fantastic. tate_sun

I like that loads of Londoners now have the shared experience of basking in the orange light and watching the crowd in the vast mirrored ceiling.

tate_sun_mirror

tate_sun_upper

Other tourist things: Portabello market, Brick Lane (balti, markets, bagels, aspirational furniture), Covent Garden, clothes shopping.

spitalfields_market

toroid_chair

gtkmm

I quickly released glibmm and gtkmm tarballs before flying to London, now that GTK+ has tarballs we can use. I don’t expect the gtkmm API to change much more, though we do need to start using libsigc++ 2 before the next tarball. There are still a few API bugs that I would like people to help out with.

gtkmm

Recent events

  • Thanks to prodding from various people, notably julian and the Inkscape developers, gtkmm is now in Fink, so it's easy to get it on MacOS X.
  • For the SUN Forte build, I badly need a login on a SUN box with the SUN Forte C++ build. I sent an email to SUN, asking for support with this kind of thing, but I'm not holding my breath. We used to have someone who submitted gtkmm patches for SUN, but he's not around these days.
  • I finally added a custom TreeModel example to gtkmm, and I made it easier to do that in gtkmm 2.4. Thanks to Christof Pettig for showing me how. I still need to figure out how to manage more complicated GtkTreeIter data though.
  • I called for 100% API reference documentation., and got some good responses – maybe even some patches later.
  • gtkmm has lots of changes in cvs, but we depend on GTK+ in cvs because I am closely tracking the API changes. Don't wait for a tarball – get it from cvs and submit patches.

Location

I'm in London at the weekend, pretending to be a German tourist. It's been 1.5 years again. No major plans apart from a curry in Brick Lane.

I haven't found an apartment in Munich yet, but I am persuading myself that it will be fun finding one.

GNOME Bindings

We've done 2 releases now. Everyone is on track.

GNOME New modules

The release team must make the new modules decision soon, so it's your last chance to speak up if you don't think your favourite new modules have had the support that you expect. The release team try to keep reminding ourselves that we have to represent the consensus more than our own opinions, so there should be no surprises.

_I_ think the consensus says that these modules should go in, and _I_ think that's sensible:

  • GNOME System Tools: Time, Users and Network control panels. I think we would be insane not to add these. There might be some menu reorganisation to do, and we'd would have liked the distros/vendors to work together more on this before now. But if we don't get these on the schedule now then I think we'll be in exactly the same position next time, and the time after that. Nobody should expect distros to use these immediately, but distros should expect to use them eventually and improve them so that they can. I think there is general support for this strategy in the community and from the distros.
  • Evolution and evolution-data-server: At first I was apprehensive about choosing one of the many email clients, but I don't mind now that they are providing a generic contacts/calendar API that the other clients can use, and that we will put in the GNOME Platform eventually. There is some concern that the new Evolution version will not be finished in time. If so, then it will have to wait until GNOME 2.8 – only a few schedule months. There's a lot of community support for adding it to the Desktop.

  • gswitchit, libkxklavier, and gnome-keyring are already in, having been swallowed by existing modules. Both of these add functionality that will make lots of people very happy.

I think that monkey-bubble, gdesklets, gmodconfig should not go in because they do not help with any users' goals. Hopefully we will have some GNOME personas soon that make that clearer. gtksu seems to be a library that is not used by anything in the Desktop yet, so it should not go in. The community feedback, though small, seems to support that.

gnome-network seems to be in flux, and a bit of a hacker's set of tools anyway.

I'm still waiting to hear exactly what situations/tasks/goals will be improved by mozilla-bonobo, and I've barely used RhythmBox. I'm a bit confused about how Rhythmbox and Totem fit together. Totem was not proposed, so I guess gstreamer still isn't quite ready yet, though it looks like they are getting there. Luckily, distros can choose to ship the xine version for now.