May 11, 2008

Christian Perrier

French over 100% !

If you look at the po-debconf stats pages, you'll see that, as of today, the French translators translated 9693 strings out of 9688...:-)

We are so clever!

This is actually an annoyance on the scripts that generate these pages. Sometimes, in packages, the debian/po/*.po files contain *more* strings than the debian/po/templates.pot files.

This happens when maintainers do not run "debconf-updatepo" in the clean target of their debian/rules files. People, there is a lintian warning for this...:)

We will try to correct this (actually, more Nicolas François than me, indeed) but that will make my stats less easy to do...

So, "sadly", we are indeed only about 99%...

That said, the NMU campaign is still going on. Portuguese is now ahead of Czech (ranked 3rd). Russian passed Swedish and is very close to Spanish for rank 7. And, among the most actives, Finnish and Basque are still climbing up quickly.

03:46P

May 10, 2008

Uwe Hermann

Nine Inch Nails album "The Slip" released under Creative Commons license

NiN

You might have already heard of it — the new Nine Inch Nails album "The Slip" has been released by them under the Creative Commons BY-NC-SA 3.0 US license. Yep, that's right, it's totally legal to download it from the web — and use it for any non-commercial purposes!

It's a bit annoying that they want your email address, though. Nothing that bugmenot.com (or similar) cannot fix, but still. Luckily, the files are now also available from archive.org! This, and the fact that the music is CC-licensed allowed me to "play" one of the songs in my Creative Commons music podcast (RSS), and more will likely follow.

10:59P by Uwe Hermann (Comments)

Steve Kemp

Yea, just look at all the passion on that wall.

There should be a website to coordinate cinema-dates.

I don't like going to the cinema alone and have, in the past, frequently missed viewing films rather than go alone.

This is a habit I'm growing out of, but I still think it is better to go with a friend or two.

In the near future I'm going to view the last Indianna Jones movie, and the Sex & The City film. I have partners for both of those.

But after that? There are a few films which I can't immediately think of who I'm going to lure away with me. I could either :

  • Go alone, regardless.
  • Randomly ask people to come

If there were a site that had list of upcoming films, and allowed you to express interest in going to see them that would be a fantastic idea. (Obviously location based).

I'd not even assume "dating", because I think in my life I've had a first-date at a cinema once. When I was about 14. Because it just doesn't work - you can't talk during, (and back then we couldn't go to the pub afterward to discuss the film. I think we did anyway ;)

For bonus points you could allow people to rate the films, or even each other. Hmm.

Somebody write it for me? I've got too much on my plate ..probably

ObQuote: Se7en

08:00P

Joerg Jaspert

The annoyance continues: Ftpmaster, yet again

Lalala, it’s me again. Don’t shout, it’s not a long post! :)

What did we do since I last dared to post with my Ftpmaster head on? (Yes, I should put a summary of all my blog posts into a Bits from mail sometime.)

  • Fixed some bugs, like all of the waiting Please create/remove pseudopackage FOO ones. So we now have a BTS entry for wiki.debian.org, release.debian.org and the security-tracker.

  • Merged a patch from Thomas so we now correctly reject packages where the maintainer tried to be clever, editing the changes file to get an orig.tar.gz mentioned after forgetting the -sa parameter to dpkg-buildpackage. SIGH. Especially sigh as that ##censored## wasn’t able to understand the format of those lines. Nor did he look, or he would have immediately spotted his mistake. Unfortunately it is not the first time this maintainer broke stuff with uploads he never checked in any way. Including uploads for important packages. Bah.

  • Merged another patch from Thomas, which generally makes NEW look nicer. It drops the unneeded Checksums-foo headers completly, no need that we see them there again, they just waste space and are useless for us. The patch also changes the html files we generate for all packages in NEW, something which I added to dak a few months ago - based on a patch from Thomas. :)

    The stylesheet now applied got sent in from Martín Ferrari who already created the style for the removals page.

  • Done a whole lot of NEW. Yes, I continue to do most of NEW, as I’m still (and possibly for some time) are the one with the most experience and speed in doing it. Thomas is doing NEW too, mostly by picking a few packages and processing them. (Before someone yells - he is doing a very good job with removals and override changes, an area where I haven’t looked much into since he got added to the ftpteam).

  • Did, together with Mark Hymers, a lot of cleanup work in the code, using pychecker and pylint. We only started, but there have been various changes already, like

    • change “import daklib.foo” and then using daklib.function to “from daklib import foo” and then using foo.function. Granted, the Ideal way would be to go “from daklib.foo import function1, function2, function3” (or so), explicitly naming every thing you use. Or even better, make the whole dak fully object oriented. Or so. Or whatever. :)
    • replaced all own string exceptions, which are deprecated, with real exception classes.

    The cleanups we did made pylint rate the code 5.21, with the initial rating (before we did anything cleanup related) was 3.59/10. (As if it would count, but still) :)

  • Added two more headers to mails generated by dak and the queue daemon, X-Debian: DAK and X-Debian-Package: $something, following a suggestion from Bug #479953. Hopefully other tools follow this schema too, at least I announced it on debian-devel-announce, so hopefully it will be taken as a quasi-standard. :)

    Ok, yes, I admit, the queue daemon is currently not adding the X-Debian-Package header. It does add the X-Debian: DAK header, but not the package one. I got a headache when looking at it, its old and grown perl code. If someone wants to send a patch, fine, the bzr repository has it in tools/debianqueued-0.9.

    Update: Now the queue daemin also adds the X-Debian-Package header as I got two patches addressing the issue, in two different ways. Thanks to Stephen Gran and Matt Kraai for their work!

Comments: 2

06:48P

Cameron Dale

apt-p2p 0.1.3: now faster

I have updated apt-p2p to version 0.1.3, which is available now in unstable and my repository (see my previous post introducing apt-p2p).

This update brings mostly speed improvements to finding peers to download from, and performing the download. Nodes in the DHT are now checked for responsiveness more thoroughly before adding them to the routing table, and rechecked more frequently afterwards. This should prevent bad nodes from propagating through the system, and departing nodes remaining in the system long after they have left. Downloading from peers is also quicker, as bad peers are dropped with a quicker timeout value and after a small number of errors. There was also a bug revealed by about 10% of the mirrors that caused downloads to fail, and was fixed in version 0.1.2.

This update is STRONGLY recommended, as keeping unresponsive nodes out of the DHT will make everyone's experience better. If you tried apt-p2p and had some problems, I hope you'll consider trying again now. Unfortunately, these are enhancements I could not predict needing before releasing to the public, as the problems they solve are all caused by having a larger number of users, some of which are unresponsive.

There are still a large number of peers (maybe 50% of them) that are unreachable, and so can not share any files with other peers. I don't have a good way to check yet, but you can go to sites such as this one to probe your client for you. Just enter the remote IP address and port (available on the status page) of your client in the form http://ipaddress:port/ (e.g. http://1.2.3.4:9977/). If the check returns any HTTP headers (even a 404 Not Found response) then you're fine, but if it doesn't return anything then your peer is firewalled or NATted and should probably be fixed.

Here are the changelog entries for 0.1.2 and 0.1.3:

  • Speed up downloading from peers
    • Set a new peer's ranking values so they don't get an unfair advantage.
    • Reduce the HTTP connection timeout to 10s.
    • Drop peers after a limited number of errors.
  • Speed up the DHT requests when nodes fail
    • Schedule a re-ping message after adding a new node.
    • When a node fails, schedule a future ping to check again.
    • Send periodic finds to nodes that are stale.
    • Increase the stored value redundancy to 6.
    • Increase the concurrency of DHT requests to 8.
    • Add early termination and ignoring slow responses to recursive DHT actions when timeouts occur.
  • Remove the debconf note about port forwarding (Closes:#479492)
    • Add a NEWS entry for port forwarding
  • Fixed a bug in the HTTP downloader that caused errors with some mirrors that always close the connections (Closes: #479455)

04:28P

Wouter Verhelst

New lens

As a sort of birthday present to $SELF, I got myself a new lens for my camera yesterday. Well, new—it was a a second-hand lens. In Merksem, apparently there's a photography shop that sells second-hand photography material; so I sold them my 18-55mm lens which was the kit lens of my Nikon D50 (I also have a 18-70mm one which outperforms the 18-55mm in all aspects except weight), and got me a Sigma 28-300mm (f/3.5-6.3) for about €150. That's before subtracting the €25 that I got for the 18-55mm.

The new lens isn't better than the 18-70mm in all aspects (it's not very good for objects close to the camera), but it's a good tele zoom.

So today, with this great weather, I went to the nearby nature area of the "Oude Landen", and tried out the new lens.

I love it.

Bird leaving

Dead tree

Really.

03:15P

Julien Danjou

You fragged...

This made my day.

02:21P by jd

Daniel Burrows

Breaking radio silence

We've spent the last week and a half moving out of the bizarre twilight zone known as Redmond into the city of Seattle proper. This cuts down on my commute tremendously (although poor Kate has to do the opposite of what I used to do each day), and it's great to be able to walk to the grocery store whenever I want. It may also mean that I'll cut back a bit on my Debian work in favor of actually having a life.

Half my stuff is still in boxes, so I'll be busy with this move for a while longer, but at least I have Internet and email access again now.

04:38P

Adeodato Simó

Some soap for some mouths

One of the people who most fiercely fought software patents here in Spain and Europe jokingly (?!) uses the word “fag” to insult random people he dislikes. (But so do tons of other people I don’t interact with, of course.)

I used not to be annoyed by this at all, but tonight I felt differently, and it really bothered me (possibly because it was somebody from my community who did it). Life is easier when you don’t care, I guess, but I think it’s a good thing that I care now, since without such caring things can’t and won’t change.

02:20P

May 09, 2008

Nacho Barrientos Arias

Yay, you won!

Some people are born to be a winner, you‘re one of them. Congratulations dude! ;)

08:38P by nacho (Comments)

Adeodato Simó

Soooo, I won

As I mentioned, this week I’ve been in Sevilla as a finalist for the 2nd edition of a Free Software contest. Each participant at this stage made a presentation of their project, and this afternoon the winners were disclosed. I’m happy to share that Minirok won the 1st prize in its category, yay!

Also, Dudesconf was simply terrific — I’m so happy I could attend this year. And, as for every conference, eternal gratitude to the organizers: people from GPUL, you simply rock!!

05:42P

Amaya Rodrigo

Of life and vermin

One morning, when Gregor Samsa woke from troubled dreams, he found himself transformed in his bed into a horrible vermin. -- Metamorphosis by Franz Kafka

04:24P (Comments)

Matthew Garrett

My previous entry was somewhat misleading in one respect - the discussion of the power consumption of a downclocked processor. The problem is that nowadays, halving your CPU frequency doesn't halve the power consumption (see the figures in Arjan's slides from OSCON last year, for instance). I'm assuming that this is due to the cache size on modern hardware being sufficiently large that it dominates the power consumption of the processor. Dropping the frequency doesn't reduce the amount of power required to keep the contents of the cache alive, so the saving is less than you'd expect. Deeper C states disable the cache and save much more power.

So, if halving your speed means everything takes twice as long but doesn't even halve your power consumption, what's the point in having P states at all? There's a certain amount of latency and power involved in moving between C states, and if the choice is between rapidly cycling between full speed and C4 or just sticking at low speed and maybe dropping into C1 or C2, then executing code at the lower performance state may be beneficial. The ondemand governor takes this into account by looking at the amount of load on the processor over time, so if this doesn't hit a threshold value it'll assume that you're better off staying at the lower performance level.

03:25P (Comments)

Alexis Sukrieh

TinyMCE 3.0.8 entering Debian

I’ve uploaded a new major release of TinyMCE into sid, the package jumps from the 2.x branch to the new 3.x one.

For the record, packages that use TinyMCE should rather depend on that packge instead of shipping the sources itself.

08:51P by sukria (Comments)

Peter Van Eynde

On the legality of hacking the iPhone

The Belgian minister for Economy was seen with an iPhone recently. However Apple does not sell these things in Belgium.

So he got a little call from a journalist, according to him the only entity that could make him stop using a liberated iPhone is Apple and "until I get their summons to the court I'll continue using it" he then continued "and according to the people I spoke to, this is perfectly legal".

That was almost worth the 2 hours drive through the worst traffic ever...

12:49P by pvaneynd (noreply@blogger.com)

May 08, 2008

Matthew Garrett

Modern CPUs are great. They have all sorts of advanced power saving features, which is one of those nice cases where everyone can save money, gain performance and claim environmental credentials at the same time. Everyone's a winner.

Well. Everyone's a winner as long as your software doesn't suck.

I've talked about the benefits of the tickless kernels and reducing wakeups and spending longer in deep C states before, so if you don't know about them then go and read that first. This time I'm going to focus on a different level of hardware, and a different level of suck.

For a long time, laptops supported changing the speed of processors when switching between AC and battery. CPU power consumption is proportional to frequency, so dropping the frequency meant a longer battery life. Of course, it also meant that it took longer to get anything done - the reason this was still a win was because CPUs in those days consumed just as much power when idle as when running. Transmeta introduced a technology called Longrun with their Crusoe processors, bringing the ability to drop both the frequency and the voltage of the CPU simultaneously. With power consumption being proportional to the square of the voltage, even a small drop resulted in worthwhile power savings. As the only really worthwhile thing Transmeta brought to the x86 world[1], this was unsurprisingly ripped off by everyone else. Intel introduced their Enhanced Speedstep, AMD gave people PowerNow and VIA have Longhaul.

Obviously, reducing the frequency of the CPU increased battery life. Everyone's happy?

No[2].

The problem is that nowadays, processors don't consume as much energy when they're idle as when they're running. The aforementioned C states mean that an idle processor consumes a tiny percentage of a loaded one - an ultra-low voltage Intel part will draw on the order of a watt. Executing code, even at the lowest voltage and frequency, will draw far more power. Obviously, we want to keep the processor idle for as long as possible. The easiest way to do this would be to never run anything, but that's not a real option. The alternative is to run when we have to, but make sure that we get it over with as quickly as possible so we can return to the idle state. Counterintuitively, that means switching to the highest voltage and frequency, executing the code and then dropping back into the idle state. By going faster, we save power[3].

In summary, the only sensible way to use a CPU is to run it as fast as possible in order to let it idle as much as possible, and drop the frequency and voltage when it's not doing anything. The. Only. Sensible. Way.

Some people write software that lets you choose different power profiles depending on whether you're on AC or battery. Typically, one of the choices lets you reduce the speed of your processor when you're on battery. This is bad. It is wrong. The people who implement these programs are dangerous. Do not listen to them. Do not endorse their product and/or newsletter. Do not allow your eldest child to engage in conjugal acts with them. Doing this will reduce your battery life. It will heat up your home. It will kill baby seals. The sea will rise and your car will float away. If you are already running it, make sure that it always sets your cpufreq governor to ondemand and does not limit the frequencies in use. Failure to do so will result in me setting you on fire[4].

The only legitimate reasons for limiting the speed of your CPU are to avoid overheating (which should be fixed in the kernel, really - having userspace in charge of ensuring the continued functioning of the machine is madness) or to make the machine quieter. And if you want your machine to be quieter, there should be a tickbox marked "Reduce performance in order to reduce noise" or something, which would take into account all the sources of heat in your machine rather than just your CPU. Encouraging the managing of acoustic levels by asking users to restrict the functionality of their CPU is just another way of saying "Look! We suck!". Letting the user choose a specific CPU governor or a specific frequency is not a useful thing to do. Don't do it unless you want to see dead kittens. Delivered by UPS.

[1] And, presumably, whatever else Intel and everyone else ended up licensing off them which resulted in their reinvention as an IP company rather than a CPU one, but that's just not interesting to me.

[2] Even ignoring the people that are unhappy for entirely unrelated reasons, such as injured toenails or the brutal murder of their family

[3] There's a corner case here, which is a system that is always entirely CPU bound. Say we halve the CPU's speed. Along with the voltage drop, that gets us down to about 20% of the original power consumption. Of course, it now takes twice as long to do anything and your screen, RAM, hard drive, chipset and so on are still drawing power, so will end up costing you twice as much power as they would have done if you'd run at full speed. If you do the maths, it works out that you save power if your processor's full-speed power consumption is more than 1.7 times that of the rest of the platform. In the real world, things are made more complicated by the rest of your platform consuming more power if you're working over a longer period of time - your hard drive is going to end up spending more time spun up, your memory bus is going to be active for longer and so on. You're basically not going to hit this case.

[4] While the burning of your body will result in carbon emissions, the reduction in power usage should offset this in the long run

11:19P (Comments)

Thijs Kinkhorst

Great leaps of innovative progress developments!

My previous entry features the first ever comment on this blog to arrive over IPv6. Fantastic! I guess this will be the final breakthrough that the protocol needed!!

07:28P by thijs@kinkhorst.com (Thijs Kinkhorst) (Comments)

Jon Dowland

command history meme

The command-history meme seems to have finally died a death (or maybe Im not reading in the right places).

One thing I couldn't help to notice was that the most common two commands for virtually everyone were cd and—usually right behind it—ls.

I'd wager that often, the ls follows straight on from the cd.

For some time at work, I've had the following in my ~/.bashrc:

cd() {
	builtin cd $@ && ls -lhrt
}

This might well break some things, I'm not sure, but it's saved me a bit of typing.

11:02P

Stefano Zacchiroli

vcs distribution stats for packaging

Some more stats: $VCS distribution for Debian packaging

I've set up yet another stat page, this time it's about the distribution of $VCS for Debian packaging. It's as trivial as you can imagine: it gets all the Vcs-XXX fields out of unstable Sources and plot how many packages are using a given $VCS.

I've got no surprises in the relative popularity of $VCS: subversion is clearly the most widespread (with about 2700 packages on a total of about 13000) and git is growing (700 packages); with the exception of bzr (90 packages), all the other are used by less then 50 packages. Thanks to Lucas I've also included graphs in the page, as I think it would be interesting to monitor the evolution. (Probably as everybody) I'm confident to see an increasing trend for git balanced by a decrease of subversion, we'll see.

The total number of packages using some $VCS is encouraging, we are at about 29% of the archive (you know that if your package is not declearing some Vcs- headers in its source stanza I'm not counting it, right? Go add the headers!).

Interesting side effect: as I'm now maintaining a handful of these stat pages, I was pondering «hey, we should create a wiki page with pointers to all the stat pages about Debian we have». Well, in fact it already exists: Statistics on wiki.d.o.

09:02P

Andrew Pollock

[life] Tour de Cure

Sarah and I are doing the Tour de Cure again this year, like we did in 2006, again as part of the Google team.

This time around we're doing the 50 kilometre ride, since the 25 kilometre one was a bit of a cakewalk. That said, the fitness levels of both of us are pretty abominable at the moment, so it'll be interesting.

So this is the obligatory grovel for donations. If you'd like to make one, you can do it at http://tour.diabetes.org/goto/andrew_pollock

Here's what I'm not spamming people with:

I recently accepted the challenge of cycling in the American Diabetes Association's Tour de Cure fund-raising event. The Tour de Cure is a series of cycling events held in over 80 cities nationwide. The Tour is a ride, not a race; it features different route lengths from a leisurely 10-mile course to a demanding 100-mile journey. I have joined thousands of others to pedal in support of the Association's mission: to prevent and cure diabetes and to improve the lives of all people affected by diabetes.

I am asking you to help by supporting my fund-raising efforts with a donation. Your tax-deductible gift will make a difference in the lives of more than 20 million Americans who suffer from diabetes and another 54 million people in the United States with pre-diabetes.

Any amount, great or small, helps in the fight against this deadly disease. I greatly appreciate your support and will keep you posted on my progress. If you want to do even more to help, please consider joining me in this great event. Our efforts will help set the pace in the fight against diabetes.

More information on the American Diabetes Association, its programs and diabetes in general can be found at the Association's Web site: www.diabetes.org.

For more information on Tour de Cure, please visit www.diabetes.org/tour.

05:24P by Andrew Pollock

Andrew McMillan

Finally: DAViCal 0.9.5

Finally, I have released DAViCal 0.9.5. Hopefully this will resolve the series of installation- and upgrade- related problems which plagued the 0.9.4 release.

Thanks for everyone being patient while this release was thoroughly tested through five pre-release versions, and especially thanks to those patient people who helped test those pre-releases.

Now if I don't get too distracted by:

... then maybe I will be able to really concentrate on nailing the scheduling extensions work over the next couple of months...

Wish me luck!

03:29P by andrew (Comments)

Gintautas Miliauskas

Europanto

This made my day! Here's an excerpt if you're too lazy to click on the link:

"Als humanos, tambien nations, after seine geborn, become bambinos und grow adult. Aber als humanos, sommige nations never become adult und necessite psychiatrico help", dixit once Sigmund Freud aan Herr Kanzelier Otto Von Bismarck attemptante de le convince que Germania eine tumultuosa puberty was traversante.
Otto Von Bismarck ignored die wise parolas des fader des psychanalyse und wat happened aan Germania next, wir know mucho well.
Die freudiana diagnose noch todag applicable und validissima est, by exemplo, por wat Grosse Britannia betreft. Eine nation die encore play mit kleine soldatos und make carnaval parades out des season, mature est suremente nicht.
Wat pushe flegmaticos aged britannicos de dresse in hooliganicos costumes und parade mit tambouros und trompettes in der nordirlandico landscape? Sicheremente eine mucho neglected mentale desease.
Eine people waar hombres can wel dress in skirts, waar animals habe more rights dann mensen, waar man drive op de wronge side des strada, must echtemente seriose problemas van personnality habe. Eine people die nicht only play cricket und darts, aber les regarde tambien op TV, bastante insane must definitamente esse.
(...)

There are more texts in this, er, language, on the Europanto main site.

Edit: fixed link

03:08P by Gintautas Miliauskas (noreply@blogger.com)

May 07, 2008

Jon Dowland

Nine Inch Nails - The Slip

I would not blame the people I speak to regularly for getting some kind of fatigue regarding Nine Inch Nails. It seems like a week hasn't gone by this year without something happening: a single, an album, or tour dates.

It didn't come as much of a suprise that a new album was released in it's entirety this monday gone. ID3 tags in previously-released singles said "watch nin.com on 5th of may". It wasn't even that suprising that the whole album was free, either.

What was a suprise, to me at least, was that this album is fantastic. I'd heard two tracks prior to the album being released (although one only by a few days). Whilst I enjoyed them, they were pretty safe, lyrically and musically. They didn't push any boundaries. They also did not forshadow the album at all.

This album is the best Nine Inch Nails release this century. It's too early to tell whether it stands higher in my estimation than 1999's The Fragile. If so, it's the best release since 1994. I had not even considered this a possibility.

I also think it's the best album to present to someone who isn't familiar with their work to see if they'd like to look for more. It has a good range of tracks covering loud, aggressive, introspective, instrumental, dancable, dark and delicate.

I'm now starting a self-imposed ban on listening to the album, so as to not overdo it too much so early on. Regardless, I can still hear The four of us are dead playing over and over again in my head. This is a strong candidate for my favourite NIN song ever. It made me think of what the Cure should be writing.

Each track in this release (like each of the 36 tracks in the last album) have their own unique embedded picture in them. There is scant software in Debian that can handle these, unfortunately. I think "tagtool" can add and remove art. Amarok copes admirably. Rhythmbox doesn't, unless you apply this patch, which is stagnating in gnome's BTS, unfortunately. For the lazy (with 32bit x86), here's a tarball of a recent-ish rhythmbox rebuilt with this patch. I'd supply a Debian package but I didn't feel like building the documentation at the time.

I haven't found a single program for the n800 that can handle the artwork.

11:47P

Christian Perrier

Bug #480000

Roberto Lumbreras reported bug #480000 on Wednesday May 7th.

As bug #470000 was reported as of March 8th 2008, we're still keeping nearly exactly the pace of 2 months for 10,000 bugs, so 60,000bugs a year. Bug #500000 should then be reported around Sept 7th 2008. As a consequence, the candidates for winning the 500000th bug contest are still Miguel Gea or Kartik Mistry. Jacobo Tarrio has his chances, though.

I haven't done any MBF to keep chances of winning the contest myself.

See you around July 7th for bug #490000!

07:08P

Steve Kemp

You're not too technical, just ugly, gross ugly

Well a brief post about what I've been up to over the past few days.

An alioth project was created for the maintainance of the bash-completion package. I spent about 40 minutes yesterday committing fixes to some of the low-lying fruit.

I suspect I'll do a little more of that, and then back off. I only started looking at the package because there was a request-for-help bug filed against it. It works well enough for me with some small local additions

The big decision for the bash-completion project is how to go forwards from the current situation where the project is basically a large monolithic script. Ideally the openssh-client package should contain the completion for ssh, scp, etc..

Making that transition will be hard. But interesting.

In other news I submitted a couple of "make-work" patches to the QPSMTPD SMTP proxy - just tidying up a minor cosmetic issues. I'm starting to get to the point where I understand the internals pretty well now, which is a good thing!

I love working on QPSMTPD. It rocks. It is basically the core of my antispam service and a real delight to code for. I cannot overemphasise that enough - some projects are just so obviously coded properly. Hard to replicate, easy to recognise...

I've been working on my own pre-connection system which is a little more specialied; making use of the Class::Pluggable library - packaged for Debian by Sarah.

(The world -> Pre-Connection/Load-Balancing Proxy -> QPSMTPD -> Exim4. No fragility there then ;)

Finally I made a tweak to the Debian Planet configuration. If you have Javascript disabled you'll no longer see the "Show Author"/"Hide Author" links. This is great for people who use Lynx, Links, or other minimal browsers.

TODO:

I'm still waiting for the creation of the javascript project to be setup so that I can work on importing my jQuery package.

I still need to sit down and work through the Apache2 bugs I identified as being simple to fix. I've got it building from SVN now though; so progress is being made!

Finally this weekend I need to sit down and find the time to answer Steve's "Team Questionnaire". Leave it any longer and it'll never get answered. Sigh.

ObQuote: Shooting Fish

01:02P

Thijs Kinkhorst

16% is not that much

A survey has shown that 16% of youth doesn't know why we're celebrating the 5th of May. According to quality news show Editie NL, this is a worrying fact. Well, is it? I find it rather reassuring that appearently 84% of the younger generation do know that 5 May is about the libration from German occupation (I remember now that I forgot to thank the Canadiens when I was there two weeks ago). 16% is not much: if you get a 16% discount you're usually not making a great deal. Actually, I would be very surprised of a survey that would show that less than 16% of people are completely ignorant of the world around them. These same people probably would't know the connection between the colour of the national team's shirts and the royal house, or be able to tell whether St Nicolaas is a protestant or catholic. Or the ones that claim money because -6 is larger than -5.

Every country has its fair share of "challenged" people. Also in recent news is that Barack Obama is losing votes because he admitted to eating rucola (arugula) from time to time. Voter's "reasoning" boils down to "if I don't know what that is, then a president that eats it can't be trusted". It gets even more sad when you realise that these people probably do know it, but don't realise they call it rocket. Great way to lose votes.

12:38P by thijs@kinkhorst.com (Thijs Kinkhorst) (Comments)

Joerg Jaspert

New toy

I’ve got a new toy yesterday - a Nokia N95 8GB. It’s a nice little gadget (for a fucking insane price, but the contract makes it less painful) and the first mobile phone I own that I got combined with a contract for two years.

Now, I do hate phone calls, but still, my old mobile got more and more broken, so I did need a replacement. I guess the old device didn’t like falling down on the floor multiple times. And when looking at my mobile phone costs for the last year (using prepaid stuff only), well, the contract isn’t more expensive in total (some 9EUR / month now).

This N95 thing is something crazy - it has more features built in than all my previous mobile phones had together. It also has a better camera than my one dedicated camera device. The only part where it loses is the included audio player - but just because my real player has 5 times the storage size, runs rockbox and is able to play for about 35hours in a row.

One “fun” thing is - I got the phone together with the contract from a reseller of some reseller of some big fat company (very weird sub-company thing of the resellers, as far as I understood it. Not that I care too much). Getting it directly from that company would have meant to pay more than 200EUR more, for less value! Thats just insane.

Anyway, enough. I’ve sent my new number (didn’t want to port my old one this time, for various reasons), to those people in my addressbook that I think should have it. If you think you need it too and didn’t get a message - ask me. (And my old number will continue to work for some month anyways, I just wont look at it that often. Joys of prepaid cards and their lifetime). (And to those who went like *WTF is that Jörg guy messaging me?” - its me! :) )

Comments: 1

11:20P

Ondřej Čertík

snapshot.debian.net saved me again

On one computer I am taking care of, I suddenly started getting:

$ ps2pdf fa_808.ps fa_808.pdf
/usr/bin/ps2pdfwr: line 45: exec: gs: not found

What's wrong?

$ ls /usr/bin/gs
ls: cannot access /usr/bin/gs: No such file or directory
$ wajig find-file /usr/bin/gs
ghostscript: /usr/bin/gs
$ wajig list ghostscript
ii ghostscript 8.61.dfsg.1-1 The GPL Ghostscript PostScript/PDF interpret
ii ghostscript-x 8.61.dfsg.1-1 The GPL Ghostscript PostScript/PDF interpret

That is really weird, the file /usr/bin/gs is simply missing, even though I have the ghostscript package installed. Ok, let's reinstall it:

$ wajig reinstall ghostscript
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
libwine-capi libstdc++5 libopenal0a xgnokii libglut3 libcapi20-3
libggi-target-x lib64gfortran2 libsvg1 lib64gomp1 libggi2 libgii1
libgii1-target-x libxine1-gnome cups-pdf lib64objc2
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
akregator gs kaddressbook kaddressbook-plugins kalarm kandy kappfinder karm
kate kcontrol kdebase-bin kdebase-data kdelibs-data kdelibs4c2a
kdepim-kfile-plugins kdepim-kio-plugins kdepim-kresources kdepim-wizards
kdesktop kghostview kicker kitchensync kleopatra kmplayer kmplayer-common
kpersonalizer ksplash libarts1c2a libgnutls26 libgs8 libilmbase6 libkcal2b
libkdepim1a libkleopatra1 libkmime2 libkonq4 libkpimidentities1 libktnef1
libopenexr6
Suggested packages:
kdeaddons-doc-html ntpdate ntp-simple perl-suid egroupware ffmpeg xawtv
gnutls-bin
The following packages will be REMOVED:
digikam kde-amusements kde-core kdeaddons kdebase kdebase-kio-plugins kdepim
kmail kmailcvt kmplayer-plugin knights konq-plugins konqueror
konqueror-nsplugins korn smb4k
The following NEW packages will be installed:
gs libgnutls26 libilmbase6 libopenexr6
The following packages will be upgraded:
akregator ghostscript kaddressbook kaddressbook-plugins kalarm kandy
kappfinder karm kate kcontrol kdebase-bin kdebase-data kdelibs-data
kdelibs4c2a kdepim-kfile-plugins kdepim-kio-plugins kdepim-kresources
kdepim-wizards kdesktop kghostview kicker kitchensync kleopatra kmplayer
kmplayer-common kpersonalizer ksplash libarts1c2a libgs8 libkcal2b
libkdepim1a libkleopatra1 libkmime2 libkonq4 libkpimidentities1 libktnef1
36 upgraded, 4 newly installed, 16 to remove and 683 not upgraded.
Need to get 53.1MB of archives.
After this operation, 42.9MB disk space will be freed.
Do you want to continue [Y/n]? n
Abort.

Oops, unstable is broken at the moment. Ok, what now? Well, snapshot.debian.net comes to rescue again. Find "ghostcript", version "8.61.dfsg.1-1" and here we are:

$ wget http://snapshot.debian.net/archive/2008/03/02/debian/pool/main/g/ghostscript/ghostscript_8.61.dfsg.1-1_i386.deb
$ wajig install ./ghostscript_8.61.dfsg.1-1_i386.deb

And all is fine now:

$ ls /usr/bin/gs
/usr/bin/gs

02:38P by Ondřej Čertík

May 06, 2008

Jesus Climent

Visiting Ireland

1st of May is in most civilized countries a bank holiday (term that means “if you work for a bank, you dont have to go to work” and is closely similar to a standard holiday).

Ireland prides itself for moving the holidays to the morning after, so you can enjoy a long weekend, and did we: rented a car, took off and visited the country side. Well, right after we exchanged seats, since apparently one cannot drive here on the left side of the car.

The country is in much better state than the 10 years old Lonely Planet describes: good condition signaled roads and a B&B on every other corner. From Dublin we jumped to Kilkenny were we had a beer (guess which one) and enjoyed a concert on a pub, since they had some festival going on. It also meant we had to stay a bit far from the center.

Moving south from Kilkenny we visited Waterford and from there we moved all the way to Cork, for a small visit. Lara lives there, and we had a great chocolate and some food after paying a visit to the cathedral.

After deciding not to spend the night in the city we headed towards Old Head. That was a great plan. The view from the cliffs in there is impresive. Pity they have a golf course which will not allow you to reach the tip.

One night over in Timoleague, after a beer in the local pub and we headed back to Dublin. A nice relaxing weekend away from the city.

The best: sunny countryside, getting away for a while, B&Bs (mostly the second B).

The weird: driving on the left, requires loads of concentration not to make mistakes and shifting gears with the left hand is not great.

The worst: having to jump from B&B to another one looking for a bed. Also it made it interesting, since we never knew where we were going to end.

11:25P by data (Comments)

Matthew Garrett

One of the advantages of working in a biology lab is getting deliveries of stuff in dry ice and getting to play with the dry ice afterwards. Sadly, while dry ice is clearly very cool (a-ha ha ha ha ha (dies)) it makes a lousy way of cooling down your drinks[1]. With a latent heat of sublimation of merely 199kJ/kg, CO2 draws less energy out of the liquid than ice's latent head of melting of 334kJ/kg. That's easily dealt with by using larger blocks of dry ice, but the fundamental problem seems to be that most of the sublimed CO2 boils straight out of the glass and just gently cools the atmosphere instead. Maybe ethanol cubes are the way forward.

[1] Much like Red Stripe, it is also a lousy fabric softner.

10:48P (Comments)

Marc 'HE' Brockschmidt

Perl5.10 transition

We are currently having the fun of a perl update in unstable - most packages have been rebuilt and work just fine, now cleaning up the mess starts. Please don't expect perl to enter lenny in the next few days. Also, hold back on the uploads of perl packages or SONAME bumps, thanks. For the moment, I'm keeping my todo list in my hint file. If you would like to help out, just pick one of the bugs listed there and do the work, thanks :)

08:51P by marc+s9y@marcbrockschmidt.de (Marc Brockschmidt) (Comments)

Steve Kemp

Only after disaster can we be resurrected

I leave my main desktop logged in for months a time; as demonstrated by my previous bug with the keyboard transition for xorg.

The screen is setup to lock after 5 minutes of idle, so there's no real security issue, and it is extremely convenient.

Every few weeks though my desktop gets into a funny state where no new windows may be opened.. Existing applications continue running without any problems, but no new windows/shells/whatever may be opened.

Tonight it happened again.

And the lightbulb went on in my head: My flat uses CFEngine to manage itself. (Two physical servers here, with 5-10 Xen guests, and a number of remote servers.)

One of the things that CFengine is configued to do is to tidy directories of files which are older than 30 days. Including /tmp.

So that explains that.

Every month the magic cookie in $TMP would be nuked, and X would disallow new connections.

I guess the next time this happens I should look at using Xauth to fix the issue, but generally I just logout, make coffee, smoke a cigarette, and login again.

In conclusion: I'm a stupid-head.

ObQuote: Fight Club

07:25P

Julian Andres Klode

News on debimg


Well, you may have noticed that debimg 0.1 is still not released. But a lot of work happened over the weekend in my local branch.

First of all, debimg’s set support is almost finished. I uploaded a tarball containing the differences between the official lenny weekly build from yesterday and a build created today by debimg, using the tasks of debian-cd 3.0.4 (after manual conversion to a format supported by debimg). Look at http://jak-linux.org/cdimage/tests/ for the tarball.

Secondly, the dependency resolver has been rewritten. It’s a bit slower now (0.72 seconds for main), but creates much better results. Resolving the dependencies of all packages in Debian Lenny i386 in alphabetical order, debimg 0.0.X resolved 206 dependencies differently than apt. Now, these have been decreased to 15 dependencies, whereas 13 dependencies are false-positive (some packages were not installed because they were already installed). This means that only two ones were different, in this caseachims-guestbook and chdrv, which both depend on virtual-only packages (achims-guestbook: apache | httpd, chdrv: console-utilities).

The third big change is the addition of the hooks module. This module allows you to hook in custom functions, which have access to the Configuration object (ConfigObj) and the MediaSet. There are currently three types of hooks: pre_hooks (run before fetching packages, adding files to the disk), mid_hooks (run after the packages have been fetched) and post_hooks (run after the image has been built). Hooks can be added based on project and architecture, using a simple syntax which support shell patterns. (It’s ‘project/arch’). The hooks module uses python decorators to register functions. debimg 0.2 will switch to hooks for internal functions, too, like bootloaders and other stuff.

The code has not been merged into the master branch, but I will hopefully be able to merge it tomorrow. The release of debimg 0.1 is now planned for this weekend.

06:21P by Julian Andres Klode (Comments)

Otavio Salvador

Why multiple vendors collaboration rocks - s390 parted bug solved

It’s nice to be able to count on friends across vendors. The two new Parted Team members, Joel Andres Granados Moreno and Bryn Reeves from Red Hat, has been working with me to solve the s390 error that was blocking Debian to move to latest parted release (1.8.8 up to now).

They’ve had a hard time to identify the real problem and we helped each other for those past two weeks. That’s awesome to be able to share the work load and be able to get help to solve problems. Even more when this is done for a very important software like Parted.

I do believe this is the way to go for Free Software projects… maybe others could learn from that?

Cheers

06:04P by Otavio Salvador (Comments)

Wouter Verhelst

Pathetic

When you're 5, you're living with your parents. If not, you're probably in an orphanage, waiting for adoptive parents.

When you're 10, you're living with your parents. If you're not, something is very wrong.

When you're 15, you're living with your parents—although you'd probably rather live elsewhere.

When you're 20, you're most likely still living with your parents; but if you don't, that's nothing to be ashamed of.

When you're 25, you've either moved out, are doing so, or are thinking about it.

When you're 30 and you still live with your parents, you're pathetic.

At least that's the way I look at it.

As of today, I'm officially pathetic.

Won't be for long, though—it's just taking slightly longer than initially expected to make the appartment habitable. Stuff left to do:

  • Attach some plaster to one wall, closing the holes in it
  • Paint that wall, and one other which had to be treated for water damage first
  • Finish up the kitchen: attach doors, connect electricity, glue everything together, attach baseboards
  • Close water pipe shafts again
  • Actually move in

Except for the "connect electricity" bit and the final step, that should all be doable in about a day, if I hurry.

It's about time.

09:13P

Russ Allbery

Debian status

Tonight, I converted the XML-Security-C package from Stanford's internal Subversion repository to Git and packaged 1.4.0, but unfortunately I can't upload yet because Xalan needs to be updated to build against the latest Xerces-C. (I'd NMU, but I should not be taking on more things right now.) This is the first of the three current Shibboleth packages, and I hope to tackle OpenSAML and Shibboleth SP tomorrow or Wednesday.

An Alioth project for Shibboleth packaging now exists and the pkg-shibboleth-devel mailing list is being created. I've requested Git space on git.debian.org, and as soon as that's set up, I'll push the three existing repositories. Shibboleth 2.0 packaging will add at least three more packages (OpenSAML 2.0, Shibboleth SP 2.0, and another XML support library), possibly four if we have to package log4shib, but I still hope to use the standard log4cpp. And then there will be another couple of packages once the group packages the Shibboleth IdP and WAYF, which I hope someone with more Java experience can tackle.

One of the main goals for getting this set up is so that people other than me can do more of the work so that I can work on other things. Like, for example, krb5 packaging. Bastian Blank started using the Kerberos server packages and posted a whole flurry of bugs, a couple of which are (somewhat arguably) RC, and I'm trying to absorb that and fix the ones I can ASAP.

OpenLDAP is in desperate need of attention, but I don't feel as much responsibility for that. I said going in that I'd only have time to work on it in fits and starts, and just because no one else has any time to work on it either doesn't change that. However, I do need to find time to post an RFH, since it really needs an active maintainer, and I'll at least find time to upload the upcoming 2.4.9 release before lenny freezes more, since the current version has a ton of bugs.

Frank Lichtenheld has been doing a lot of the work on Lintian lately, which is wonderful, but I still have at least 10 bugs and patches that I want to deal with as soon as possible for it and get another upload out. We're well over my magic threshold of 100 bugs, and a lot of the stuff that's in the BTS just needs to be reviewed and committed.

And then there's Policy, which is just about ready for an upload, and where I owe several responses on bugs and discussion threads. It's in the best shape right now of the stuff on my hot list, but there really should be a new upload in May, and preferrably in the first half.

The current goal is to get the two other RC bugs against the Shibboleth packages dealt with in the next couple of days, then do a krb5 upload before the end of the week, and then Policy and Lintian are back at the top of the list, insofar as work lets me concentrate on anything else.

BTW, I have to say, the more I use Git, the more I'm becoming a convert. I still think I'd rather use quilt if I have complex merges. Ironic, given that that's supposed to be Git's strength, but I have fifteen years of experience merging patches and I really understand how quilt works. That may mean I'll change my mind when I become even more familiar with Git. But for the typical package with a small number of divergences from upstream, I'm getting the hang of managing those on branches and I think I like it.

I've yet to see a good reason to use rebase instead of merge, though, at least as part of a Debian packaging workflow. So either I'm still not getting something, or many of the people using Git are way more obsessive than I am about their branch merge graphs (which is weird, because I tend to be remarkably obsessive about things like that). I suppose if I ever get to using git bisect, that may change my mind.

06:10P

Matthew Palmer

Distributing Ruby Programs

06:01P

Christian Perrier

What to do if catched by the "l10n NMU" patrol ?

It might happen that you (I mean you, gentle reader of this blog) being a Debian developer or maintainer, just receive one of my numerous "Intent to NMU to fix pending l10n bugs" or "Announce of the upcoming NMU of ". The first gives you 10 days to react....then I send the latter which opens an 8 days translation update round.

In such case, as the carefully written template for these (pretty long) mails says, please DON'T immediately upload. Speak to /me instead so that we coordinate the translation update round. That will also allow me to send you possible QA enhancements I found in your packaging while trying to build your package *and* translators to send more material.

Some (rare) maintainers just uploaded immediately after getting these mails and they're now getting what could be expected: they're receiving new translations...and are then likely to be catched pretty soon by the patrol, again..:-).

The "intent to NMU" mails are sent to the i18n mailing list and some translators find this to be a good opportunity to send translations in their language (that's why Finnish, Galician are for instance climbing up pretty quickly in statistics).

The main intent of these NMUs is to get updates done, not doing NMUs so, of course, I will welcome uploads...it is however more efficient to coordinate them.

03:21P

May 05, 2008

Wouter Verhelst

Microsoft on installing PHP and Perl

On their "get the facts" site (as if), Microsoft recently posted a set of screencast demonstrating how much "easier" it is to install Perl and PHP on IIS than it is on Linux.

Being bored, I had a look at these screencasts. The first covered installing stuff on Windows; in a 5 minute screencast, they first explain how you install ActivePerl, and have it handle perl scripts for a webserver through a CGI interface. This involves way too many steps to remember for me (including clicking through a wizard, going to the IIS management interface and enabling it, creating a directory and enabling that in the IIS interface as a CGI location, and more).

Next, they do the same for PHP. Since they install PHP as a CGI binary rather than an ISAPI module, the setup isn't as complex—they conveniently reused many of the settings they'd done for perl—but it still required quite some steps.

After having watched this screencast, I was wondering how they'd make it look harder on a Linux system. My guess was that they'd use Slackware and would compile apache, perl, and php from scratch or some such.

That didn't turn out to be the case, however. They used ubuntu.

To make the process look complicated, they refrained from using synaptic, instead opening an (almost full-screen) shell window, in which they use apt-get to install the libapache2-mod-php5 package. They conveniently also first installed the wrong version of apache, so that it would do all kinds of magical and confusing things. Really, however, after having installed this package, everything works—and they show that.

The perl step should have been ignored. After installing apache on Debian or any of its derivatives, such as Ubuntu, support for Perl CGI scripts has already been installed and configured. Configuring that requires exactly zero steps. However, they still install libapache2-mod-perl, just to make it look a bit more confusing. It's not a very bad idea to do this, actually; installing mod_perl makes serving Perl scripts go quite a bit faster. But if you just want to have apache serve perl through CGI scripts, as they'd done on the IIS setup, all you need to do is install ubuntu, and make sure there's an apache installed. Period.

But that's not all. They cheat. The installation of the perl and php modules on ubuntu includes the process of downloading the binaries and their dependencies; on the Windows screencast, the downloads have already been performed, and are placed on the desktop. This nicely avoids showing how you need to go to the ActivePerl and PHP websites, track down installers, download them, wait for your download to complete, and then manually start the installation process.

To make things even more laughable, they install Perl and PHP as CGI handlers on Windows, but perform an installation of the same software through apache's C API. In other words, they told you how to install a fast and useful Linux system, and how to install a slow and less useful Windows installation (since a PHP setup that uses CGI will not support sessions or persistent database connections, amongst other things).

And even with all that cheating and blundering, the Windows screencast still takes 5 minutes, as compared to the four for Ubuntu.

I think Mahatma Gandhi forgot one line in his famous quote. It should have this:

Then they make complete and utter fools of themselves in a vain attempt to still look relevant

... right before the "then you win".

07:05P

Jonathan McDowell

RIP John Magirr

My grandfather (my last living grandparent) was found dead in his flat today at 11am. He lived alone in Liverpool (his choice; my mother had offered to help him move to Newry in the past but he hadn't wanted to) and when my uncle failed to get hold of him yesterday for his weekly phone call he became worried. When there was still no response this morning my mother called the police who ended up breaking down the door of his flat. He was apparently found in bed, which hopefully means it was quick and without suffering.

It's been a while since I was close to him; when I was much younger he would take me into the centre of Belfast when he visited and we would wander round, always ending up with a trip to the Electronics Centre, where I would disappear into large boxes of pruck, and Anderson & MacCauley's for lunch. More recently I haven't known what to say to him, which was a bit of a shame.

He died aged 81, with all his own hair and possession of his mental faculties, which doesn't seem like bad going. I think he would have found it very difficult to have had to rely on others to live his life, so perhaps in some ways this was better. *sigh*

06:04P

Jeff Bailey

Life Update du moment

Physio:
I got to do cardio last Friday! Yay! For the first time it feels like I'm doing *real* exercise. 5 minutes on the elliptical and 10 on the bike. I've also gone from the yellow theraband to the red one on all my exercises. I've got another month at three times a week, and still every visit I'm coming away so much improved. The physio also mentioned that she's been going easy on me because until 8 weeks past the surgery, things aren't healed up enough to do real work. Well, we just passed 8 weeks, so I think tomorrow we'll be doing some actual weight training. We'll see how we go.

Techy stuff:
I'm hunting for something interesting to hack on. I've been digging a bit through the SoC lists, and I think I'm either going to just do a bunch of grunt janitor work on gcc, some hacking on eglibc to see if I can help make it small enough to seriously compete with uclibc, or I also emailed one of the Python folks who said that they were looking for an XMPP server written in Python 3.0. I got a cryptic reply of "Keep pinging me, I'll get some time eventually". So that might be a doomed project with people who don't actually care about the result. Too bad, I thought it might be a fun way to learn what's new in Py3k.

Other:
I've started going through and pruning back my friends list on Facebook. At first I friended pretty much anyone I'd ever met. I've come to use it to see how the people I care about in life are doing through their status updates, so I'm getting rid of people who's statuses I just don't care about. It seems kindof mean, but oh well. I'd really like the list to be made of people who, if they posted "I'm having a crappy day", I'd phone them up to chat with them and hear how things are going.

Leif's still cute. Angie's still sexy. Home life in that sense is pretty much the same as usual. We don't have people visiting us every weekend, but I'm well enough and we've gotten used to the shifted work loads that we're generally managing now. What we desperately need is a Roomba that will shampoo the carpets for around Leif's highchair. Ugh.

The local used bookstore actually has French kids books. Apparently the Barnes&Noble in Palo Alto also has a French section. So, we'll hopefully be able to teach Leif at least a little bit of French while we're on the opposite side of the continent. Yay!

05:02P (Comments)

Christian Perrier

The "call for l10n updates" week-end

Last week-end, I sent several calls for translation updates for some key packages which I maintain localization for: apt, menu, noticeably. Also sent a reminder for Debian Installer beta2 even if Otavio already did so.

That will continue over next weeks, of course along with the running l10n NMUs for which the pace is now about 2 packages per day.

It's also good to see many package maintainers send call for l10n updates now in debian-i18n. One enhancement for the next release cycle will be avoiding to concentrate these during the last weeks/months of the release. Translators are not super(wo)men...:)

03:34P

Jeff Licquia

Damned If You Do

JROBI, a chess blogger, on energy policy:

A large study in Europe concluded that it takes more gas and oil to produce a bottle of bio-fuel than it does to produce a bottle of gas. What does this mean? It means that Bio-Fuel is more damaging to the environment in the long run, and on top of that it is driving up the cost of basic food supplies. Millions and millions around the world in a number of countries are unable to afford the rising food costs for basic staples like Corn, and for what?

If Bio-Fuel is not better for the environment, why are politicians and environmentalists getting behind this growing industry? I think it’s because it seems to be the “trendy” thing to do, and we all know what happens when the media promotes a new trend. We get tons of media coverage telling us why it’s a good thing, and hardly any coverage of the negative impacts. Already people from the Bio-Fuel industry are getting on television shouting out that there are many factors contributing to rising food prices, trying to deflect the fact that their destruction of food to fuel vehicles is the main culprit.

Actually, I suspect the emphasis on biofuels in the USA and Europe has to do with the fact that it’s the only alternative to fossil-based motor fuels proven to be sustainable and scalable:

The success of FFFVs, together with the mandatory use of E25 blend of gasoline throughout the country, allowed Brazil to get more than 40% of its automobile fuels from sugar cane-based ethanol in 2007.

I see no link to the European study in question, but previous studies have suffered from various faults; for example, the assumption that trucks transporting fuel cannot themselves shift to biofuels. I’m sure better analysis of the study is on its way.

But that’s not the most interesting thing, to me. More interesting: my general impression that a lot of the climate-change hysteria is just that.

If we hear what science seems to be telling us about the environment, and we think that something needs to be done, then we should do things that will actually work. One thing that really works is conservation: use less of the bad stuff we’re using. But we’ve done quite a bit on that front, only to hear that much, much more is required to make a difference. I’m not sure there’s much, much more benefit for us to realize in conservation, at least in the short term.

So, to make a real difference, we have to make more radical changes. Can we change our motor fuel?  Sure; starting with something that pollutes less, and that even absorbs some of that same pollutant in its production, sounds like a winner.

JROBI, again:

It makes no sense whatsoever to create Bio-Fuel when there are much better options on the table - for instance Hydrogen vehicles. When was the last time you heard someone on the news talk about Hydrogen initiatives?

I hear it every so often. But most talk, today, focuses on the very real problems with hydrogen as a motor fuel. There are many; just look at the discussions of hydrogen fuel tank technology for a sample. But one of the biggest problems is that of developing an infrastructure for delivering fuel to the customer.

No one talks about the problems of setting up an ethanol infrastructure. We already have it. Brazil has demonstrated that the current gasoline infrastructure can easily be adapted to deliver ethanol instead, and that there is a viable migration plan for gradually moving people off fossil fuels.

Now, this isn’t to say that the world of ethanol is hunky-dory. It’s arguable that, while ethanol may be sustainable, the corn-based system the USA has adopted isn’t. Some people are talking about sensible tweaks that may solve the food problems while continuing to support biofuels–removing our silly tariff on Brazilian ethanol, for example, or developing alternative feedstocks for ethanol production.

The problem is that hysteria seems to be breeding hysteria. Global warming is so severe, we are told, that we need solutions, and we need them immediately. So we develop solutions we can use immediately. But no! These solutions cost; we need something else, and we need it immediately, and we need it cost-free.

Practically, this kind of insistence on perfection–that we deploy solutions with no drawbacks, only benefits–has the effect of dampening our enthusiasm for environmental solutions. We tried, our leaders will tell us, but nothing was good enough, so we gave up. And so, rather than do something that helps, or even something that lays the foundation for helping, we continue our use of fossil fuels.

Perhaps ethanol is the wrong solution. But if it is, we should resign ourselves to the inevitability of the future, as foretold by science, or fervently hope that the global warming deniers are right, because other solutions will arrive too late to do much good.

12:29P by Jeff Licquia (jeff+blog@licquia.org)

May 04, 2008

David Nusinow

Upside Down

Things have been strange lately. I've been taking an official indefinite vacation from Debian due to real life priorities making it impossible to participate in the project at the level that I want, which just led to frustration. Mainly, I just haven't had the time to work on X properly, so I'm leaving it to the rest of the XSF for a while. This makes me sad, but they've grown in to a fantastic team so I know they'll keep doing a killer job while I'm away.

I have had some time though, just not enough to follow two major projects like X.org and Debian, so I've been trying to leverage it in productive ways. Perhaps the most notable is that I've been spending most of my time coding Smalltalk using Squeak now that it's in Debian. Squeak has its flaws, but it's very fun to work with and Smalltalk is probably my favorite language at this point, displacing Ruby. This shouldn't be too big a surprise, since Ruby consciously inherits a lot from Smalltalk. Squeak is a good environment, but I don't feel too compelled to write desktop apps in it because they feel so displaced from the rest of the system. GNU Smalltalk will hopefully fix this in time. As a result though, I've been doing my first bit of web coding in a very long time. The main reason for this is the incredible Seaside framework built on Smalltalk. It's been a lot of fun to play with, and although it's very underdocumented, there's enough out there (especially with the new book) that I've used to get going. Right now I'm trying to learn AJAX techniques as well, which is something I never thought I'd be doing.

As a result of learning Smalltalk, combined with past experiences, I've been trying to learn emacs, and switch a lot of my text editing over there. I came to realize that the reasons I chose vim over emacs many years ago aren't really holding up any more, and now that I've got a lot more of both UNIX and coding under my belt that it's time to reevaluate the decision in a more intelligent way. Vim has been great to me over the years, but I found it constraining when trying to work on very large and difficult trees like the X server. I'm hoping that emacs will do a little better, since I like the way it handles multiple buffers better. Additionally, the purity of Smalltalk "all the way down" has made me appreciate the emacs architecture of lisp (almost) "all the way down" and I'm looking forward to making use of it. It's been a painful transition so far, given the years of muscle memory I'm trying to change. I've been avoiding viper mode to really try and learn emacs, which has made it even harder. I don't know if I'll end up using emacs after all is said and done, but at least I'll have a better idea of how the two major editors really compare for my own use.

With all these changes things have been a little strange lately. Debian was the rock that I've clung to over the past few years, and not being totally entrenched in it has felt unnerving. Combining that with very new and different ways of working has been a rather large change. One thing is for certain: it's been very good for me to take a break for a while and work on small things at my own pace rather than try to keep up with large projects. People burn out all the time in the free software community, and I think that disconnecting and working on small fun things is a great way to heal.

11:55P (Comments)

James Morrison

Open cores

The OpenCores website is down :(

10:09P by Jim

Blogger

It has been a while since I changed the template I used for blogger. Mostly since I had a couple minor things on my page, I didn't want to remove. However, I changed to using the "Layout" instead of a template, and I must say, I am rather impressed. It is now every easy to change the layout of my blog. So that I am not too positive about Google (it is a fun place to work :), the "Google Profile" available through reader sucks. If my friend adds something with a feed to her profile, it doesn't get automatically added to my subscriptions.

10:09P by Jim

Jonathan McDowell

Switching to Movable Type

Since I noticed the Movable Type Open Source release I've been considering switching over to it; my Blosxom install is just a tad crufty and I wanted something that wasn't going to require a lot of effort (it's hard enough to get round to posting these days without having to worry about the underlying system). Dom's packaging of MT and Ganneff's switch gave me some confidence it might be a sane move, so here we are.

Of course the style now completely conflicts with the rest of my site (I should probably update it all, but I don't really do HTML/CSS so it can wait for now), there's still no real content and I've no doubt broken a whole bunch of links (which I'll try to fix up as I notice any that are used a lot), but I've kept putting this off and the longer I do so the worse it'll get.

(I might have some real life things to blog about, but they all seem to be in the RSN category and there's no point talking about them unless they actually happen.)

05:48P

Andrew Pollock

[debian] On the tense of changelog entries

Holger was wondering what tense people write their changelog entries in.

I'm pretty sure I always write mine in the past tense.

04:56P by Andrew Pollock

Stefano Zacchiroli

core has landed in Debian

Jane St. (OCaml) Core in Debian

As recently announced, core has landed. It is an alternative/extended OCaml standard library developed by Jane Street Capital. At first sight it looks like ground breaking: a well-engineered standard library fixing several shortcomings of OCaml legacy standard library, both in terms of missing functionalities and syntactic sugar (e.g. the monadic operators which everybody was basically re-defining from scratch in their own code).

After a day-n-half of work I'm proud to announce that core is now available in Debian. It took me a while as we were missing several of core dependencies.

Overall, the resulting new 5 source packages are bin-prot, ocaml-res, janest-core, type-conv, sexplib310. All of them as been uploaded to experimental; beside sexplib (which went through NEW in just a few hours!!), the other 4 are sitting in NEW. In the meantime you can take the packages from my people.d.o space.

I haven't yet uploaded them to unstable because some more audit is required for dependencies (e.g. I haven't build them in cowbuilder due to some annoyance related to the current Perl 5.10 transition).

The only annoying aspect of the whole business is that bin-prot is ATM supported only little endian architectures, and this is inherited by core ...

02:24P

Cameron Dale

Introducing apt-p2p: a new P2P apt downloader

After many long months of planning and work, I have completed another peer-to-peer downloader for Debian. If you've been keeping track, that makes 2 now. This one is called apt-p2p, and as of yesterday it is available in unstable.

The functionality is very similar to the first one I wrote, DebTorrent, so if you've used that one you should feel very comfortable. After installation you just add a localhost:9977 to the start of your sources.list entries (see the man page). The only difference is the port number (DebTorrent uses 9988 by default) and that you can use it on all your sources.list entries, whether they be deb, deb-src, official Debian archive, or any other archive. Then an apt-get update gets it started, and you can begin installing packages. Point your web browser to http://localhost:9977 to see what's going on.

IMPORTANT: as with any P2P program, it works much better if you open a port through your NAT or firewall. Without this crucial step, you won't be able to share with any peers, and your lookup of peers to download from may take longer. Make sure to forward both TCP and UDP ports 9977, or whichever port you set in the config file. For more details, see the port forwarding section of the FAQ.

The similarities with DebTorrent are all external, so let's look at how it differs from DebTorrent internally:

  • it's very general, it doesn't matter what you're trying to download, a source package or a Packages file, from constantly-updated unstable or a year-old stable, for i386 or hppa architectures (DebTorrent only works for .deb files, is only supported for the official archive, and breaks downloaders into groups by architectures)
  • it doesn't require anything other than what's available to apt (DebTorrent uses piece hashes of large files, and ordering information, both of which are downloaded separately)
  • it can be very fast when downloading from mirrors (mirror downloads with DebTorrent are not so fast)
  • the code is simple, and makes use of available code, such as Twisted, Khashmir, and python-apt, which should make future enhancements and maintenance easier (DebTorrent is large and monolithic)
  • requires less memory and CPU power (50% to 75% less memory than DebTorrent)

Here's some technical details for those interested:

  • makes use of hashes to uniquely identify files
  • uses a Distributed Hash Table (DHT) to find peers
  • also stores piece hashes in the DHT for efficient downloading
  • uses HTTP/1.1 requests to download from peers
  • no peers available causes it to fallback to a download from the mirror

Though I know it can be fast, I'm not yet sure if the peer lookup in the DHT will be quick enough to keep up with the downloading. All my tests so far show that it is, but until there are a number of peers out there trying it, I can't be sure. Also, I have some improvements in mind to enhance the speed, in particular the wait for a timeout to occur, so this may improve in the future. If you see a delay in downloading where apt seems to be stalled saying 'Waiting for headers', for now be patient and see what happens. It may be that apt-p2p is downloading in the background (it does this sometimes), or that it's waiting for a lookup in the DHT to complete. If it hangs for more than a minute, or there's errors in the log file, please file a bug so that I can look into it.

Finally, for you DebTorrent fans don't worry, I haven't given up on it. Stay tuned for more info on it coming soon.

07:10P

Matthew Palmer

Spam Filter Developers and Administrators: Dumber Than The Dumbest Person On The Internet

For the past couple of days, one of my e-mail addresses has been some spammer's choice for forged From: lines in their spew. So, as invalid addresses aren't high on a spammer's list of priorities, I get all the bounces. The fact that MTAs, in this day and age, don't have SMTP session recipient validation is unpleasant. However, with ISPs requiring all outgoing e-mail to go through their own servers, I can kinda see where that can break down. I still don't like it, but I'll live with it.

In amongst all the bounces, though, there's a lot of other, really obnoxious, crap. So far, I've had five "please click this link / reply to this e-mail so it'll go through" (AKA "please filter my spam for me")[1]. I've also had a large number of e-mails saying that my e-mail was blocked or unwanted or whatever, from spam filtering programs themselves.

What I haven't got any of, as far as I can determine, is any e-mail from enraged recipients saying "stop sending me this crap!" or anything of that nature.

The only conclusion I can reasonably draw from this data is that users know that source addresses are forged and there's no point replying to them, but the people whose job it is to write, maintain, and run spam software don't. That's downright embarrassing. Not a single user was dumb enough to assume that I really sent the e-mail, but IT "professionals" who deal with spam for a living are.

If you are in any way involved in the production, sale, or use of an anti-spam product that hasn't realised that the from addresses of spams are universally forged, please shoot yourself in the head. Really. I'm sick to death of people who should know better doing the most stunningly stupid things regardless.

If you don't know that your software is spamming the rest of the world, then you're still on the hook. What other dumb shit is your system doing that you know nothing about? On the other hand, if you do know that your spam filter is contributing to the noise, you're even worse -- no spam has a real source address. If your software or system spews crap because some clueless manager told you to do it, then you need to grow some courage and ponder on the words of Napoleon:

A commander-in-chief cannot take as an excuse for his mistakes in warfare an order given by his sovereign or his minister, when the person giving the order is absent from the field of operations and is imperfectly aware or wholly unaware of the latest state of affairs. It follows that any commander-in-chief who undertakes to carry out a plan which he considers defective is at fault; he must put forward his reasons, insist on the plan being changed, and finally tender his resignation rather than be the instrument of his army's downfall.

In other words, if you did it and you know you shouldn't have, it's still your fault, regardless of why you did it. Take some responsibility for your actions, for fucks sake.


[1. Every single one of which I was more than happy to confirm -- if you want other people to do a job for you, you have to deal with the fact that some of them might not do it in quite the way you expect. I encourage anyone else who thinks that an anti-spam system that requires the rest of the world to filter your inbox is stupid (even disregarding the likely problems of infinite loops if everyone had a challenge-response inbox) to do the same.

05:02P

May 03, 2008

Matthew Garrett

It turns out that I was insightful four and a half years ago, and I should damn well listen to my own opinions.

11:50P (Comments)

Steinar H. Gunderson

Debconf 8

Joey,

I sort of recognize your situation, at least the part about legitimising it; in my case, however, it's against my employer. How do you convince your employer to let you spend a week for a conference where you don't present, there are no proceedings and there's no list of presentations you can point to and say would be beneficial to your work?

09:33P

Ben Armstrong

Sister project in Ubuntu to Debian Eee PC

I was pleased to learn through Christer Edwards of the existence of a sister project in Ubuntu to our Debian Eee PC project. I followed up on his invitation to drop in on their irc channel and introduce myself. I’ve been looking over the bugs listed on their TODO to see if any are applicable to Debian. Already I have filed #479217 based on the corresponding bug in Ubuntu, and have encouraged them to check out ours as well. I look forward to sharing more with them in the future so we can benefit from each other’s work.

05:58P by Ben Armstrong

Matthew Garrett

People rarely ask me about my amazing ability to remove fruitfly ovaries in under 10 seconds. "This skill makes me strangely attracted to you" they then inevitably fail to add, thus giving the lie to claims that a PhD in biology is a great way to impress women. In order to avoid future social embarrassment I have therefore decided to provide a step-by-step guide to removing ovaries from any fruitflies you may have to hand.
  • Feed your fruitflies. Fruitflies like yeast, so give them a pile to munch on. A well-fed fruitfly is a happy fruitfly.
  • A happy fruitfly is a fertile fruitfly, and has bigger ovaries. Since fruitflies are small, this makes your job easier.
  • Knock your fruitflies out with carbon dioxide. When doing this, ensure that you don't knock yourself out with carbon dioxide.
  • Separate your fruitflies into male and female flies. Female flies have larger abdomens and striped posteriors - male ones are thinner and have solid black markings.
  • Dispose of the males. They don't have ovaries. Local laws may make it awkward for you to release animals from laboratory environments, so dump them into a bottle of ethanol. They'll probably die happy, to the extent that fruitflies can really be happy.
  • Etherise the female flies. When identifying ether, try not to do so by smelling it.
  • Once the female flies are thoroughly dead, transfer one to a small watchglass containing a quantity of phosphate buffered saline with a small quantity of detergent in it. Place this under a low magnification microscope.
  • Grip the neck of the fly with a set of needle-nosed tweezers. Grip the very rear of the fly with another set of needle-nosed tweezers.
  • Slowly move the tweezers apart. If you are lucky, the abdomen will split and you'll start pulling out internal organs. If you're unlucky, the head will come off. In this case you should move the first set of tweezers further down the body and try again.
  • Continue pulling out internal organs until you find two objects that look like bunches of bananas. These are the ovaries, with each "banana" being an egg chamber containing an egg and associated support cells.
  • (If your fruitfly contains no ovaries, it's not a female. Try again)
  • Carefully separate the ovaries from the other chunks of tissue that are stuck to them, and transfer the ovaries to a tube containing phosphate buffered saline.
  • Repeat until you run out of flies. Note that towards the end, it will become tempting to just tear the flies into small pieces rather than removing their ovaries. Bear in mind that the aim is to obtain fruitfly ovaries, not to kill flies. There are much easier ways of doing the latter.
  • Dispose of the remaining bits of flies in accordance with any relevant legislation. Do not throw remaining bits of flies at coworkers.
  • Fix the ovaries in formaldehyde and suspend in methanol. Freeze at -20°C.
See? It's all very easy.

(Note: This protocol involves chemicals known by the state of California to cause cancer, birth defects and general fucked-upness. Do not ingest methanol unless you want to demonstrate competitive inhibition in the form of a bottle of vodka. Value of fruitfly ovaries may go up as well as down. Do not taunt fruitfly ovaries)

02:41P (Comments)

Steve Kemp

Please don't let them be as boring as Brian's friends

I made an emergency release of the chronicle blog compiler yesterday, after noticing that it was truncating titles containing periods.

That was a bit of a mea-culpea moment, but I guess mistakes happen.

The new release is in perfect shape for Lenny, and now includes two new scripts installed into the examples/ directory:

The latter was applied to my own blog, and I discovered several duplicates. I guess my film quotes having only a limited source collection to work from could also include duplicates - so I've updated my Makefile to only build and rysnc my blog if there are none detected.

(In many ways that films site is the precursor to this blog; it uses a collection of text files, one per film, and generates a cross-linked HTML output of film entries. Sadly it is out of date, because entering titles is a real pain..)

Chronicle Comments

I'm pleased with the comment process now though, the CGI comment submission script simply archives each submitted comment into a "comments/" directory on the webserver.

There a cron-job passes each one through a bayasian filter and moves the file(s) to either "comments/good/", "comments/bad/" or "comments/unsure/".

When I come to rebuild the blog I rsync the "comments/good" directory to my local machine, rebuild and then rsync the output back to my remote webserver.

(On a single machine this would be much simpler process!)

I've imported my blog source into a mercurial repository, so the client-side is consistent. I have a bad habit of making new postings from wherever I happen to be and having a central repository will make that less prone to diaster.

Just running "make steve" against the Makefile is sufficient to rebuild everything and sync it to my live system.

ObQuote: Kalifornia

02:41P

Russ Allbery

Kerberos v4 ending soon

This Thursday, we did the largest part of the final phase of Stanford's Kerberos v5 migration. Our account services database system has now moved from Solaris to Debian, from Oracle to MySQL, and from Kerberos v4 to Kerberos v5. This has a lot to do with why I've been exhausted this week (I've worked over 50 hours and will probably do some more work this weekend).

We're at the very end of a project that's been ten years in the making. Stanford first deployed Kerberos v4 in 1992 using the Transarc AFS kaserver as the KDC, with the full intention that it would be temporary until we moved to some Kerberos v5 implementation, probably Transarc DFS. Sixteen years later, we're finally turning off the OpenAFS kaservers and going to Kerberos v5 exclusively on May 15th.

Various people at Stanford have been working on this project fairly continuously since the late 1990s, particularly Booker Bense and Roland Schemers (Roland has now moved on to other things). I started taking responsibility for it about five years ago and it became my major project three years ago when we finally got funding to finish it. It's the biggest project of my career to date.

When we finally got funding and I was able to start working on it for a substantial percentage of my time, I went into the project with the intention to solve the large problem and do it right whenever possible. That meant trying to enhance the software where it was deficient rather than working around it, solving the large problem, and trying to improve the world and not just Stanford. Stanford University has been extremely supportive of that goal, and as a result, what's come out of the last three years is a bit staggering to look back on.

I was feeling rather down earlier tonight, mostly because I'm exhausted. It's been a very intense past six months, a very tiring week, and I've not had the energy and attention for other things that are important to me. But I started thinking about everything that we've been able to do as part of this project and realizing just how big this is and managed to cheer myself up a lot. Five years from now, ten years from now, thirty years from now, this is still something that I'm going to be proud of. That's a great feeling.

I was going to write up more specific details of how to tackle a project like this and do it right, listing some of the concrete results as examples, but yeah. Exhausted and low energy. Maybe I'll just do it over the next two weeks as a lead-up to May 15th. Immediately after that I'm going to the AFS and Kerberos Best Practices Workshop in part to talk about many of the things that we've written.

And then, for the first time in three years, all of my major projects will be cleared and I'll have several months to catch up on everything else, recover, and gather my thoughts before deciding what the next big project will be.

08:01P

May 02, 2008

Joerg Jaspert

More boring ftpmaster posts

Lets go on your nerves again with a ftpmaster post about work I’ve done in the recent past.

  • The already mentioned move of britney. And it seems that this did help, so something that should have been done way earlier already… Oh well.

  • Enabled a few triggers for the qa user on merkel. While I already mentioned them in my first post, there is a third one now. The qa user now gets notified at the beginning of the dinstall run, so the pages can show why packages might not be visible in the archive and in incoming right now.

  • Split up the insanely huge mbox files we had as the ftpmaster mail archive. They got that big because the monthly cronjob rotating them got disabled when the ftp-master archive went away from raff, and noone bothered to reenable that job. Done now, so we are back to a manageable size. (Even if 90% of the content is spam, no matter how much greylisting and blacklists are activated :( ).

  • Just committed a largish change thats nothing more than a cleanup. Someone in the past did love to not care about tab versus spaces for the indentation, so dak code ended up with a mess of tab/space mix for indentation. Which is not nice, one style is way better. Fixed that with the help of reindent.py, which one can find in Pythons examples.

  • Got the code on security.debian.org to use the latest dak revision from ftpmaster. It was a few commits behind, but worse - it did have one dak tool changed in a way that it only worked on security, no longer on ftpmaster. Also some files that clearly have been copied by scp -r or rsync, but not using the VCS that should be used for it. Args. Brrrr. The “fix” was a simple check if that value the code wants to use from the config file actually exists, instead of blindly assuming it will always be there.

  • Generally looked around on security.debian.org, to get more familiar with the setup there, so I can work on a request I got from some members of the security teams: Run a queue daemon that manages the upload of the packages from the security archive to the normal archive (so they end up in proposed-updates). Currently it is done with some lftp calls within the script that does the security install, and that seems to break every now