Archive for July, 2010

Back in time (2)

Thursday, July 29th, 2010

Different kind of back-in-time post, this time more like Marty McFly. I started Akregator (Kubuntu 10.4 installation) to reduce the amount of planet-surfing I do, and it comes up with a bunch of pre-configured feeds. One of them is Akregator News. It’s a fascinating time machine. I guess it’s in the default configuration and just never got changed, since it still points to the SourceForge pages. News articles about Qt 3.2, KDE 3.4 (remember that PIM skipped one minor then?). News stopped then and it moved to the blog, which culminated with KDE3-to-4 build instructions in december 2005. My. Have we been in KDE4-land (the long winding road to 4.0 and thereafter) for four and a half years already?

MySQL connectors and the GPLv3

Wednesday, July 28th, 2010

[ Just a repeat, but useful for upstreams and downstreams and people building modern apps using MySQL's connector libraries and other components that need GPLv3 ] Via David Ayers, I read that the GPLv3 has been added to the FOSS License Exception on the MySQL website (disregard the "Updated" date at the top of that page, this is fairly recent). This means that the GPLv2 licensed library may be combined with GPLv3 code, leaving the combined work as a whole under the terms of the GPLv3, while only the terms of the GPLv2 apply to the client libraries.

Some things to note if you read that exception page closely: "GPL" there means "GPLv2" except in the table of FOSS licenses, where it means GPLv3. Clause 2b means "this exception applies if no other part of the work forces you to use GPLv2". Clause 2d adds additional source distribution requirements beyond what you’d have to do otherwise. The page also still refers to Sun, so it needs another update anyway, one which might get a good going-over by Oracle’s lawyers.

KDE is a bunch of guitarists

Wednesday, July 28th, 2010

Q: How many guitarists does it take to change a lightbulb? A: Seven. One to change the lightbulb and six to stand around and go "yeah, I can do that."

That’s one of my favorite guitarist jokes — I play badly enough that I know most of the time I can’t do that, but hey. While the crux of the joke is that those saying they can, aren’t really up-to-snuff, I’ve been going "yeah, we can do that" a lot this week. Where "we" is various KDE applications or technologies. Perhaps they need a little more promo?

First there was this Ars Technica article on Terminator, to which the first comment was "yeah, Konsole can do that" (for years already, at that). And of course emacs, screen, and plenty of others. Makes me think of the way I use Konsole tabs, though. I tend to have one tab per thing-I’m-doing open, all in different directories; for programming projects I tend to have a source-editing and a compilation tab open. Editing means vi, unless I know I’m going to be at it all day, then there’s a Konsole tab from which I run Kate.

Oddly, I never use the window splitting feature; instead I rely on quick tab switching with alt-arrows and the activity indicators in the tabs themselves. I wonder if that’s something to add to the Konsole Userbase page, describing different ways of using Konsole efficiently? A collection of best practices, if you will, or suggested possible workflows with Konsole. That’s a useful addition to the handbook, I think.

Later — might have been via Glyn Moody’s endless twitter stream — I ran into Matt Zimmerman’s "Embracing the Web". Another "wait, what? we do that." To some extent, KDE’s project Silk aims to do just that. First-class web-apps on the desktop? Midgard does that, too with its deployment framework thingy (Henri may correct my pronounciation here). OwnCloud might fill the management gap, and GHNS (Get Hot New Stuff) brings things from the web to the desktop. The other direction, I’m not so sure of.

Maybe I’m misunderstanding what Matt is after, though. A bigger ecosystem of interoperable web applications (not just services) on a Free Software model (which implies license choices so that cooperation is fostered)? Sure, sign me up — mind that a combination of Quanta Plus (once ported to KDE4) and Silk is probably an awesome development platform and the pervasive support for HTML markup and Javascript in Plasma makes development of web-like applications locally a piece of cake.

Back in time

Monday, July 26th, 2010

Back in time. That is, back (from vacation) in time (to avoid the long drizzly tedious soaking rains of today). I was off for a week, bicycling with the family in the Netherlands. We did not go camping this time, just to "trekkershutten", which I suppose can best be translated with "simple holiday home for a traveling family". The week was hot and sunny, which was just the right kind of weather for us. This year the kids had to ride their own bicycles — no more tow or kiddy seats! For both Mira and Amiel 25km per day is really the maximum they can handle. On 16" and 20" wheels that’s still a long ways to go. Amiel just pedals along fanatically, at a steady 9.5 km/h. So while it’s a real distance and endurance achievement for a 5 year old kid, mom and dad’s main challenge is cycling that slow all day.

So today was rain all day, and I’m glad we didn’t have to ride through that. Catching up on a week’s worth of email (#1: I really need to install Kontact on my n900; #2: expensive hotels in Amsterdam charge you 7EUR an hour for internet, while cheap hostels in the middle of the forest offer wifi for free) and trying to ignore all but the most urgent for now.

A bit of Postfix and Darcs

Wednesday, July 14th, 2010

Somehow the official Postfix documentation continues to be intractable for me. The whole reason for getting Postfix up and running on my local machine was because of Darcs. Darcs — one of many distributed version control systems, but possibly the only one written in Haskell and intrusively interactive — likes to send patches by email. It just uses the local MTA for that, so I needed one. Setup is slightly complicated by the situation my home workstation is in: while I have a domain I’d like to use for email going out of my house, I’m on a DSL line with outgoing SMTP blocked except to the DSL provider, and my local usernames don’t match the email addresses I’ve created.

So, basically I want to send all locally submitted mail to my DSL provider’s SMTP server, with the right domain attached, without my hostname, and I want to re-map my usernames. I didn’t manage to distill this from the actual Postfix Standard Configuration Examples, but Ralf Hildebrandt’s configuration examples do have the right stuff. The only change I had to make was for the username re-writing; instead of virtual_maps (since superceded by virtual_alias_maps), I used canonical_maps = hash:/etc/postfix/canonical, which maps user and user@localhost and user@domain to email.address@domain (3 lines per user login).

Now darcs send does what it should. I can also point KMail to use local sendmail and that gets the job done, too. KMail is actually simpler, because it sets up the outgoing From and envelope addresses based on the identity in use, so it doesn’t need the rewriting at all.

I’m starting to find Darcs a little bit interesting; the idea that every patch is a branch based on what it actually needs is intriguing. Or to put it in other words: if I have one patch to file A and one patch to file B then I’ve created two branches; there’s no need to consider the two together. If I make another patch to B then that branch grows longer. My working copy displays all the changes from the branches I’m working with, that is the merge of all my branches. If I were to add a patch that changes both file A and B then the two branches merge there. Darcs uses tags to slam a line across all the files and all the patches and to merge all the open branches, which prevents a gigantic proliferation of possible branches.

The upshot is that when I do ‘darcs send’ I have the option of sending any branches I have open — and any sensible sequence of patches within the branch — so that I can very carefully upstream patches while keeping them all visible locally.

What I really miss in Darcs is some of the Mercurial workflow: seeing a graphical representation of the current branching structure (hg glog) and being able to quickly merge multiple commits into a single one for upstreaming (hg qfold). On the other hand, the darcs behavior on commit (darcs record) to ask you about every changed hunk is really nice (sometimes, at least) because it helps avoid accidentally committing debug bits or whitespace changes that you didn’t intend to do.

[[ ObKDE: and somewhere underlying this all is my need to get a Python application to talk to KWallet; why oh why didn't I have enough lunches with Richard Dale in Finland? ]]

Home from Akademy

Sunday, July 11th, 2010

I snuck away from Akademy on Friday morning. My intention was to sign some legal documents (part of a resolution of the AGM of the KDE e.V.) and say good byes to all and sundry, but that got terribly sidetracked. The usual experience of walking into Demola is people saying “Hey, [ade], I need to talk to you.” I don’t imagine this is unique to me — there’s so much coordination that goes on at Akademy when you finally have every sub-project on hand to chat with. So I ended up with a long talk with Elias about truth in advertising, and then I tried to print and sign and scan the document at hand. Kaare, a guy I’d exhanged some banter during the day trip, wandered over. It turned out that Kaare is the Skanlite dude, so I took the opportunity to thank him for his work.

Then rushed goodbyes — I skipped the whole of floor 4 with the BoFs — and off to the bus. Milian, Niels, Richard and Lubos were on the same flight, and everyone who flew onwards from Helsinki to Amsterdam had their luggage left behind. So it was 9pm before I got home, sans backpack. Like Harri said, it’s not so bad on the way back. My luggage was finally delivered at home at quarter past eleven in the night (darkness!) in a violent thunderstorm.

So, yeah. Akademy rocked. The Mexican has pictures that give a good impression of the atmosphere there.

Making mistakes in my talks

Wednesday, July 7th, 2010

When I give a talk, I usually take people in the audience as examples. This is why people who know me usually sit two or three rows back if they possibly can help it, or all of a sudden they’re likely to be labeled the Evil Software Corp. or something worse. "You there, you’re BSD licensed, and over on this side we’re GPL, right?"

Usually these things work out OK, but when people end up associated with companies, I do make mistakes. So the Fedora guy (not rrix, Jakub, I think) with a red hat on in the audience was my example for companies that might be concerned about the effect of the GPLv3 on their ability to ship KDE as part of their embedded products. That’s utter bollocks, though. Red Hat have been one of the bigger GPLv3 supporters throughout the process, and they ship plenty of GPLv3 products. So scratch that example, should you watch the video. Next time I’ll pick someone with a different-coloured hat. other than that, I think the talk went pretty well.

Upcoming Conferences: Linux Kongress

Wednesday, July 7th, 2010

Linux-Kongress 2010, Tue, Sep 21 to Fri, Sep 24 at Georg Simon Ohm University , N├╝rnberg, BAYERN, DE

[quote] Linux-Kongress is by far the most traditional Linux conferences with a focus on development and cutting edge topics. GUUG will organize in 2010 the 17th edition of this event, first started in 1994 in Heidelberg, Linux-Kongress made its trip through a variety of German cities, Netherlands and to the United Kingdom (LinuxConf Europe). Since its start 17 years ago Linux-Kongress has been evolved into the most important meeting for Linux experts and developers in Europe.

The conference focus is kernel and lower-level technologies and things like desktops don’t show up in the programme, but there’s a couple of intereresting bits for the creators of user-level technology, I think: performance tools and IP stack conversions. The former would be interesting to apply to KDE bits in general; the latter will probably just need to be done once at the right level (Qt) to have everyone switched.

Completely unrelated: There’s also a bunch of fairly nice words at the Register about OpenSUSE 11.3.

Akademy D+5

Wednesday, July 7th, 2010

Strange how things jump from D-2 to D+5 with possibly no time at all for blogging. The conference days were of course full to the brim of just watching talks and helping the program along. While I do visible things like the welcome address and introducing speakers and waving this year’s whip about, the organizing team is making it all possible and probably much more truly busy. Sanna, Matti, Ilkka, Karen, Taru and the others from COSS, the Finnish Open Source Centre. Kenny for the videos and Claudia — Claudia knows everything.

[[ OK, I have explained the whip thing a bunch of times, but let's do it one more time for the record: at Akademy 2008 in Mechelen, I met Matthew Rosewarne for the first -- and, sadly, last -- time. He had spontaneously brought a bright pink riding crop which he presented to me as a gift just minutes before the opening of the conference. So I opened the conference with a whip in hand. Now, a riding crop -- firm nylon core, braided outer covering and a leather loop at the end which does the "snap" when hitting things -- is a useful device; you can point with it, herd people off the stage, and strike the table to attract everyone's attention. Unfortunately, striking the table will also fracture the nylon core, so you end up with a limp whip. Matthew went to Brussels to get me a new one, which firmly cemented the whip in my repertoire of things-to-do-at-Akademy. Matthew passed away in 2009. His whips directed the very first Desktop Summit, GCDS in Gran Canaria. At legal conferences I get questions from lawyers who have seen me active during KDE events: "where's your whip?" Well, whips are KDE things. I do try to keep that separate from my activities in the legal and licensing field, although I've since discovered that every lawyer harbours a deep dark secret talent. During the FOSS Nigeria conference in Kano this year, I bought a new whip in preparation for Akademy. It's a strip of twisted goat hide. Very simple and straightforward; depending on how you twist you end up with a slightly thicker handle or a flexible whip part. Dried, the strip hardens until it's functional. In Kano this kind of device is primarily used for driving donkeys and cows, not for directing conferences. Because it's more flexible, it is harder to point with and harder to aim with, but I'll practice. Shame Paul Adams (co-hosting the Masters of the Universe, well worth listening) isn't here to bear the brunt of that practice. ]]

Monday the KDE e.V. meeting went through in record time which left unexpected hacking time, which became things like introducing people to each other, then being summoned to a sauna and then it was midnight and still light out.

Tuesday I mostly tried to write email, guarded Claudia’s bottle of raspberry liqueur (for girls only), sat in on Alex Neundorf multi-platform build-farm BoF with Ubuntu ARM, SUSE x86, Solaris SPARC and Windows x86 in attendance (among others). There was a KDE e.V. BoF at six. The purpose of that session was to give people the opportunity to ask the e.V. board members about the association, or to discuss purposes and activities of the e.V., or to make suggestions on the inner workings. We got a fair bit of all of those things done, with both e.V. members (old and new) and non-members in attendance. The KDE e.V. website says some things about the association, but it’s necessary to repeat regularly as well. So:

KDE e.V. is the association that supports the KDE community by doing what the community needs when the community cannot effectively do that in itself. That includes legal things, like (say) server ownership which isn’t something that can be effectively left to individuals. The members of the association are representative of the entire KDE community, (although we’re developer-heavy — once more I suggest you listen to the KDEMU interview with Anne Wilson to find out how to contribute to the community in other ways). The board of the e.V. can represent the community in contracts and the like. The members show additional commitment to KDE by doing the support work — let’s call it secondary contribution, because it doesn’t directly advance the software, but makes it possible for the software to advance.

Every member of the KDE community is welcome to join the association, though the admittance procedure as described on the e.V. webpage. If you want to support the KDE community as a whole not with time and effort, then the individual supporting membership programme might be something for you (it is for Vincent).

After the BoF it was dinner, football, drinking and dancing and then it was a quarter to five and still light out.

As a consequence, I’ve chosen to stay at my hotel for a bit today in an effort to actually get some writing and hacking done. It’s almost four in the afternoon, so I should head out for breakfast and then over to Demola any time now.

Akademy D-2, in Tampere

Thursday, July 1st, 2010

Arrived in Tampere this afternoon, found Hotel Ville (if you take bus 61 from the Airport, there’s a stop in Hatanpaa right close by), heading out now to meet with the local team. I’ll also find out who is the boss this week: Claudia, Ilkka or Sanna. [[img src=CrudelyDrawnKolourpaintVersionOfIIsAtAkademy]]