Bela Lugosi's Dead, Jim Below are the 20 most recent journal entries recorded in the "Richard Kettlewell" journal:

[<< Previous 20 entries]

April 18th, 2009
08:20 pm

[Link]

Build Tools

There are a couple of scripts I've written to help me with development of DisOrder (and of other things).

polybuild

polybuild can build multiple programs on multiple computers; it produces a HTML “scoreboard” showing the results. I've been using it for a while from time to time to ensure that changes made in one place haven't broken something elsewhere. Here's an example while a build is underway:

For each platform, the left column is for the build (./configure and make) and the right column for tests (make check). Grey means hasn't started, yellow means underway, green means success and red means failure. As you can see, VCS is having some trouble on some of the platforms. The various symbols (other than “?”) link to logfiles containing the relevant build output. Here's the final state:

(heceptor, my FreeBSD machine, doesn't show up because it's turned off. Since I know this perfectly well its invisibility doesn't matter to me, but obviously this would be a problem for some users.)

stabilize

stabilize is rather more recent. I use it to maintain a disorder.stable branch that tracks disorder.dev; changes are only pushed from the latter to the former when the branch can pass make check. It also emails me if anything has gone wrong, so if I didn't bother to run the tests myself (they take quite a while) then I still find out within the hour that I made a mistake.

stabilize has no associated pretty pictures l-)

Both are quite optimized for my particular setup, but it should be at least possible to use them more widely. Also both only support Bazaar but they could be adapted to other version control systems.

Both can be acquired by:
bzr clone http://www.greenend.org.uk/rjk/bzr/rjk-buildtools.dev

Tags: , ,

(Leave a comment)

March 22nd, 2009
08:38 pm

[Link]

GTK+ OS X

I tried building the DisOrder GUI, Disobedience, against GTK+ OS X (i.e. native GTK+ support, no X11 required).

Having the menu bar in the window rather than in the normal OS X menu bar is rather weird, but presumably that's fixable. It doesn't produce an application bundle yet either; it might be worth waiting until the GTK+ libraries are more stable before attempting that. Drag and drop is the only thing I've found that doesn't work so far.

Tags: , ,

(1 comment | Leave a comment)

July 19th, 2008
03:50 pm

[Link]

DisOrder playlists

Design for DisOrder playlists, an oft-requested feature that might actually get implemented sometime soon.

In other news, DisOrder 4.2 has been released. Downloads from the usual place.

Tags: ,

(Leave a comment)

June 12th, 2008
02:00 pm

[Link]

Latest Disobedience screenshots

What's new here:

  • The queue and choose tabs now use a GtkTreeView rather than locally implementing everything in a layout. The main effect of this is that everything works in a manner much more consistent with other GTK+ applications, and you can do things like rearrange and resize the columns (although GTK's implementation of column resizing is crazy and broken).
  • GTK+ (or rather Pango) takes care of ellipsizing long track names, which means they are truncated at the column's edge, rather than being truncated to a fixed size and forcing the column width.
  • The choose tab now has the track length visible and a checkbox that not only shows the playing state but also can be used to add the track to the queue. The latter isn't completely new, you could always middle-click to do this and a notes icon appeared by playing tracks, but now it's much clearer that you can do this.

This is all on a branch and there's still more work to do but will be in a future release.

Tags: ,

(2 comments | Leave a comment)

April 20th, 2008
10:40 am

[Link]

Portable integer log2 using floating point primitives

One of the things I needed for the user management window below was to convert from single bit in a bitmap to its bit number. (Rights are represented internally as a bitmap, but you want the bit number to index the array of GtkCheckButton widgets that represented them.)

An unportable answer and a portable one )

Tags: , ,

(23 comments | Leave a comment)

12:14 am

[Link]

New Disobedience window

(Previous iteration.)

Tags: ,

(6 comments | Leave a comment)

March 29th, 2008
06:16 pm

[Link]

DisOrder 3.0
From: Richard Kettlewell <rjk@greenend.org.uk>
To: sgo-software-announce@greenend.org.uk
Subject: DisOrder 3.0
Date: Sat, 29 Mar 2008 18:15:13 +0000

DisOrder 3.0 has been released.  This release adds a number of new
features.

Read more... )

Tags: ,

(3 comments | Leave a comment)

March 9th, 2008
11:13 am

[Link]

I don't think I should have to do this
--- server/play.c       2008-03-03 22:56:22 +0000
+++ server/play.c       2008-03-09 11:10:46 +0000
@@ -389,8 +390,14 @@
       /* np will be the pipe to disorder-normalize */
       if(socketpair(PF_UNIX, SOCK_STREAM, 0, np) < 0)
         fatal(errno, "error calling socketpair");
+      /* Beware of the Leopard!  On OS X 10.5.x, the order of the shutdown
+       * calls here DOES MATTER.  If you do the SHUT_WR first then the SHUT_RD
+       * fails iwth "Socket is not connected".  I think this is a bug but
+       * provided implementors either don't care about the order or all agree
+       * about the order, choosing the reliable order is an adequate
+       * workaround.  */
+      xshutdown(np[1], SHUT_RD);       /* decoder writes to np[1] */
       xshutdown(np[0], SHUT_WR);       /* normalize reads from np[0] */
-      xshutdown(np[1], SHUT_RD);       /* decoder writes to np[1] */
       blocking(np[0]);
       blocking(np[1]);
       /* Start disorder-normalize */

Tags: , , ,

(10 comments | Leave a comment)

March 4th, 2008
10:45 pm

[Link]

Bug #1 (revisited)

Further to this...

