I hate thunderbird (and its HTML-only emails)

Apparently, since Thunderbird 2.0, the user now has an easy way to choose to send messages as HTML-only emails, instead of the sane defaults of doing “text only” or “text + HTML”. As a result, lots of Thunderbird users now send HTML-only emails, which are a PITA to read with mutt.

Does someone know if there’s an open bug about reverting that change?

Does someone know of a good strategy to convert HTML-only emails to text emails, preferably pluggable into procmail, so it happens at delivery time? It’s how course possible to read HTML emails using an external HTML viewer, but I can’t find a way to reply to a “stripped” version of the messages.

Make, tmpfs, and [amc]time granularity

As you might have guessed (or not), I’ve been playing with the idea of improving my Debian rebuild setup by building on tmpfs: disk I/O take a signifiant amount of time, that could easily be reduced by building (mostly) in memory.

Most packages build fine on tmpfs: only 8 packages fail only on tmpfs. Apparently, most of the failures are caused by old versions of autoconf: this version used /tmp to store temporary files ; for example, when generating Makefile, it would create it on /tmp, then move it to the current directory. The problem arises when /tmp is an ext3 filesystem, while the current directory is on tmpfs: when moving the file back to the current directory, the mtime of the file is truncated.

This can lead make to think that a given target needs to be rebuilt. A nice example of that is the smuxi package, that just loops when building.

Demo:

# cat Makefile 
f2: f1
        echo "Need to rebuild f2!"

First case: f1 and f2 are stored in the current directory. Make agrees that
f2 was created after f1:

# rm f1 f2 ; touch f1 ; touch f2 ; make
make: `f2' is up to date.

Second case: f2 is created on /tmp, then moved to the current directory. Make thinks that f2 was created before f1 (and is right, according to stat).

# rm f1 f2 ; touch f1 ; touch /tmp/f2 ; mv /tmp/f2 f2 ; make
echo "Need to rebuild f2!"
Need to rebuild f2!
# stat f1 f2     
  File: `f1'
