Havoc's Blog

this blog contains blog posts

Tag: tech

GPL + AFL

Since it’s come up at GUADEC, I wanted to post a bit about D-Bus licensing. D-Bus is dual licensed under your choice of the GPL or the Academic Free License 2.1. The AFL is essentially an MIT/X11 style license, i.e. “you can do almost anything” – however, it has the following patent clause: This License […]

Nonrecursive make advocacy

When I set up the Mugshot client build I noticed that the automake manual suggests a non-recursive setup, so I thought I’d try it. I’ve used a non-recursive setup for every project since. The automake manual points to the classic 1997 paper, Recursive Make Considered Harmful, if you want the detailed rationale. My first attempt […]

jhbuild modules for online desktop

I added a jhbuild moduleset for online desktop related modules such as the canvas, local-export-daemon, bigboard, etc. (This post was originally found at http://log.ometer.com/2007-07.html#5)

Ideas that won’t die

gnomedesktop.org linked to a VentureCake article on ways to improve GNOME. While the article covers a lot of ground, as a kind of aside it brings up the age-old “X would be faster if it knew about widgets and not just drawing” theory. I wonder why this theory comes up repeatedly – it is one […]

No More Spaces

If you haven’t seen Marc Andreessen’s new blog, it is very worthwhile. (2015 update: Marc’s blog doesn’t exist anymore except as an ebook, so all links to it below are 404, don’t try to click them. Other than adding this note, this post is the same as it was written in 2007.) Among others I […]

New GTK+ Book

Apress sent me a free copy of Foundations of GTK+ Development by Andrew Krause. On gtkbook.com, Andrew has some sample chapters, supplementary articles, and an eBook version. As far as I know, this is the only up-to-date GTK+ book. It’s introductory-level and strikes a nice balance of tutorial and reference. It goes through the major […]

Finding Your Local Network, part 2

I got a fair bit of useful feedback on my last post about local service discovery. I also have some initial code up and running to illustrate the approach. (This code requires D-Bus 1.1.1 or higher.) For now the code uses a straightforward but probably too inefficient implementation, where each session connects to each other […]

Finding Your Local Network

At Red Hat’s somewhat-in-the-vicinity-of-Boston offices, a few of us have been trying to understand the local service discovery and presence work others have been doing and figure out how we’d use it to do cool things in apps. Today I’ll blog ideas and questions about local service discovery and later I have some additional questions […]

Source Control Insanity

I’ve been known to complain about the number of newfangled source control systems in the past; today it’s really biting me. To build the Telekinesis stack requires 1) cvs 2) svn 3) git 4) darcs and 5) mercurial. I’m thinking of writing something that uses the stack and checking it into bzr, just for completeness. […]

Best D-Bus Practices

Using various D-Bus APIs I’ve noticed all kinds of interesting ideas for how to design them. You should avoid many of these ideas. First, don’t overthink the basic D-Bus concepts. An object path is used to refer to an object. Object means object. Like GObject, java.lang.Object, or your choice of object. But it does not […]