Here in the UK we've had a bank holiday weekend. Usually I would have gone to Cambridge for the Debian BBQ, but this year I joined forces with Thomas Adam for some SmoothWall Express on Debian hacking.
There are several challenges involved in moving the SWE3 code from its native distribution to Debian; this weekend we worked around some of the permissions problems.
On SWE3, the web server and most of the service daemons run as the user 'nobody'. This means that the web server can write out configuration files as the same user as everything else; it can also read the system log files. When the web interface needs to run a privileged action (like setting firewall rules), it sends a command to 'smoothd', which is a daemon running as root. (Admin ssh access is always directly as the root user.)
However, web servers in Debian tend to run as user 'www-data', which does not have permission to read log files. Similarly, writing out configuration files as that user would mean that any cgi script (not just ones in the swe3 package) could modify them. I would prefer to run the swe3 cgi scripts as a separate user, and grant this user permission to view logs etc. This debian-webapps thread makes it sound very easy, but if you want to do that with cgi scripts rather than fastcgi, I think you have to run a separate web server for each user.
On Sunday afternoon, in a dramatic display of corner-cutting, I gave up on that approach and added www-data to the 'adm' and 'proxy' groups in the postinst. Thomas heroically patched all the cgis to call the "config writers" via smoothd, although I'm wondering whether some careful use of the chgrp command in the postinst might be better than running that code as root.
Another hack: in order to actually start a firewall, we needed to know which network card is the "RED" interface, in SWE3 terms; i.e. which one is meant to be the public-facing network device. It's also nice to know which one is "GREEN". So two debconf questions and some hardcoded magic numbers later, we have a basic firewall init script. Lovely.
Oh, and at some point I removed the htaccess file, so any user on your network can mess with your firewall. Should probably fix that.
Today I started some awful scripts which use Simple-CDD to build an iso containing all the packages we want. We are going to need to extend the networking configuration in the installer to set up multiple network cards. Then we need to figure out a nicer way of assigning IP addresses to devices; unlike on the proprietary version of the product, there seems to be no web configuration of network settings in Express. I've not figured all of this out yet.
So, in summary: we are deliberately trading some technical debt in order to quickly produce an initial release that might interest people. (But please note the disclaimer of warranty in the README file in that directory.) And in other news, I've been working at Smoothwall Ltd. for just over one year. Hmm. So this is what they call 'experience'.
Posted: 30 Aug 2010 21:38 | | Comments (0)
SmoothWall Express is a GNU/Linux distribution geared towards firewalling, with an installer, a web interface, and some common software like squid that can be useful when running a small business router. It is theoretically the basis for the corporate products of SmoothWall Ltd., who happen to employ me; but all opinions here are my own, and I'm not speaking for them.
Unfortunately, the SmoothWall Express kernel is somewhat "stable", which leads to problems installing the distro on modern hardware. There is a new version of Express in the works, but I'm afraid SmoothWall Ltd. currently has a bit of a "code dump" mentality with respect to delivering updates to their community, because they don't recall seeing any significant contributions from outsiders.
At DebConf I created proof-of-concept Debian packages of two components of Express 3.0: the swe3 web interface, and the smoothd daemon which executes privileged commands. Currently these can show a basic web interface; some of the less complicated bits will even run, and I can shut down my laptop using the "shutdown" button via smoothd. (Note that I still need to add boring stuff like debian/copyright files, but I plan to release these as soon as I can.)
In the near future, hopefully I can implement some of the more important features (like, er, firewalling), and add some other components like the traffic shaping and IM filtering daemon. I'm working towards a demonstration Debian Pure Blend that can show off some of the advantages of working with a third-party distribution as a base.
If anyone would like to help me... send me patches. :) I expect I'll be blogging my progress occasionally.
Posted: 16 Aug 2010 00:16 | | Comments (1)
On my last night in New York, I didn't sleep much. At 6am, I said farewell to Central Park by running round the reservoir, which I hadn't yet done. There was a very nice red sunrise to be seen from the west side.
Unfortunately I didn't sleep much on the flight home either. The British accents sounded quite unusual when we landed in Heathrow, and it was quite confusing not being able to find a Starbucks.
Once I was back home, I crashed, and woke up at 10pm. I spent last night clearing the pkg-perl review queue - gregoa is taking a short break after DebConf.
Then I went running at sunrise again. This is quite a different experience to Central Park - first, you have to run 2.5km just to get to Southampton Common, and secondly it is raining quite heavily. I dug out some winter gear that had turned out to be completely inappropriate for New York.
Posted: 10 Aug 2010 08:06 | | Comments (0)
I was up early this morning for the 17km run with bubulle over the George Washington Bridge and back. We had an interesting diversion near the start, as we tried to go cross-country through a woodland path that slowly disappeared. I was quite happy to have finished at the same time as the "real" runners... and grabbed a bagel with cream cheese for breakfast.
During the day I attended a few talks from the Java track. I had afternoon tea with Safir, and then chatted to a few people before the Cheese & Wine party this evening. My kettle and teapot were commandeered to provide Taiwanese tea.
The US supplies electricity at about half the voltage of the UK. So my US kettle has a power rating of a mere 1500W (compared to 3kW for my UK one) and takes twice as long to boil water. Also, if I took it home, it would probably blow a fuse, I guess. This is probably why everyone uses stove-top kettles here.
While walking back from the hacklab to Carman, there were some fireflies glowing yellow on the corner near where the Columbia flag flies. They didn't seem to be there on the way back from the party - maybe they only shine at dusk.
Posted: 03 Aug 2010 04:47 | | Comments (0)
I'm going insane in this country - the accents, the jaywalking, the food, the money, the poverty in the heart of Manhatten... suddenly I appreciate the UK much more.
So I have purchased an electric kettle, and set it up in the Carman basement, for the moment. I have also splashed out on a teapot, and one mug. (So far I haven't found any other mugs in the place, so bear that in mind if you wish to join me - $2.49 from the homeware store across the street.) I have brought two boxes of Twinings tea from the UK, and in the unlikely event that it runs out there are some brand names I recognise in the Westfield Market.
In the spirit of US philanthropy, I intend to donate this equipment for the betterment of Columbia University when I leave.
Posted: 31 Jul 2010 20:16 | | Comments (4)
I've started to build up to actually doing some development-related activities. Maybe. But first, we've got QR Codes dotted around the hacklab and on our namebadges if we're taking part in the keysigning - I persuaded zbarcam (from the zbar-tools package) to reveal their mysterious secrets.
I'm looking into packaging some Java libraries that use maven. Fun. I think I'll be attending some of the talks in the Java track, although I feel like I'm three years late to the party.
While trying to find a good example, I wanted to list all packages which reverse-build-depended on maven-debian-helper. This must be a common task? With some stuff stolen from lamby, I hacked together a shell alias:
rbuilddep() {
grep-dctrl -sPackage -i -r -F Build-Depends,Build-Depends-Indep "\b$1\b" \
/var/lib/apt/lists/*_Sources \
| awk '{ print $2 }' \
| sort \
| uniq
}
But this surely can't be the last word on this. For one thing, it might also be useful to recursively find these reverse dependencies. I hope I've missed some obvious way of doing this.
I reckon my attention span has got really poor over the last couple of years. More running tomorrow morning. But first, ice cream, I think.
Posted: 29 Jul 2010 03:19 | | Comments (2)
So apparently the route I took round Central Park is 9.7km, which explains a lot. This morning I checked out Morningside Park, but it's really too small for running - there's a loop of about 400m at one end, and you can go down the long bit to 123rd St, but it gets boring very quickly. Most of the park is taken up with a big hill and stairs. I'll try Riverside Park on Thursday, or find a shorter loop at this end of Central Park.
This morning I had breakfast at Nussbaum & Wu, because it seemed like a good name. Then I went to Duane Reade down the road (a pharmacy open 24 hours a day, which is quite impressive), and picked up some hand soap for a couple of dollars - none is provided in the bathrooms (and I didn't read the checklist about what to bring). And if anyone forgets/loses their wherever-to-US power socket adaptor, the Best Buy in Union Square has four left.
So far I've missed about three sponsored meals. In related news, if you ask for all the salad at Subway in the US, you seem to end up with something much hotter than in the UK.
Posted: 27 Jul 2010 21:01 | | Comments (0)
Yesterday my brother and I checked out of the youth hostel - it was a nice place, but I think it would have been better if we'd had the time to focus on the youth hostelling experience. As it was, I felt like we were just interlopers peeking into a world where we didn't belong.
We headed across Central Park and visited the Met, which is huge - and noted with some satisfaction all the things that came from England. When we left, it was raining, and we walked down Fifth Avenue in the downpour. After so much heat, it was a great relief - but it'll probably be straight sunshine for a few days now.
After a visit to a Barnes & Noble (which was a novelty, since I don't think they have a UK presence - I bought a book on JQuery), we went up the Empire State Building on a whim. Quite a view, and a cheesy but informative audio guide. Then after fetching our luggage back from the youth hostel, we went our separate ways to our respective accommodation.
For me, this meant finding Columbia University. I don't have a great track record with the whole "taking a note of where I'm meant to turn up" thing, and this time saw me wandering around the campus asking directions of people who couldn't understand me. For anyone else with the same habits: you want to find the corner of Broadway and 114th St. (you might get off the #1 subway at Broadway and 116th and walk south), and then proceed down 114th and through the first set of gates on the left. There's a green sign on the gates saying something about "Tech Campus". The Carman building is the first entrance immediately on the left after that. Alternatively you could go through the main campus entrance on Broadway opposite 115th St, and follow the path round the large building on your right until you get to just before the gates.
So then stumbling into all the DebConf people, we went for dinner at a local restaurant; and later out to a bar. Now I need to haul my ass outta bed (it's almost 12pm local time) and find the hacklab, or maybe breakfast.
Posted: 26 Jul 2010 17:06 | | Comments (0)
Well, I made it to New York, along with my brother. Yesterday we walked down most of Manhatten Island - we've been staying in the youth hostel on 103rd street, and made our way on foot as far as Battery Park. Along the way, we visited McDonalds (twice) and Starbucks (was that two or three times?), both featuring free wifi and air conditioning. We went up the Rockefeller Tower as well, and got a few photos out of that.
It's really quite warm here. It's shorts and sandals weather (just like last year in Spain), and I'm tired of walking in sandals.
Interesting differences from the UK: the New York Times crossword is quite different from what we call crosswords. I think Monday's one is meant to be easiest, so perhaps starting with Saturday's was not a good plan. There are water fountains dotted around the city, which is awesome.
This morning I went running around Central Park. Except it's tougher than it looks - I'm not sure whether it was the humidity, or the inclines, or not eating anything before setting out... I ended up walking most of the second half, and it took half an hour more than I thought it would. I ran counter(anti-)clockwise - I think it would be better to go clockwise, because there's a hill in the corner with a steep side that I'd prefer to run down rather than up.
Posted: 25 Jul 2010 15:46 | | Comments (2)
The daemon feature of Emacs is great. But when should the daemon be started?
At one time I used an '@reboot' line in my crontab. But when you want to use things like Tramp mode (for editing files on remote servers transparently), you very quickly wish that emacs could talk to your ssh-agent.
So if you accept that you will be running a desktop environment (not always true), you can add the daemon to your equivalent of "System >> Preferences >> Startup Programs".
But then you find that Flymake (when used with cperl-mode) is not picking up any of your uninstalled, work-in-progress Perl modules. Wouldn't it be great if you could set $PERL5LIB to fix this? And doesn't M-x copyright require you to set "$ORGANIZATION"?
Ever since Debian bug #411639 was fixed at the end of 2007, we have the option of "~/.xsessionrc" for setting environment variables that will cover everything in your desktop session, including things launched from panels and startup scripts.
So now that's what I do. But I've yet to figure out a good equivalent for console-only systems. Maybe I don't need one?
Posted: 16 Jul 2010 23:48 | | Comments (5)
This weekend I've been messing about with gstreamer pipelines so that I can spam the world with YouTube videos. Go me! Let's see if it shows up on Planet Debian.
Next weekend I'll be teaching my brother how to triage Debian GNOME bugs. :)
Posted: 22 Feb 2010 01:19 | | Comments (1)
I'm now a Debian Developer. :) My thanks go to Ben Hutchings, gregor herrmann, Chris Lamb, Christoph Berg, Steve McIntyre, Brad Smith, Jonny Lamb, Chris Boyle, everyone at credativ, and everyone else who helped me with Debian over the last... almost six years?
Actually, I've been a DD since the weekend, but have been too absorbed to write about it.
In other news, I'm moving house today... I'm more or less packed now. My internet access may be intermittent at home for the next few weeks. (Home is now Southampton, UK.)
Posted: 11 Dec 2009 03:47 | | Comments (1)
My (very) humble efforts this week:
Less of the instant gratification of NMUs for me lately.
But; the Perl packaging team is down to a much lower number of RC bugs now. I'm one step closer to being a DD, apparently. And today I found somewhere to live for the next year; this is actually going to threaten my internet access in the near future, which is a little annoying. But once it's done, I'll actually be working on a desktop machine again, rather than a netbook.
Posted: 01 Dec 2009 23:57 | | Comments (0)
I thought I should share my current favourite Ubuntu patch.
While hunting for easy RC bug fixes yesterday, I stumbled across mit-scheme_7.7.90+20090107-1ubuntu1.patch [roughly 9MB]. It contains a Debian .deb to bootstrap the Ubuntu mit-scheme package (bug filed). Nice.
Now, to be fair, Debian has a bootstrapping problem for mit-scheme as well - it requires itself to build, but is currently uninstallable in unstable (although zack's on the case). Having looked at the problem, I think the best thing to do in the long term would be to package mit-scheme-c (which appears to be a superset of the upstream tarball for mit-scheme?) and then use that to build the other package. This would also provide a version of mit-scheme for arches other than i386. If maintainer-built binary packages are going to get thrown away at upload time, that would have been the only way to solve the bug, I think.
(I don't mean to fuel the Debian vs. Ubuntu flames; it would have been nice if the MOTUs could have fixed this in less of a hacky, license-violating way, but they did at least get the package to build, which is more than Debian can do at the moment. I intend to keep a closer eye on Ubuntu bugs and patches for the various packages I work on, because keeping divergence to a minimum should benefit both distributions.)
Posted: 26 Nov 2009 21:31 | | Comments (3)
I've been slacking on the RC bugs front. :) Let's see, my last blog post was on Monday 16th, so I'm late...
The DELAYED queue is a wonderful mechanism for reducing the amount of busy waiting that needs to happen for NMUs; you don't have to remember to come back and upload several days later. For non-DDs, it takes a bit more co-ordination between you and your sponsor, unfortunately - do you send the NMUdiff to the bug before you get sponsorship, and risk having to change it? And then revisit the bug to give notice again once it does get sponsored? Or leave it until after upload, which might reduce the amount of notice you're actually giving the maintainer (if, say, your mentor is in a different timezone)?
I've been opting for the first approach, but it doesn't have the same fire-and-forget quality of the real thing.
Posted: 24 Nov 2009 22:08 | | Comments (0)
This evening I investigated #555941 in libxml-filter-xslt-perl, and was able to downgrade it to "important". I'm working on a proper fix, but it's not RC any more. (Gunnar, I don't mean to make you feel bad! I've been inactive for a while myself - I'm just making up for lost time.)
And now for conversation via blog!
Clint, I'm inclined to agree about ego, fiefdoms and so on. But I'm unconvinced that personal relationships themselves are harmful. Actually, I was thinking more about "professional relationships" - I don't care much whether mentors take their mentees to an art gallery, provided they work with them over a period of time, and therefore get to know the quality of their packaging. (I was a bit careless in my phrasing last night.)
Having said that, let's do that as well! Indeed, building relationships so that we don't flame each other to a crisp the rest of the year is the very reason we hold DebConf, right? (Apart from the beer. And the holiday.)
I reckon the mentoring system would be more effective if we started thinking along these lines, and this in turn would help address the wider problem of resources within various parts of Debian. Maybe not directly, but it could free up other people to work on the complicated stuff. We could probably turn debian-mentors into a sort of "team" in its own right. (Apologies if someone's suddenly made debian-mentors active again behind my back.)
And if I ever get approved by DAM (ahem), I intend to propose a deal to the debian-mentors list that each upload of an updated package will cost them one RC bug NMUdiff, and uploads of new packages will cost two. ;)
Posted: 16 Nov 2009 21:24 | | Comments (2)
Heh, thanks zack for your welcome. :) I'm afraid I don't make bug fixing look as easy or as organised as you do.
Some cheating to finish off the weekend: #548860 was reopened accidentally, #555898 was already fixed in another package, and #555939... actually, that did need a fix, but I just munged the test suite to expect some new error output.
Then I spent this morning writing half a testsuite for svn-buildpackage, and this evening just zoning out.
Sometimes I wonder whether fixing RC bugs is actually improving the quality of the release, or just letting us make a buggy release sooner. Non-RC bugs get pushed to the back of the queue. Hmm. But the pkg-perl team has around 170 packages with bugs in, and not that many people fixing bugs. I have to agree with corsac on the general point that just about everywhere in Debian could use more people.
There's a huge role for non-DDs to play in getting fixes into Debian, but as far as I remember, the emphasis of the mentors documentation is on packaging rather than bug fixing. I was barely aware that I was even allowed to prepare an NMU. And from what I know of the NM process now, a huge list of RC bug fixes would go a long way to establishing credibility as a potential DD - longer than a huge list of poorly-maintained packages.
It seems to me that the mentor relationship works better when DDs get to know particular people, and regularly sponsor uploads for them. This way they are in a better position to advise and sponsor any NMUs that might come along, and eventually to advocate them as an NM candidate. But it also seems to me that debian-mentors is not geared up for this at the moment.
To conclude, it's 1am, and I shouldn't be posting controversial thoughts on my blog. :)
Posted: 16 Nov 2009 01:09 | | Comments (3)
On Wednesday, I fixed #551228 in libgstreamer-perl - from the bug log, it looked like it would be an intriguing parallel-build problem, but I reckon it was just a faulty test.
Next I applied a patch from the upstream bug tracker for #544894 in libtk-filedialog-perl, which was fine; but then we noticed that there was no explicit copyright notice in the source, so it hasn't been uploaded yet. The code is from 1996, so we would request removal from Debian if it weren't for 'horae' depending on it. Hmm...
Then yesterday I found the time to test #520406 in libdbd-mysql-perl, which I remember being open as long ago as DebConf. It turns out it's dead easy - there's already a test case and a patch upstream, which was applied a while ago, so the bug is already fixed in squeeze. Today I prepared an updated package to fix this in lenny.
So, I'm still falling short of one RC bug a day, and pkg-perl has more RC bugs open than at the start of the week. :( The weekend's not over yet, though.
Posted: 14 Nov 2009 15:42 | | Comments (1)
Hello, Planet! (Thanks to lamby for adding me to Planet Debian.) If you don't know me... I'm not surprised. I do some occasional pkg-perl work, but I've really been slacking (and changing jobs, and moving halfway across the UK).
Last week I fixed one RC bug, in libgnupg-interface-perl. Better than none, I suppose. It turned out to be quite interesting; the tests failed when the package was built on the buildds, but not locally. Other people had done the hard work, and figured out that this was happening when there was no tty; I just had to debug why the particular perl variable was getting unset.
I'm somewhere near the end of the NM process; one of these days, I'll be able to upload my own packages, and those of other people. I'm still working out where best to apply myself within Debian - I do want to share some of the pkg-perl upload burden (because gregoa is an absolute hero, and deserves to be able to take holidays).
The status of Debian mentoring in general intrigues me; there seem to be so many places where more minds are needed, and perhaps this makes encouraging and training new developers especially important. More on this later.
Posted: 09 Nov 2009 23:42 | | Comments (0)
Well, I'm nearly at the end of DebConf - I'm missing the last day of talks, so travelling home tomorrow. It's been a really good experience - I mean, DebConf is always fun, but this time I feel like I'm getting more involved myself, and a bit closer to the heart of the community than I did before.
In practical terms, the two-week holiday has helped me feel more laid-back - I even got complimented on how I always look relaxed, which was amusing. I'm starting to get to know even more people, and that's helped me be more confident with contributing back. And it's given me some time to finish a few outstanding tasks, although my todo list remains perpetually long.
The time has also helped in less tangible ways - I've been able to brainstorm a few general ideas about what big problems I am trying to solve, and I've been able to look at my workflow and identify problem areas. I hope that I can take some solutions back to the rest of my life.
Posted: 29 Jul 2009 12:38 | | Comments (0)
This week, I've more or less finished my NM questions; I looked again at a problem in dak which turns out mainly to be caused by some edge cases in debconf (the package), so filed a bug there. Then looked at conglomerate, and came up with patches for a couple of bugs there as well. I'm quite looking forward to just being able to NMU these kind of things.
With all this hacking, I've stayed up until around 4:30 for the past few nights - I really didn't mean to, it just happened. I'm trying to fix that now (so that I can make it to breakfast).
Debian now has its own wine - there are 1800 bottles in total. Last night we tried some...
Also, there's a small cat here which seems quite friendly.
Posted: 22 Jul 2009 15:56 | | Comments (0)
Yesterday I almost updated mdbtools. Then I went to a debian perl team meeting, and promptly spent 24 hours trying to improve the speed of working with 1300+ git repositories. It's a bit tricky.
This afternoon, I looked at some pkg-perl RC bugs... but they're tricky as well. I then updated the postgresql-autodoc man page, and sent it back upstream. Hopefully, next release the Debian package will not need any patches.
The vegetarians seem to have been having a rough time - apparently in Spanish-speaking countries, ham is not considered meat. Things picked up today for them, though, with some mushrooms at lunch and a nice-looking salad this evening.
Posted: 19 Jul 2009 21:40 | | Comments (0)
DebConf is in Spain this year, in Cáceres. Getting here involved a plane to Madrid, navigating the metro system, a 3.5 hour train journey and then a walk to the accommodation at 2am. This year I had actually looked at a map before arriving in the city, although hadn't bothered to bring one with me. Or note the exact address I was heading for...
At night, it is still pleasantly warm here. The streets were quiet except for the "pfft, pfft, pfft" of the sprinklers. Any directions I'd read which involved street names were useless - but I remembered enough of the map to get to where the buildings were, and then wandered around until I found the entrance.
I was greeted at the front desk by the security guard, who didn't speak much English... but I understood enough, and got shown where the room was. The student residences are not luxurious! It's quite a contrast to Mar del Plata (or even the hostels at Edinburgh), but not a lot of time is spent in the rooms anyway. The shower is worryingly powerful - think 'firehose'. Tomorrow I hope to find a way not to flood the whole room while using it.
The building seems designed to stay cool, fortunately. Meals are later in the day to avoid the worst of the heat, but I've still been feeling tired. People seem to buy large (1.5l) bottles of water. The weather's supposedly going to get even hotter - I did go out at 6pm to buy an ice cream, but I'm wondering whether my sunblock is going to last two weeks. I'm already in shorts and sandals - I might need to find more T-shirts.
Today has been fairly productive, actually - I updated postgresql-autodoc, fixed my blog, and updated my laptop. Since dinner I've been looking at the other packaging work I need to do; I'm hoping to get another few uploads out of the way first, and then work on NM questions and fixing bugs.
Posted: 18 Jul 2009 00:26 | | Comments (0)
The new kernel mode setting feature in Linux 2.6.29 is relatively easy to enable, although at this point there does not seem to be much in the way of documentation.
You will need:
First, install the new kernel and the experimental x.org packages. Add 'i915 modeset=1' to /etc/modules. Ignore instructions elsewhere on the web about adding stuff to kernel boot lines - I reckon these have no effect, unless they were/are necessary for Fedora. You can either reboot, or stop X and reload i915 with the right option.
Now enjoy the fast VT switching and nice framebuffer console for five minutes before you notice that the experimental X.org packages broke your keyboard layout!
Posted: 02 Apr 2009 00:00 | | Comments (0)
I haven't taken much time on cooking for the past couple of nights. Last night I just used a sweet-and-sour sauce from a jar, and had chicken with quick-cook rice. I don't think that counts as cooking - more like a ready meal by stealth. As a concession, I bought whole chicken breast fillets and diced them myself. It seems to help if you use a sharp knife.
This evening I cooked an omelette (with three eggs - there's a standing joke in the family concerning my brother once having cooked a one-egg omelette) and frozen veg, so I must have been done in under five minutes. I'll write something if I find a variation that's more eggciting...
Also this evening, I looked at Debian's status in relation to the Linux Standard Base. No one seems to certify Debian stable releases, and no one is running nightly LSB tests on Debian. I wonder if I can get that changed.
Posted: 01 Apr 2009 00:00 | | Comments (0)
Flymake is an emacs minor mode that runs a syntax check tool over source files as you write them, on the fly. Essentially it calls the compiler for the relevant language and then parses the warnings.
Because this is so obviously useful, I have it turned on by default in .emacs:
; Highlight syntax errors (require 'flymake) (add-hook 'find-file-hook 'flymake-find-file-hook)
Recall also that I use emacs to view page source in Epiphany. Unfortunately, this produced a nasty dialog box warning about not being able to find an 'xml' command.
The solution comes in two parts:
;;;; xml-specific init-cleanup routines (defun flymake-xml-init () (list "xmlstarlet" (list "val" (flymake-init-create-temp-buffer-copy 'flymake-create-temp-inplace))))
I suppose both emacs packages should really Suggest xmlstarlet - I wonder how many other external programs might fall into that category.
Posted: 21 Mar 2009 00:00 | | Comments (0)
I tried to look at an RC bug this evening: bug #502657 on netmaze. It looked so easy - a segmentation fault, a backtrace... no. The package doesn't even build on sid, doesn't support the 'nostrip' option, and hasn't had an upload for two years. When you get past those stumbling blocks, it's a 64-bit compatibility problem that would probably need quite a large patch.
So, in the end, I've increased the RC bug count by one this evening, in suggesting to the maintainer that netmaze should not be released with lenny.
I tried.
Posted: 22 Oct 2008 00:00 | | Comments (0)
I got a concerned phone call from my mother following my previous blog post, asking whether I owe Debian money. Fortunately, I believe I am fully paid up for all the T-shirts and BBQs that Steve McIntyre has given me.
I have decided that the interest payment on my outstanding debt to Debian must be made in the form of RC bug fixes. I suck at RC bug fixes. They are generally boring, but of great value to the community. It is because of all the lame people like me not fixing RC bugs that Debian doesn't release on time, ever. Mea culpa, mea culpa, mea maxima culpa.
Posted: 21 Oct 2008 00:00 | | Comments (0)
Credit cards can be very useful, provided you pay off your outstanding balance at the end of each month. If you do not, the debt can pile up, and will be sticking with you for a very long time. Credit is a tool - it lubricates the economy. Without it, production would grind to a halt. However, it is very important that creditors lend only as much as debtors can afford to repay.
If we think of Debian as a gift economy, it is the community doing the lending, and ITPs and ITAs are a temporary extension of kudos to the potential maintainer.
Anyway, the point of this analogy is to note that while my financial overdraft is currently nonexistent, my debt to Debian needs to be repaid with interest.
Posted: 20 Oct 2008 00:00 | | Comments (0)
After much anticipation, the free-as-in-freedom version of Sun's Java JDK has arrived in Debian's `main' section. There are still a few bugs in the packaging, but these will be ironed out before the lenny release. Various other useful packages still need to adapt to its presence, but many will be able to move from the `contrib' section into `main' as well.
Going forward, this makes Sun's Java platform quite attractive for developing future free software applications. There is a reasonably performant implementation now available in most distributions, that will receive security updates, has a good team of developers behind it, and already has a large community of people with skills in the language. If static versus dynamic typing becomes an issue, Jython might offer a nice competing implementation of Python. We might one day get to see what this `Groovy' thing is all about. In terms of GUI applications, Andrew Cowie's new java-gnome 4.x bindings will allow truly native integration with the rest of GNOME - or stick with plain Swing for cross-platform portability.
This also brings the Java/.NET competition to free software. Mono has been playing catch-up with both Microsoft's implementation of .NET and with Java - it has enjoyed some success with Gtk#, which has provided much more compelling rapid development than the old java-gnome bindings and gcj. MonoDevelop is trying to compete with Eclipse and NetBeans, and probably has a better-integrated GNOME UI editor. Still, if the potential for rapid application development is as great as is claimed, it can't be very long before the various successful Gtk# applications (banshee, f-spot, tomboy) have Java counterparts (unless people are happy with the C equivalents). The most difficult part of the process is finishing off any required library bindings (such as to gstreamer and libgphoto2).
It will be interesting to see whether Java free software developers bring with them the same bad habits that have been seen with many Windows-based C# free software developers. When you want to use a library, bundling a binary-only copy of an unstable version is not really the right thing to do. At least many Java .jar archives also contain source code, and there are quite a few home-grown Java hackers who might understand about how to play nicely with distributions using proper dependency-management systems.
One thing that strikes me is that, while Mono has been around for quite a few years now, I can't think of any big non-graphical applications that are built on it. (Beagle is perhaps the exception - it does make use of a Gtk# GUI, but the main program is the indexer.) Java might benefit from a network effect, as projects such as Apache Tomcat are also widely used. (Let's not mention Choob at this point.) There are a few non-GNOME graphical apps waiting in the wings (like freecol and robocode). The scaremongering over possible patent infringement in Mono (or the Windows.Forms libraries), while probably unfounded, cannot help its cause.
But of course, ruling out something catastrophic like a patent infringement suit, free software projects very rarely die - they just fade away into obscurity. Both platforms are likely to be around for some time yet.
Posted: 13 Jul 2008 00:00 | | Comments (0)
An update to Debian's gnu-standards package is now in incoming. This package contains the GNU Coding Standards and the Information for GNU Maintainers document. It is now in the `main' section rather than `non-free', so is officially part of the Debian system.
This has taken several months; at the end of December I asked whether the maintainers' document could be relicensed. RMS evidently approved, because the licence was changed in January.
Then there was the small matter of updating the Debian package; I prepared an update, but wasn't quite clear on whether I was preparing an NMU or a normal upload, so stalled for a while. Last month the package became orphaned, so I quickly grabbed an ITA, and started working again. KiBi was very helpful with pointing out all the remaining cruft in the package, and he generously sponsored the final result. Then we just had to wait for it to get through the NEW queue.
Hopefully it will migrate to testing before the freeze.
Posted: 04 Jul 2008 00:00 | | Comments (0)
It weighs 13kg, apparently, and my arms still ache. Thanks to Anton and Dan for letting me stay at their place on Saturday night, and use their fast net connection to download Debian packages.
Posted: 30 Jun 2008 00:00 | | Comments (0)
The bank holiday formed a welcome break after a hard week at work writing and fixing a Linux kernel module. On Friday afternoon version 0.4.3.1-1 of f-spot was uploaded to Debian, and then yesterday a new version of postgresql-autodoc. We've found a release-critical bug in f-spot already, of course.
Most of the rest of my time was spent hacking on Angel, a project which we haven't formally announced yet. :) It still needs some refactoring before a public release is possible - there are a few bugs left to fix. Still, I'm hoping that we'll get there fairly soon.
<rant>
The fire alarms have regularly been going off at 2am in this house - when I
came home today they had been disabled by the landlord. I've also had a sore
throat, and at work Chris and Gabi have had another child, so I'm on my own
for two weeks. I'm also forced to remember my German all day... and most of
the code I write is woefully inelegant. And it's too sunny. Why can't it rain
like last weekend?
</rant>
Still, apart from that, life's good.
Posted: 06 May 2008 00:00 | | Comments (0)
I spent my weekend in Cambridge at the Debian bug squashing party. It was good seeing people again. I even squashed a bug, but then spent Saturday forwarding non-RC bugs upstream, and kernel hacking today. :)
Walked back to Cambridge station - about 40 minutes, along the river for part of the way, and it was a nice evening. Living where I do, I don't walk as much as I used to... perhaps I should do more at weekends.
It didn't snow very much in Cambridge. Back in Rugby there was an inch or so on the cars, and it was threatening to start again as I walked home. Hopefully it will all have cleared by tomorrow.
Posted: 06 Apr 2008 00:00 | | Comments (0)
Lamby reckoned I wouldn't be able to resist using the DebConf8 blog sticker thing. And he was right.
My horrendously expensive plane tickets arrived last week.
Posted: 03 Apr 2008 00:00 | | Comments (0)
Yesterday evening, I finally found the patch for a bug in mono-addins that had been affecting f-spot extensions for a while - rebuilding the f-spot Debian package with no changes and reinstalling would cause the built-in extensions to disappear. In the end, the patch was just two lines long, and had been applied in mono-addins SVN (and in the copy of mono-addins that f-spot bundles). One less RC bug for lenny.
With this out of the way, we uploaded f-spot 0.4.2-1 to unstable. This fixed another RC bug (two merged ones) and a handful of other problems. It's taken a few weeks since the upstream 0.4.2 release to get this pushed out, mainly because I knew upstream were expecting all the extensions bugs to be fixed in this release. Still, we got there in the end; there are still far too many known bugs in f-spot, but I think we will get a fair chunk sorted out before the release. In a couple of weeks, f-spot 0.4.3 should be upon us, and we have to decide whether it's stable enough to be uploaded to unstable. I need to forward some bugs and patches upstream before then. There's a known crash to fix in the next upload (but not too serious, relatively speaking) - but I rather want to let 0.4.2-1 migrate to testing, so perhaps we shall leave f-spot alone for a while.
So, over Easter, I have some time for some other projects.
Posted: 21 Mar 2008 00:00 | | Comments (0)
Today I created a git repository for enscript's Debian packaging. The upstream repository is in git as well, of course.
Next I need to work on pulling any distro fixes I can find into upstream, and getting a new bugfix version released. This should hopefully obsolete most of the Debian patches.
Posted: 02 Dec 2007 00:00 | | Comments (0)
Some news that's overdue to be blogged: a few weeks ago, I picked up the Debian package 'enscript', and fixed some of the easier bugs in it. This has been uploaded to unstable, thanks to Myon, who rocks.
Having looked at the package, I realised that further work on it was unfeasible without a new upstream release. GNU Enscript had been unmaintained for a while, so I wrote to the GNU project and asked whether I could set up a Savannah project for it. A few days later, rms dubbed me the official maintainer.
This week, I sent in my copyright assignment form. This is one of the things I wasn't expecting - from the copyright headers, it didn't look as if Enscript required copyright assignment to the FSF. Still, it makes sense in the long run. I have to examine the existing code, and work out whether there are any other contributors from whom to ask for assignments or disclaimers. One of these days I'll actually get around to writing some code for it, perhaps.
On the plus side, I now have an account on fencepost.gnu.org, which means I have a nice gnu.org email address to go with it. Also, the FSF sent some nice stickers for my laptop with the copyright form.
Posted: 17 Nov 2007 00:00 | | Comments (2)
| < | August 2010 | |||||
| Su | Mo | Tu | We | Th | Fr | Sa |
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 | 31 | ||||
Tim Retout tim@retout.co.uk
JabberID: tim@retout.co.uk