Lies, damned lies...

Top edit: on re-reading this post it occurs to me that my intent is not entirely clear. I'm not attempting to show that the Distrowatch numbers are 'wrong' and the other numbers I post are 'right'. Of course, I don't believe that Mandriva is actually ten times as popular as Ubuntu, as the Softpedia numbers would suggest! I'm just trying to show that you can get wildly different numbers by looking at different places, which suggests that no-one's really nailed things down with authority yet. I think the gut feeling of anyone who's been around the Linux world in general for a long time on the relative popularity of distributions is likely to be more accurate than any single statistical snapshot.

Came across some interesting numbers today. Those of a statistical bent, when looking at Linux popularity, tend to wind up with the Distrowatch table, which doesn't make happy reading for a Mandriva person these days - Mandriva is 8th at 911 hits per day, well below Ubuntu and PCLOS at the top. The seven day figures (default is six months) are even uglier.

Of course, when we were on top of this chart for several years we always said it didn't really mean anything, so we can say the same thing now with a straight face: It doesn't really mean anything. It counts hits on Distrowatch's information page about a distribution, which is fine and dandy but really indicative of nothing more than how many people are going to Distrowatch for information about a distribution.

Let's see the other numbers. There's a guy who posts regularly to the Distrowatch Weekly comment threads called Peter. He looks at download numbers from the download server of a particular Australian ISP - Bigpond.

Australian ISPs have extremely tight bandwidth caps. Bigpond allows unmetered downloads for its users from its own server. This means there's a very strong incentive for Bigpond subscribers to download from that server (because the download will be fast and won't count towards their bandwidth cap). This makes it quite a useful test. By those numbers, Mandriva is seventh, with a note from Peter that it's moving up towards fifth or fourth. Ubuntu is first, and PCLOS is way down the list (he doesn't give it an exact place). In terms of numbers, Ubuntu has 1800 downloads, OpenSUSE in second has over 1000, then third is Fedora with around 800, and fourth Debian with around 550. Mandriva has around 450. PCLOS has 130.

Finally, there's Softpedia, a big software aggregation site. Take a look at the list of Linux distributions and sort it by Downloads, descending. Who do you see at #1? Mandriva, with over 180,000 downloads. #2, Kororaa (?!), at 160,000. Ubuntu Edgy is down there in 13th place, and PCLinuxOS is stuck in the middle of page 3 with 2,488 downloads. And no, they're not counting all Mandriva downloads since the beginning of time together - there's entries for older Mandriva editions throughout the list. (Though I think they may be combining 2007 and 2007 Spring).

All just goes to prove the old saying, as in the title. :)

I also wanted to update an old internal mail I did on the Most Pirated Linux Distributions (as taken from popular Bittorrent sites), but Demonoid is down right now, so it'll have to wait for another day...

Reply from Mark Shuttleworth re patches in Debian

Mark sent me a very prompt reply to the mail I copied in my previous post. Good to hear it's something he's already considering.


Hi Adam

Very good to get this message while I'm at Debconf! I've been working to build consensus for this sort of idea in Debian for some time, because as you can imagine, maintaining the delta between Ubuntu and Debian is much easier in cases where the package has split out patches as you describe. I'll use your comments to bolster that argument even further.

Thanks! Mark

Patch and bug collaboration: Shuttleworth

There's an interesting write-up of a speech given by Mark Shuttleworth at the Linux Foundation Collaboration Summit here. Basically, he urges cross-distro collaboration on bug tracking and patching, which is certainly a laudable goal.

Here's the response I mailed to his secretary (you know you're too important for your own good when you need a secretary to read your mail...):

Mark, if you really want to help in this area, there's one very simple thing you could do: push for Debian and its derivations to use a better format for patching packages.

Currently, as I'm sure you know, Debian packages basically consist of the original tarball plus one bigass compressed .diff file which contains:

  1. Every single patch
  2. All the stuff to turn the source into a Debian-style package

This is horribly unwieldy and hard to work with. For instance, take a look at the Firefox diff in Feisty:

http://archive.ubuntu.com/ubuntu/pool/main/f/firefox/firefox_2.0.0.4+1-0ubuntu1.diff.gz

would you enjoy trying to isolate a single fix from that?

In the RPM system, there's a spec file which does the actual package building stuff, and several separate patches which are processed by the spec file. In the best case, there'll be a comment in the spec file or the header of the patch to tell you what the patch does. In the worst case, at least the filename of the patch generally gives you a clue (e.g. appname-gcc4-fixes.patch), and at least since each patch is separate, it's easier to check out each one at a time and see what it does.

To compare with the Debian example, here's the SOURCES directory for Firefox in Mandriva SVN:

http://svn.mandriva.com/cgi-bin/viewvc.cgi/packages/cooker/mozilla-firefox/current/SOURCES/

as you can see - there's the original tarball, and all the patches we apply to the build, each one separate and with a useful name. You'd see much the same thing in Fedora's package.

When I'm packaging something and come across an issue that may be fixed in another distro - for e.g., I'm updating an old package and it has problems building with GCC 4 or on x86_64 or something - the top of my list of other distros to check for patches is Fedora and the bottom is Debian (and Ubuntu). Not because Debian / Ubuntu is unlikely to have a patch or because Debian / Ubuntu's patches are bad - this is obviously not the case - but simply because it's so damn hard to isolate patches from Debian-style packages.

Thanks :)

Work stuff

Biggest work-related news: I've been adjusted to full-time status. Which basically means I get paid more but I also get yelled at more.

Hey, I'll take the cashola!

Various stuff I've been doing - last week I spent a couple of days bussing around Vancouver handing out One CDs (and Mandriva pens) to members of the local LUG. They seemed pleased.