So far Alioth is out as it appears to be only for Debian developers (though the front page and project registration form sneakily don't tell you this, implying instead that it's for “Open Source developers” in general) and Savannah is out because the hosting requirements insist on GFDL for manuals, and DisOrder's documentation is GPL'd and are likely to remain that way (the point being that you can copy and modify the documentation exactly when you can do so to the source code).

That leaves Sourceforge, which although it seems to be a bit quicker than I remember it is annoyingly infested with adverts, and Launchpad, which I've had one commenter in favor of and one recommendation against (albeit without an explanation as to why).

Tags: ,

(6 comments | Leave a comment)

January 6th, 2008
01:25 pm

[Link]

Graphical Web Browsers

What web browsers should I test DisOrder against? I've successfully tested with:

  • Firefox 2
  • Konqueror 3
  • Safari 3
  • MSIE 7
  • Opera 9
  • Seamonkey
  • iCab

Are there any other at least reasonably widely used browsers, ideally that I can download for free, that I can test with?

(See comments re IE6, and browsers I've tried that don't work.)

Relevant bits of changelog )

Tags: ,

(41 comments | Leave a comment)

January 5th, 2008
05:32 pm

[Link]

A third DisOrder platform
Read more... )

Tags: ,

(Leave a comment)

January 1st, 2008
08:29 pm

[Link]

Stupid Safari
Bah )

Tags: , ,

(4 comments | Leave a comment)

December 31st, 2007
11:13 am

[Link]

DisOrder user management

I've been rewriting DisOrder's user management code lately. In the next version the web interface will use cookies instead of HTTP basic authentication and there is a flexible system of user rights behind the scenes.

What you get when you initially visit the web interface is now, instead of a blunt demand for a username and password, read-only access. In fact the administrator can open this up a bit, for instance giving guests the ability to scratch randomly chosen tracks but not those specifically requested by someone.

There is also a registration page where you can create yourself a new login automatically. This can be disabled for sites that would rather a human was in the loop for any new logins.

The full design can be found here but if you don't want to read that, have some screenshots instead:

Screenshots )

Tags: ,

(2 comments | Leave a comment)

December 17th, 2007
08:01 pm

[Link]

DisOrder 2.0
Released )

Tags: ,

(Leave a comment)

October 25th, 2007
08:37 pm

[Link]

Bug #1

Since chiarkwiki is now dead, I need something to replace the DisOrder wishlist page. It's now an HTML page that only I can edit, but what I really want is a bug tracking system, both for wishlist items and real bugs.

I'd like to not run a whole BTS just for one project, so one of the development hosting services seems like the obvious answer. The ones I know of are:

Right now I'd only be interested in bug tracking and closely related facilities, rather than somewhere to host source code or whatever. It's not completely impossible that other facilities might be useful in the future though.

So does anyone have either any suggestions beyond the above, or relevant experience of using them either as a developer or for the matter just as a user wanting to report a bug - which one would you choose and on what grounds?

Tags: ,

(10 comments | Leave a comment)

08:25 pm

[Link]

Maybe someone here will know

I posted this to gtk-app-devel-list but nobody replied, not even with the wrong answer.

rc file only works outside gnome )

Tags: ,

(2 comments | Leave a comment)

October 9th, 2007
11:22 pm

[Link]

What I did on my holiday

I spent the last couple of weeks off work, mostly working on DisOrder.

What's new )

Tags: ,

(9 comments | Leave a comment)

September 29th, 2007
07:20 pm

[Link]

DisOrder's internal plumbing
PNG )

Tags: ,

(Leave a comment)

September 16th, 2007
11:21 pm

[Link]

Time passes

I've been going back to Karate. The basics have come back fairly quickly; where I'm getting them wrong I can at least often see where I'm going wrong. Kumite we've not practiced a great deal since I started going back. Kata is a bit of a disaster still.

I've been working on adding a network play feature to DisOrder. [info]sevenstring already added support for feeding its output to Icecast, but that's not suitable for what I have in mind: it mimics broadcast by unicasting lots of times, which is not so good for what I have in mind (up to a few tens of users all on the same LAN).

So my current code will transmit RTP packets containing uncompressed audio to a broadcast address (with multicast to follow when I've got the basics working). The transmit half of the question appears to be working well. The player is proving trickier; sometimes it gets behind for reasons I've not fully understood and often when it does ALSA misbehaves in a strange way - snd_pcm_wait() returns indicating it's ready for more audio but snd_pcm_writei() returns -EAGAIN. Once I've got it working Linux-to-Linux I'll get on with a Mac player and then worry about Windows. (The server running on the Mac will be trivial and the server running on anything not UNIX-like just won't happen.)

I bought a copy of Grand Theft Auto: Vice City Stories.

Poll #1056315
Open to: All, detailed results viewable to: All, participants: 17

What's the game really about?

View Answers

completing missions
5 (29.4%)

driving around crashing into things
16 (94.1%)

I don't approve of such violent games
1 (5.9%)

There's some good gossip, but not much, and most of you couldn't even be bothered to make any up. Pathetic l-) The best gossip about yourself was a tie, [info]sphyg had the best “gossip” about me and [info]uisgebeatha had the best gossip about someone else. [info]aardvark179 gets a dishonorable mention in all categories.

I'm slightly surprised how few people have entered this poll (95/16 at time of writing).

Tags: , , , , ,

(2 comments | Leave a comment)

October 8th, 2006
08:14 pm

[Link]

More Disobedience

You just type in the search box and it goes off and gets the results. There's a slight delay from all the redraw work if there are a lot of hits, but you've all got blindingly fast CPUs these days, right?

(What this is.)

Tags: ,

(5 comments | Leave a comment)

[<< Previous 20 entries]

I deny everything Powered by LiveJournal.com