Skip navigation.

Thomas Leonard's blog

Background software updates

Having Zero Install check for updates once a month or so is handy, as it keeps you up-to-date, but it's pretty annoying that you have to wait for the check just when you're trying to start a program. Especially if there aren't any updates available anyway! I've just committed some new code to do the checking in the background, using the D-BUS notification daemon to let you know if there are updates. This screenshot shows what happens when I run Inkscape:

Updates ready to download for Inkscape

GTK editor for Zero Install feeds

I've made the first release of 0publish-gui today. This is a GTK utility for creating and editing Zero Install feeds. This should make it a lot easier to get started. Here's a tutorial with lots of screenshots. Have fun!

0compile GUI

I've been doing some work on the GUI for 0compile, used to build programs from source. Here are some screen-shots showing how we can download and compile ROX-CLib.

SPAM stats

Three weeks ago, after the large amount of comment-spam we were getting, I set it up to record spam attempts in the database. I've created a new known spammers page with the results.

For individual IP addresses, TELEFONICA DE ESPANA is currently winning with 1085 attempts, easily beating Microsoft into 5th place (just 151 attempts). I suspect the picture changes if we group by organisation though, since many of them are using dynamic IP addresses. Any PERL hackers want to write a script to run the results through whois so we can see a proper breakdown?

How I use ROX

Watching how other people use programs often shows you tips and tricks you didn't know. ROX-Filer has lots of features; some are extremely useful while some I almost never use. Here are my favourite features and settings...

GNOME finds save usability problems

Prolific GNOME profiler Federico has been profiling GNOME usability. The results? Saving is a big usability problem. The list of problems sounds almost identical to the motivation for the ROX saving system, itself based on RISC OS. RISC OS users never save files without knowing where, because they have to drag them where they want them.

Imagine a new office worker who tries to file an important document by dropping it on the floor. Pretty quickly, someone will yell at them to learn the office filing system. ROX does the same. Here's what happens if you just enter a name for a new file and press Return in ROX:


Stumbling on Jim Propp's self-referential aptitude test reminded me that I should really get around to learning Alloy (a "simple structural modeling language based on first-order logic", according to its homepage). The examples in the Alloy tutorial work well enough, but I wanted to know whether will also solve problems not chosen by the author ;-)

My final solution came out surprisingly neatly for a first attempt, following the format of the quiz closely, although it took much experimenting to get the syntax exactly right. The only bit I'm unhappy about is the helper predicates for question 12, as I couldn't find an easy way to test for primes, etc. Any Alloy experts out there want to show me a quicker way? slowness

Wondering why X takes so long to start up (and inspired by the smaller source tree since it went modular ;-), I did a little profiling tonight. Turns out that probing the PCI bus is taking quite a while (Debian/unstable's The last call to pciFindNext() was taking 1.7 seconds just to report no more devices!

Compiling with SCons and GTK

SCons is a rather nice build system written in Python. It compiles many languages, including C and Java. But the problem is that not many people have it, and making your code unnecessarily hard to compile by depending on an uncommon build system is not a good idea. In this article I'll show how you can get your build scripts to automatically download (and cache) SCons as part of the build process...

Klik to Zero Install

I've tried installing Klik twice in the past, but the site was down both times. A article prompted me to try it again and this time I got it installed.

Klik's main advantage over Zero Install is the large number of packages available for it. Its main disadvantage is that it's totally insecure. However, I've written klik2zero, a little Python script that creates Zero Install packages automatically from Klik ones.

Syndicate content