[..]
Modify: 2009-03-08 18:21:08.900237000 +0100
  File: `f2'
[..]
Modify: 2009-03-08 18:21:08.000000000 +0100

Wysiwyg tool to create simple websites?

Hi,

I’m looking for a tool to create simple websites (5-10 pages), only static content (no PHP). Think of the typical small business or sports club website: text + pictures about what they did/do, nothing really complex.

Requirements:

  • usable by a non-programmer who doesn’t want to know about gory technical details (HTML, CSS, etc)
  • doesn’t make it too hard to create a website with a few pages (i.e it should do a bit more than just allowing to create one page)
  • built-in support for (S)FTP uploading of the website, usable by a non-programmer after someone computer-litterate will have set it up. (that’s not an absolute requirement, but would still be nice to have. also, what are the nice graphical tools to do that, currently?)

    I’m asking for two different persons with different needs. So please don’t limit your replies to free software (although it would be nice): cheap proprietary applications might be adequate as well. Regarding platform, Linux, Mac OS X or Windows would all be suitable.

    I don’t think that a CMS is the right tool here: the focus should be put on the content (which won’t be often modified anyway) and its presentation, not on the ease of modification. For example, I’d like to be able to position pictures in a precise way. However, I might be interested in a CMS that is:

  • easy to setup (for a reasonably computer-literate person)
  • extremely easy to learn (a couple hours at most, for a non-programmer)
  • easy to transform into something that looks good

    In your comments, it would be great if you could include examples of what you did with those tools (yes, links are welcomed!)

    Thank you.

  • PhD !

    This blog post is long overdue, but like Lenny, it was finally released. Yes, I defended my PhD thesis on December 4th. So I’m officially a Doctor from the Université Joseph Fourier Grenoble.

    The general context of my thesis is distributed systems, like peer-to-peer systems and applications running on HPC (High Performance Computing) cluster and grids. More specifically, I worked on methods and tools to study such systems, trying to answer the following questions: take a given application that will run on a distributed system. What can we learn or verify about its performance or its characteristics? Will it scale well, even with 1000 or 10000 nodes? Does this app perform better than this another app? Under which conditions? (that’s probably the hardest question, because you need to be able to run both apps under the same conditions if you want a fair comparison!)

    My work involved studying basic building blocks that can be used to study distributed systems, like network emulators (Dummynet, Linux’s traffic control subsystem, NISTNet). I also designed P2PLab, which allows to emulate network-centric peer-to-peer systems using a cluster, targetting experiments with thousands of emulated instances of the application. For example, it allowed to run experiments with ~15000 emulated BitTorrent nodes using 160 real machines.

    So what’s next? Well, my first-priority plan is to make use of my PhD to apply to an academic position (maitre de conférences, i.e assistant professor). If you know an open position where I would be a good fit, don’t hesitate to tell me! Of course, this plan might very well fail (I will know around end of June). In that case, I’ll probably be looking for a job, likely Free-Software-related. Again, if you hear of something for me, ping me!

    Re: GIT sucks

    Scott has several posts about git (1, 2, 3), and the “I worked on this locally, now I want to push this to a remote place where others will be able to fetch it”.

    I’ve been using the following snippet for that. YMMV.

    REPO=reponame
    ROOT=/wheremygitreposare/
    SERV=remoteserver
    git clone --bare . /tmp/${REPO}.git && \
    rsync -avzP /tmp/${REPO}.git ${SERV}:$ROOT && \
    git remote add origin ${SERV}:${ROOT}${REPO}.git && \
    git config branch.master.remote origin && \
    git config branch.master.merge refs/heads/master

    (Please post comments if you can improve it!)
    But I totally agree that this common use case is not well addressed in git.

    Ultimate Debian Database talk at FOSDEM

    Of course, I was in Brussels this week-end, for FOSDEM. I gave a talk about Ultimate Debian Database (slides here) in the Debian devroom. The conclusion was “UDD is ready, go play with it!” so you know what you should do now! FOSDEM in general was great and huge (see the video from Quim Gil if you still doubt that) as usual.

    On a more sad note, the worst talk of the week-end was without any possible doubt Frans Pop’s release team bashing. Nobody is claiming that the release management of the lenny release cycle was perfect: there’s always room for improvement. But given the context and the constraints, I think that they did a very good job. Frans’ talk boiled down to: “The release team doesn’t know what they are doing, I would have done much better because I’m so qualified.” Giving such talks at FOSDEM, in front of an audience with many people not involved in Debian development, is really insulting. To make things worse, he finished the talk late, not leaving any time for questions/discussion, so the audience might be left with the impression that his opinions are representative of the opinions of DDs.

    Date/time anecdotes

    If you don’t know that leap years don’t always happen every 4 years, you really should read about the switch from the Julian to the Gregorian calendar. PostgreSQL’s documentation on the topic is also interesting, as well as the output of ncal -p.

    On a related subject, the insertion of a leap second triggered a few interesting blog posts from Dave Jones (1, 2, 3), and also a Linux bug, reported on slashdot, and already fixed.

    (Yes, that post was mostly an I-need-to-bookmark-this post.)

    State of hardware support in Linux

    I’m getting increasingly annoyed by the state of some aspects of hardware support in Linux.

    My laptop (old Dell Latitude D610, Intel-based with ATI graphics) used to suspend/resume correctly with Linux 2.6.24 (ie, > 95% success rate). Later changes made the success rate drop significantly, and added a problem with kacpid taking 100% CPU because of an interrupt storm. And now, with 2.6.28-rc6, it’s completely broken. (partially documented in bug 11563, but I admit I gave up on this bug, because I’m going to change my laptop soon).

    My desktop used to wake-on-lan correctly with 2.6.24 (but required some hacks, because it wouldn’t wake up if the NIC was DOWNed before shutdown), but changes in the r8169 driver broke it. (documented in bug 9512).

    As a result, I’m forced to run old kernel versions on the two systems I have at home. I can understand that those issues aren’t considered high priority (not everybody use WoL), but the fact that in both cases, they are regressions, worries me a bit.

    How many things are routinely broken during each kernel release cycle? Hardware support is difficult, of course, but are we really doing everything we could to make it suck less? Some things I really would like to see:

    • Distro packages for development kernel versions. For Debian, there’s this repository, but it doesn’t always contain the latest kernel versions. Maybe that’s something that should be moved to a kernel.org umbrella and generalized to all distributions, to provide beta-testers with easy-to-install packages. git bisect isn’t that user-friendly.
    • Funding for driver developers to buy specific hardware. Many drivers cover a wide range of chips/cards, and developers often only have on a small subset of them, making it difficult to debug issues specific to one chip.
    • Better/updated bugzilla on kernel.org. Many bug logs are totally confusing, and cover different issues. They could maybe benefit from new or specifically developed bugzilla features (and more bug triagers, of course).

    Living in France? Not an April member? You are WRONG.

    I’ve been a member of April, the french association for promotion and defense of Free Software, for a bit more than a year, and I often regret not becoming a member earlier. (I was feeling so guilty and shameful about not being a member that I actually postponed becoming a member.)

    Stop feeling guilty and shameful, become an April member today!

    Why Is becoming an April member so important?

    • Clearly, April doesn’t address the same problems as your local LUG. April is a country-wide organization, and it works on country-wide problems. It’s the only group able to work on such problems at this scale (I’m not sure of the situation in other countries, but I think CCC shares a similar role in Germany for example).
    • Each time I talk to people really involved in April (which I’m not), I’m amazed by how powerful they have become. They are able to talk to french or european deputies or ministers’ cabinets, and are considered important. They are doing a fantastic job spreading what matters to us to legislative and executive powers in France and Europe.

    Some of the things they worked on recently (from the top of my head):

    • Lobbying on :
      • OOXML
      • General announcements about politics (Plan France Numérique 2012, aka Plan Besson).
      • European telecom package and HADOPI law (french graduated response) law, through Quadrature du net. (OK, it doesn’t have anything to do with April, but most of the people involved in Quadrature du Net are also involved in April :-)
      • vente liée : the fact that it’s not possible to buy a computer without a Windows license. It’s illegal in French law, but still the de facto situation almost everywhere.
    • Organization of a campaign where candidates to elections in France where asked questions, or asked to sign a declaration about Free Software. In 2007, 8 out of the 12 candidates of the french presidential election answered April’s questions.

    So, really, become a member today. It’s only 10 EUR, and you already know they will be well used. April is trying to reach 5000 members by the end of 2008.

    (Apparently, if you use that address, April will now that you came from me. No benefit for me at all.)