Bug squad work is going well: largely through the efforts of Pacho Ramos (gold star for Pacho!), we've reduced the total of UNCONFIRMED bugs in the MDV Bugzilla from around 4000 to 1000, and we're still trucking. Once the backlog is cleared, we can start concentrating on triaging all new bugs. I need to make a couple of simplifications to the bug policy, then it will be out of draft status.

Stephane Teletchea has been looking at some scripts for generating regular bug status reports, which will be great.

We've got a pretty cool project on the go to make a splash at GUADEC and aKademy, both of which are coming up fairly soon. More details to come :)

Development stuff: I've been carrying on my trawl through outdated packages in /main, and I'm nearly done with the stuff that hasn't been updated since Mandriva Linux 2006 or earlier now. Aside from that, today I did quite a lot of work related to bug 22775, which is about mc: our mc package was hardcoded for various helper apps, some of which weren't packaged in MDV at all. I have packaged all the necessary helper apps that weren't previously packaged (all that are still available and buildable, anyway). I also patched it to build against slang2. More controversially (I expect), I replaced a lot of calls to particular helper apps with calls to xdg-open (at least while X is running). This opens the preferred app for a given file type, as defined by either the user or the running desktop environment.

mc users tend to be quite passionate about mc, so this change may provoke some discussion. it's in cooker /main/testing for now, in case it turns out to be unpopular, but I hope it's a change we can keep and refine for the next release.

Also put up an article on creating music on Mandriva, written by Helio, one of our Brazilian team who works on the KDE team. He has a little musical sideline and he wrote up a great step-by-step guide to making music with nothing but apps available in Mandriva. I proofed it, formatted it and posted it up on the Club. It's definitely worth a read.

I think I'll need to start working on the next newsletter soon...

The joys of packaging

Austin's having a fun afternoon:

(groundstate) trust me, I'm working on gnustep (groundstate) but it's like packaging a sumo wrestler into a Pringles can

Web browser fun

Site upgraded to Wordpress 2.2, BTW.

A chance conversation on the Cooker IRC channel about lightweight web browsers (i.e. there really are no good ones) led me to discover that the GTK+ WebCore project is, in fact, not dead.

Yeah, who knew?

GTK+ WebCore is a port of WebKit, Apple's web rendering libraries (used in Safari), to GTK+. (WebKit, of course, is itself a port of KHTML, from KDE). It was started by Nokia a couple of years back, made one release, and appeared to drop dead. However, I poked SVN and the mailing lists and discovered it's actually been resurrected recently, and is getting quite a lot of work done. Someone's even done a very alpha release of a GTK+ WebCore based browser, named Midori.

So I packaged up the current SVN GTK+ WebCore, including the demo browser, and Midori, and put them in Cooker. Cooker people can play with the midori and gtk-webcore-demo-browser packages. Neither browser is really usable, but they're fun to play with, and they sure are light. The actual page rendering is of course pretty good, as WebKit is pretty advanced and mature by now, but it's very crashy and the browser infrastructure is very basic. Don't try opening tabs in the demo browser or closing them in Midori, as crashes often offend =) And there is, of course, no Flash. Or AdBlock.

I also fixed the roundcubemail package not to suck (it was basically just dumping all the files in /var/www/htdocs and not doing anything with them, which isn't very helpful - now it installs to /var/www/roundcubemail and installs a config file in /etc/httpd/conf/webapps.d, as it should), basically for my own benefit because I'm tired of updating the darn thing manually on my webserver.

And I packaged gambas2, then when I went to import it to SVN, realized Funda Wang's been doing exactly the same thing. D'oh. Have mailed him to see how we can reconcile our packages.

The Bug Squad is about ready to begin work: we have a mailing list and bugzilla admin privileges and are generally ready to rock. Now I just have to carve the existing bug pile up into separate workloads. The mailing list is open to public subscription: just mail sympa A T mandrivalinux D O T org with the subject 'subscribe bugteam'. Then you can spy on us.

Proclamation

I would like to proclaim that 2007 shall henceforth be known as 'the year everyone forgot the difference between 'reins' and 'reigns''.

Seriously, for some reason I see articles all over the place saying stuff like "he has the reigns of power" or whatever. What the hell is up with that? No-one seemed to have any trouble with it last year. Must be something in the water.

fixin'

The simplest approach to being a bugmaster (though admittedly it really doesn't scale well) is just to fix the damn things yourself.

so in the past couple of days, i've done updates / rebuilds for transcriber (and tclex), ayttm, gwget, gretl, pccts and gdis, addressing bugs 26358, 25023, 26200, 19022, 24189 and 26100. mm, smell the fixiness. six down, twenty thousand to go! =)

3D desktop article on Club

Olivier Blin wrote a nice article on the 3D desktop features in Mandriva Linux 2007 Spring. After translation and some proofreading, I've posted it to the Club. Take a look if you want to know more about the features and how configuring them works.

The bug project is progressing nicely: the bug policy has been refined following discussion with the development community and the internal development teams, and I've now written some extra documents, including a Bug Squad page and a triaging guide for bug squad members. I also revised the Bugzilla Howto page, which gives advice on filing bugs, to reflect the new policy.

Some interesting packages: a Club forum member, fsckit, contributed a spec file for a text editor named Scribes. I cleaned it up a little and added the package to the contrib section: it's now available in Cooker /contrib and 2007 Spring /contrib/backports . The top vote-getter on the Club RPM forums was a QT4 slideshow creation tool called Manslide, which is also now packaged in Cooker contrib and 2007 Spring /contrib/backports .