<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
    <channel>
        <title>Noodles&apos; Emptiness</title>
        <link>http://www.earth.li/~noodles/blog/</link>
        <description>Dude! Sweet!</description>
        <language>en</language>
        <copyright>Copyright 2010</copyright>
        <lastBuildDate>Mon, 08 Mar 2010 22:27:19 +0000</lastBuildDate>
        <generator>http://www.sixapart.com/movabletype/</generator>
        <docs>http://www.rssboard.org/rss-specification</docs>
        
        <item>
            <title>Fizz buzz</title>
            <description><![CDATA[<p>
Inspired by a conversation about interview coding tasks from a list I'm on, I present the following - I considered it too long to email there. It took me longer than I expected to write; my x86 assembly is quite rusty. I'm not claiming it's pretty, but it fits in a single sector and most of the overhead is actually ELF structures.
</p>
 <pre>
; nasm -f elf fizzbuzz.asm
; ld -melf_i386 -s -o fizzbuzz fizzbuzz.o
; ./fizzbuzz

section .data

fizz	db	" fizz"
fizzlen	equ	$ - fizz
buzz	db	" buzz"
buzzlen	equ	$ - buzz
num	db	"   "
numend	equ	$ - 1
numlen	equ	$ - num
nl	db	0xa
nllen	equ	$ - nl

curnum	db 1

section .text

	global _start

_start:
	mov ax, [curnum]
	call printnum

	mov ax, [curnum]
	mov cx, 3
	xor dx, dx
	div cx
	cmp dx, 0
	jnz notfizz

	mov edx, fizzlen
	mov ecx, fizz
	call printstr

notfizz:
	mov ax, [curnum]
	mov cx, 5
	xor dx, dx
	div cx
	cmp dx, 0
	jnz notbuzz

	mov edx, buzzlen
	mov ecx, buzz
	call printstr

notbuzz:
	mov edx, nllen
	mov ecx, nl
	call printstr

	inc BYTE [curnum]
	cmp BYTE [curnum], 100
	jle _start

	xor ebx, ebx
	mov eax, 1
	int 0x80

printnum:
	mov edi, numend
	mov cx, 10
p1:
	xor edx, edx
	div cx
	add dx, '0'
	mov [edi], dl
	dec edi
	cmp ax, 0
	jne p1

	mov ecx, num
	mov edx, numlen
printstr:
	mov ebx, 1
	mov eax, 4
	int 0x80
	ret
</pre>]]></description>
            <link>http://www.earth.li/~noodles/blog/2010/03/fizz-buzz.html</link>
            <guid>http://www.earth.li/~noodles/blog/2010/03/fizz-buzz.html</guid>
            
            
            <pubDate>Mon, 08 Mar 2010 22:27:19 +0000</pubDate>
        </item>
        
        <item>
            <title>Meta: Rant about rants about PGP keysigning problems</title>
            <description><![CDATA[(This has ended up longer than I intended, largely because I felt I should then get into why. I'm aware I haven't got into all the nuances, so I hope readers familiar with the area will appreciate this is the compact version.)<br /><br />Thorsten had a <a href="https://www.mirbsd.org/permalinks/wlog-10_e20100223-tg.htm">rant</a> last week about PGP keysigning problems. He apologises for his tone, but that's not the issue I take with his rant.<br /><br />It starts "Keysigning is useless". And yet his complaints seem to be:<br /><br /><ul><li>Dealing with the private half of your GPG key securely involves some faff (in this case booting with a live CD and having to set things up ready to keysign).</li><li>He doesn't get on with caff.</li><li>People reject email from machines with invalid HELOs and perform other anti spam measures on ISP access ranges (I'm not clear if it's just greylisting or outright rejects as that's not made clear).</li><li>PGP/MIME is a protocol violation (yes, but it's much better than inline OpenPGP. Unless you have to deal with RT, which mangles it. *sigh*)</li></ul>None of these seem to actually be about keysigning being useless. The process of doing it, maybe, though he misses the main valid rant about this I'd have, which is that most mass keysignings don't actually allow you to accurately verify the identity of other participants unless you already know them reasonably well. (The LCA2010 keysigning and DebConf5 in Helsinki spring to mind as 2 good examples of bad keysignings I've attended, but speaking to others suggests it's far from an isolated thing.)<br /><br />Torsten does say that he'll continue to do keysigning on a per-person basis, so it doesn't sound like he's completely given up. I'm posting this largely so other Debian related people don't get the idea that it's not important to think about keysigning.<br /><br />Why should we care?<br /><br />Firstly, let's clarify what I mean when I sign someone else's key. If I sign your key then I think that I believe you hold the private part of a key that has your name and an email address I believe I can use to contact you on it. It means I have seen government issued ID that matches that name. It also means that I have interacted with you (and watched others interact with you) under that persona. In short I am happy that the key is a reasonable digital representation of your identity - something signed by it either comes from you or has involved the key being compromised or you coerced&nbsp; into using it against your will.<br /><br />Why is this useful?<br /><br />It gets useful thanks to the web of trust; ie the idea that there are a bunch of people I trust partially to sign other keys, and if enough of them have signed a key then I can have a reasonable expectation that the key belongs to the person I want to talk to. Which means I might be prepared to send private data to them. Or Debian might be prepared to accept an upload from them. Which, when you're dealing with a community that spans the planet and where most of the contributors haven't met each other, is pretty freakin' useful - I, as part of Debian's keyring team, don't need to personally be able to identify every Debian developer. All I need to do is be able to trust other DDs to be able to do so. (Though maybe I'm missing out on something here - perhaps Debian should be paying for Gunnar and me to travel the world verifying fingerprints. \o/)<br /><br />(I still do mass keysignings btw. I'm picky about which keys I actually sign - this is in no way intended as a slight against those I don't, but a mass keysigning at least lets me know that the people involved are happy to exchange fingerprints. Though, FWIW, I normally have ID on me and frequently have fingerprint slips, so if you know me and want me to sign your key/want to sign mine then by all means ask me when you see me!)<br /> ]]></description>
            <link>http://www.earth.li/~noodles/blog/2010/03/meta-rant-about-rants-about-pg.html</link>
            <guid>http://www.earth.li/~noodles/blog/2010/03/meta-rant-about-rants-about-pg.html</guid>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">PGP</category>
            
            <pubDate>Wed, 03 Mar 2010 21:18:02 +0000</pubDate>
        </item>
        
        <item>
            <title>Sinful admission</title>
            <description><![CDATA[Knowing full well that it will cause many of my readers to tut and roll their eyes at me I derive slight pleasure from confessing that I have now eaten at McDonalds on 6 continents. To make it worse I only did so in Asia and Australia so I could say I had.<br /><br />It does lead me into a slightly more valid ramble. I'm not particularly bothered about eating on my own. I like food (even if I'm picky about what I like), but I prefer it with company. This means I'm not particularly great about being organised to cook complicated things when I'm on my own; largely the whole thing just turns into dealing with hunger. It also mean I'm bad at finding nice places to eat out while travelling. Which, when you're travelling for a month to some interesting places, is a bit of a bugger. I've got a bit better at actually going to nice places, and trying not to bolt my food into me so I can get out ASAP but instead enjoy it. A book helps. Also places that aren't quite as busy (which if you have no agenda is nicely achieved by letting your body clock desync from the world around you). Unfortunately I didn't really do so until after Hong Kong. Guess I'll just have to go back at some point...<br /><br />(More on my travels at some point, maybe. I've started the tortuous journey home now.)<br />]]></description>
            <link>http://www.earth.li/~noodles/blog/2010/01/sinful-admission.html</link>
            <guid>http://www.earth.li/~noodles/blog/2010/01/sinful-admission.html</guid>
            
            
            <pubDate>Wed, 27 Jan 2010 09:19:20 +0000</pubDate>
        </item>
        
        <item>
            <title>Prettifying Debian boot output</title>
            <description><![CDATA[Being a bit of a freak I actually tend to read my boot output. Well, when I'm not using that time to go grab a cup of coffee first thing on a Monday morning. However I don't always find <a href="http://www.uk.debian.org/">Debian</a>'s default output as clear as I'd like (especially when I haven't had that coffee yet, or when I'm half watching a remote machine boot over its serial console). ISTR that <a href="http://www.redhat.com/">RedHat</a> had much nicer boot output (I'm talking about text based here, not the fancy <a href="http://cgit.freedesktop.org/plymouth/">Plymouth</a> stuff) with a row of OK/FAILED etc down the right hand side that made it nice and obvious what was happening. Of course we can do that with Debian, at least for packages that use the <tt>lsb-base</tt> logging functions. Drop the following into <tt>/etc/lsb-base-logging.sh</tt> and enjoy a slightly prettier boot. I'm slowly filing wishlist bugs with patches for those bits and pieces I use that don't use <tt>lsb-base</tt> for their init script logging.
<br /><br />
<pre>
# Colour our init scripts output

# int log_end_message (int exitstatus)
log_end_msg () {
    # If no arguments were passed, return
    if [ -z "${1:-}" ]; then
        return 1
    fi

    retval=$1

    log_end_msg_pre "$@"

    # Only do the fancy stuff if we have an appropriate terminal
    # and if /usr is already mounted
    if log_use_fancy_output; then
        RED=`$TPUT setaf 1`
        GREEN=`$TPUT setaf 2`
        YELLOW=`$TPUT setaf 3`
        NORMAL=`$TPUT sgr0`
        $TPUT hpa $((`$TPUT cols` - 12))
    else
        RED=''
        GREEN=''
        YELLOW=''
        NORMAL=''
    fi

    if [ $1 -eq 0 ]; then
        /bin/echo -e " [   ${GREEN}OK${NORMAL}   ]"
    elif [ $1 -eq 255 ]; then
        /bin/echo -e " [${YELLOW}WARNING!${NORMAL}]"
    else
        /bin/echo -e " [ ${RED}FAILED${NORMAL} ]"
    fi
    log_end_msg_post "$@"
    return $retval
}

log_action_end_msg () {
    log_action_end_msg_pre "$@"
    if [ -z "${2:-}" ]; then
        end=""
    else
        end=" ($2)"
    fi

    /bin/echo -n "${end}"

    # Only do the fancy stuff if we have an appropriate terminal
    # and if /usr is already mounted
    if log_use_fancy_output; then
        RED=`$TPUT setaf 1`
        BLUE=`$TPUT setaf 4`
        NORMAL=`$TPUT sgr0`
        $TPUT hpa $((`$TPUT cols` - 12))
    else
        RED=''
        BLUE=''
        NORMAL=''
    fi


    if [ $1 -eq 0 ]; then
        /bin/echo -e " [  ${BLUE}DONE${NORMAL}  ]"
    else
        /bin/echo -e " [ ${RED}FAILED${NORMAL} ]"
    fi
    log_action_end_msg_post "$@"
}
</pre>
<br /><br />
(This is mostly for my own future reference, because I keep trying to search for details on it and not finding exactly what I want. I forget where I even found the basis for this, though there are lots of similar snippets out there. I've not tried it with a concurrency based boot so it may well look horrible under that.)]]></description>
            <link>http://www.earth.li/~noodles/blog/2010/01/prettifying-debian-boot-output.html</link>
            <guid>http://www.earth.li/~noodles/blog/2010/01/prettifying-debian-boot-output.html</guid>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">Debian</category>
            
            <pubDate>Thu, 07 Jan 2010 04:20:35 +0000</pubDate>
        </item>
        
        <item>
            <title>Neat find of the day: inputlirc</title>
            <description><![CDATA[I've recently been fixing up my <a href="http://www.tvdr.de/">VDR</a> setup to work with <a href="http://www.freesat.co.uk/">FreeSat</a> and make it brother/parent friendly. I've applied the <a href="http://www.rst38.org.uk/vdr/">EPG patches</a> to get the 7 day guide, setup an autologging in user under gdm with vdr-sxfe running and that left getting the remote working. For some reason my old serial dongle wasn't happy with <a href="http://www.lirc.org/">lirc</a> - it got detected ok, and would show some signal when buttons were pressed but didn't work with the old config. The entire hardware of the box has changed, so it seems likely something isn't quite right (in particular the lirc drivers spew out warnings about SMP bits so I should probably try the dongle under a single core setup to rule that out, but there's also a move to 64 bit involved).<br /><br />The easy solution to have something sorted for Christmas was to pickup a cheap remote from <a href="http://www.ebay.co.uk/">eBay</a>. This ended up being a Cyberlink remote + USB dongle combo. Worked just fine when plugged in, turning up as a normal input device and the obvious keys doing the obvious things. I wanted <i>all</i> the keys to work though, as I'd got used to having a lot of the VDR functions instantly accessible rather than having to work my way through the menus. Various searches suggested I'd need to use LIRC to access the odder keys. That seemed a lot of hassle for something that was doing the decoding itself. Some playing with xev turned up keycodes for a number of the keys, but there were still a few missing (and important ones at that, such as Red/Green/Yellow/Blue). Further digging found me a suggestion of an Xorg keyboard map that would map the KEY_RED etc from the evdev device into something workable under X. And then I found <a href="http://svn.sliepen.eu.org/inputlirc/trunk/">inputlirc</a> via the <a href="http://packages.debian.org/inputlirc">Debian package</a>. This is really bloody neat - point it at an evdev device and it will present all of the KEY_* codes out as lirc keys. If you pass the <tt>-g</tt> parameter it makes sure the key presses <i>only</i> go to lirc as well. Exactly what I want and a doddle to setup - no messing with a big configuration file, just edit <tt>/etc/defaults/inputlirc</tt> to point to the correct <tt>/dev/input/by-id/</tt> file, add the <tt>-g</tt> to the options in that file and restart.<br /><br />Now the main remaining task is to get it working with BBC/ITV HD.<br />]]></description>
            <link>http://www.earth.li/~noodles/blog/2009/12/neat-find-of-the-day-inputlirc.html</link>
            <guid>http://www.earth.li/~noodles/blog/2009/12/neat-find-of-the-day-inputlirc.html</guid>
            
            
            <pubDate>Thu, 24 Dec 2009 00:03:21 +0000</pubDate>
        </item>
        
        <item>
            <title>DIY laptop SSD &quot;upgrade&quot;</title>
            <description><![CDATA[I'm due a new laptop; my Portege R200 is over 4 years old now, I find it much slower than my desktop (no surprise; P-M 1.2GHz/1.2GB vs Core 2 2GHz/4GB), it's had a new battery and it has an annoying whine on the screen unless you press the side in just the right way. It's still better for long periods of use than my EEE 901, which is why I keep it. In particular I'm off to <a href="http://www.lca2010.org.nz/">LCA2010</a> in January, along with some associated travel beforehand, and I'll want more than the EEE for that, but probably not a brand new laptop. Which meant that when the R200 started throwing disk errors recently I wasn't particularly happy.<br /><br />Having decided it wasn't worth buying a new 1.8" drive I looked for alternatives. <a href="http://www.ebay.co.uk/">eBay</a> offered plenty of options for 1.8" IDE to CF adaptors and I picked up a Kingston 32GB CF card from <a href="http://www.ebuyer.com/">eBuyer</a>. I copied across the data from the old drive using a USB adaptor, frobbed grub sufficiently that I got it installed on the CF, then swapped out the drive for the adaptor + CF. I had to do the swap a few times; the first I forgot to have a kernel with ext2 support (the HDD was ext3, but I went back to ext2 for the CF). The second I'd done my usual trick of forgetting to populate /dev with things like console and sda* (ie enough to get to the point where udev will run). And then grub needed some prodding to boot without intervention. I got there in the end and I'm currently writing this from said laptop.<br /><br />I've made a few changes to the Debian install in an attempt to make things smoother; basically the same tricks people have been using on EEEs or other slow SSD devices. No swap, Iceweasel synchronous toolkit writes disabled, filesystems mounted with noatime, /tmp on tmpfs, various daemons that I don't really use disabled. It's still noticably slower than with the HDD, particularly on writes. However it's quieter and as long as it lasts for the next 3 months I'm happy (plus after that I can reuse the 32G CF card somewhere else, which I couldn't have done with a 1.8" HDD as easily).<br /><br />Now, back to eying the Lenovo <a href="http://www.thinkwiki.org/wiki/Category:X200s">X200s</a> (ugly, trackpoint but 1440x900 display, good battery life) and Toshiba <a href="http://laptops.toshiba.com/laptops/portege/R600">R600</a> (slower, lower res but pretty and trackpad).as potential replacements. Maybe there'll be something even shinier in 12" by next year...<br />]]></description>
            <link>http://www.earth.li/~noodles/blog/2009/11/diy-laptop-ssd-upgrade.html</link>
            <guid>http://www.earth.li/~noodles/blog/2009/11/diy-laptop-ssd-upgrade.html</guid>
            
            
            <pubDate>Sun, 29 Nov 2009 17:02:39 +0000</pubDate>
        </item>
        
        <item>
            <title>Playing with an e-reader</title>
            <description><![CDATA[I've always preferred dead tree to reading things on screen; I just find it easier. I've tried reading fiction in the past off a laptop and just didn't find it as enjoyable an experience; whether it was the form factor (hard to curl up with a laptop, even a netbook), the quality of the screen or the interface I don't know. Equally with technical documentation if it's something I'm using a lot I prefer a printed copy to flick through. However e-ink based e-readers are becoming much more common and affordable and I figured I should give the whole ebook experience another try.<br /><br />I spent 3 weeks in October in the Bay Area on work, so I borrowed my Dad's Sony <a href="http://wiki.mobileread.com/wiki/PRS505">PR505</a> for the trip. First problem is that it's picky about USB charging - works fine if attached to a computer, but using a Blackberry charger <i>looks</i> like it's fine but then results in what looks like a hanging reader. However once charged it lasts for ages - I charged it before I went and only hooked it up to my laptop once during the trip to transfer some new content onto it. The form factor is also quite good; a bit heavier than a book, but not excessively so. Holdable in one hand, big enough screen that I wasn't squinting at it. Slightly too big physically to easily go in a coat pocket the way a paperback would unfortunately, but perfectly fine for taking to read at breakfast every morning in the hotel.<br /><br />The screen was also much better than I'd expected. I knew the technology was different and supposed to be easier to read than traditional LCDs, but I was sceptical. Overall I had no problems with it. I was even quite impressed with the Sony's zoom function - one of the PDFs I was reading was too small when view full screen, so I zoomed in so it was readable. The nice feature was that then the "next page" button gave me the next bit of text to read, rather than the actual next page, so it remained very easy to navigate through as I read. A small touch, but very welcome.<br /><br />This isn't intended to be a review of the Sony reader; that just happened to be the model I was easily able to borrow. I happened to see a Kindle in use on the plane and I was struck by how much bulkier it seemed, though having looked at the relative specs it seems this is entirely due to the keyboard rather than any difference in screen size. The <a href="http://www.barnesandnoble.com/nook/">Nook</a> was also announced during my trip and I'd quite like a play with that as it looks quite nice.<br /><br />Despite my positive experience with the Sony I'm not planning to go out and get one just yet. And that's the lack of sensibly priced content. When I bought my first mp3 player I could take my exising CD collection, rip it and be able to play it on my new device. This meant I got an immediate benefit of having my entire music collection with me all the time, just by buying the player. If I buy an e-reader then in order to get all my existing books on it I have to go and buy them again. What's worse is they'll cost me the same or more than I paid for the paperbacks. I can't go and exchange my Pratchett collection for the electronic versions for a nominal fee. I can't easily scan them in myself and produce some decent ebooks. I can't even go and buy the entire set for £20; I'd have to spend something like ten times that. With mp3s I can continue to buy the real item and also have it on my portable player. Or, while albums still don't seem to be much cheaper electronically than on CD, there is at least the ability to buy a single track if that's all I want. Books don't have a comparison. I'm not going to want to buy a single chapter, am I?<br /><br />There are some sites out there that can provide cheaper ebooks - Rachel Willmer runs <a href="http://www.ebookprice.info/">ebookprice.info</a> which lets you compare pricing from different vendors. There's also <a href="http://www.gutenberg.org/wiki/Main_Page">Project Gutenberg</a> if you're looking for out of copyright books. Finally Peter Corlett pointed me at the <a href="http://www.baen.com/library/">Baen Free Library</a>, which I haven't downloaded anything from but will definitely investigate at some point. I still maintain that none of these are enough and that content provision will continue to be a hinderance for e-reader mass adoption until there is some fundemental change in the way its provision is handled.<br /> ]]></description>
            <link>http://www.earth.li/~noodles/blog/2009/11/playing-with-an-e-reader.html</link>
            <guid>http://www.earth.li/~noodles/blog/2009/11/playing-with-an-e-reader.html</guid>
            
            
            <pubDate>Sun, 15 Nov 2009 13:56:00 +0000</pubDate>
        </item>
        
        <item>
            <title>What to wear?</title>
            <description><![CDATA[I tend to dress quite casually - unless there's a good reason to do otherwise I'll be in jeans and a t-shirt, or something similar. I'm comfortable in it and I take the view point that in general people shouldn't be making assumptions based on what I'm wearing. Of course they do, and while this can be infuriating at times it can also be amusing. The man at the RBoS who witnessed me signing the personal DD guarantee form for Black Cat obviously couldn't reconcile my appearance with what I was there to do, for example.
<br />
<br />
I'd never thought about this from the other side until a few weeks ago. I spoke to someone who explained how difficult it had become to conduct
business meetings with other companies with the increased level of business casual. In fact on occasion different branches of the same company that he'd be meeting with would have different dress codes, so he'd go to something involving casual dress in the morning and something
with full business suit attire in the afternoon and end up feeling over or under dressed.
<br />
<br />
This isn't likely to make me change my own behaviour in the immediate future (I don't have to interact with external parties as part of my current job). It did help me realise that there was another explanation for awkward behaviour when I'm my usual scruffy self that wasn't just about judging on appearances though.
<br />
<br />
(All of the above blatantly obvious once you think about it, but it took that conversation for me to do so.)
]]></description>
            <link>http://www.earth.li/~noodles/blog/2009/10/what-to-wear.html</link>
            <guid>http://www.earth.li/~noodles/blog/2009/10/what-to-wear.html</guid>
            
            
            <pubDate>Tue, 13 Oct 2009 07:17:08 +0000</pubDate>
        </item>
        
        <item>
            <title>Back from DebConf9</title>
            <description><![CDATA[Finally back home post DebConf9; felt reasonably productive and I have a lengthy todo list which I've even written down and started work on. More on that when any of them come to fruition.<br /><br />Very much enjoying the return to easily accessible decent tea and salad/other vegetables. I haven't eaten any fish since my return and hopefully won't for at least a few days. Also I feel the need for an alcohol free week so my liver can recover. Back to work tomorrow - what is it I do again? Also, bets on how my cow orkers will react to my purple hair?]]></description>
            <link>http://www.earth.li/~noodles/blog/2009/08/back-from-debconf9.html</link>
            <guid>http://www.earth.li/~noodles/blog/2009/08/back-from-debconf9.html</guid>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">DebConf</category>
            
            <pubDate>Sun, 02 Aug 2009 20:50:48 +0000</pubDate>
        </item>
        
        <item>
            <title>Home directory on SD card?</title>
            <description><![CDATA[<p>I'm off to DebConf next Thursday. I'm looking forward to it; I could do with a change of scenery and some time with friends. I'm having my usual &quot;What do I need to bring?&quot; worries and I got to wondering about which laptop to bring - since last year I've gained an EEE 901, but I still have my Toshiba R200.</p>

<p>In general I'm using the EEE these days when I'm not using my desktop - it's much more convenient to throw in an overnight bag. However the keyboard and screen <i>are</i> too small for hard core use. Which suggests I should take the R200. Except the EEE battery life is great and a small laptop is handy for use in talks. So I think I'll bring both. Which led me to think about the fact I don't use the R200 that much these days and why that is. And it's partly about all the various bits that live in my home directory that mean switching machine is a sort of context shift. That applies to my desktops too.</p>

<p>And then I had a thought. Both laptops have built in SD readers. So do both of the desktops I regularly use. Why not just put my home directory on an SD card? These are machines that I don't log into remotely, so the card being removed when I'm not in front of the machine isn't a problem (it means I have to log out, but I think that's acceptable). I'm not totally sure of the speed of the readers in the various machines, but I guess the best way to find out if it's doable is to try it.</p>

<p>So, various things to ponder:</p>

<ul>
<li>Card size. Do all my readers support SDHC? In which case I should get an 8G or 16G card. Otherwise 1G is probably the safest maximum size? I suppose I can order one of each; they'll get used somewhere even if it's not for this.</li>
<li>Card make. I don't want something that's going to die after a week of use; I'll try to ensure cache directories and similar are symlinks to a local piece of storage but I don't have a feel for the number of writes my home directory normally sees. I like Crucial for RAM. How's their flash? Integral? Or just bite the bullet and accept Sandisk are going to be best, if pricey?</li>
<li>Filesystem. ext3? Or will the journal kill the card faster - I understood this was less of a concern these days. Are ext4 or btrfs ready for this sort of use? Perhaps this is the right time to try; I can keep backups on every machine that uses the card easily enough.</li>
<li>Crypto. I may as well encrypt the card for security as I doubt that'll end up being the bottleneck for access. Is dm-crypt the right thing? libpam-mount looks like it might let me tie things together in a simplish fashion.</li>
<li>Union mount? It might be nice to have a basic home directory on every machine so I can login even if I don't have my card with me. Or have local configuration bits specific to each machine. Perhaps something for a bit further down the line - I'm not sure any of the unionfs options are in mainline kernels yet?</li>
</ul>

<p>I suppose I'll do some card manufacturer investigation and try and get a couple of cards ordered in time to play with over DebConf.</p>]]></description>
            <link>http://www.earth.li/~noodles/blog/2009/07/home-directory-on-sd-card.html</link>
            <guid>http://www.earth.li/~noodles/blog/2009/07/home-directory-on-sd-card.html</guid>
            
            
            <pubDate>Sat, 18 Jul 2009 18:26:54 +0000</pubDate>
        </item>
        
        <item>
            <title>Going to DebConf 9</title>
            <description><![CDATA[<span class="mt-enclosure mt-enclosure-image" style="display: inline;"><img alt="debconf9-going-to.png" src="http://www.earth.li/%7Enoodles/blog/2009/06/22/debconf9-going-to.png" class="mt-image-none" style="" height="89" width="150" /></span><br /><br />I've known I was going for a while, but only finally booked the holiday off work and had it approved last week (unfortunately they're not giving me the time for free like last year. :( ). I'll be there for DebConf proper (ie 23rd until 31st). In the unlikely event anyone else is flying DUB&lt;&gt;MAD my flights are:
<br /><br />
<pre>2009-07-23 06:00 (DUB) -&gt; 09:30 (MAD) FR 7158
2009-07-31 20:15 (MAD) -&gt; 21:50 (DUB) EI 595
</pre>
<br />
I'm on the 16:25 Talgo from Madrid and then the 09:25 back on the 31st. Looks like I'll have company from the <a href="mailto:rooms@debconf.org">train booking</a> page.
<br /><br />
Also I've been doing the first draft of the <a href="http://the.earth.li/%7Enoodles/dc9-rooms-draft-1">room allocation</a>. If you're expecting to stay at DebConf organised accommodation you should check your name is on this list with the expected dates, and email <a href="mailto:rooms@debconf.org">rooms@debconf.org</a> if it's not.]]></description>
            <link>http://www.earth.li/~noodles/blog/2009/06/going-to-debconf-9.html</link>
            <guid>http://www.earth.li/~noodles/blog/2009/06/going-to-debconf-9.html</guid>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">DebConf</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">Debian</category>
            
            <pubDate>Mon, 22 Jun 2009 20:04:32 +0000</pubDate>
        </item>
        
        <item>
            <title>Breaking the Web of Trust</title>
            <description><![CDATA[With all the discussion about SHA-1 weaknesses and generation of new OpenPGP
keys going on there's some concern about how the web of trust will be affected.
I'm particularly interested in the impact on Debian; while it's possible to add
new keys and keep the old ones around that hasn't worked so well for us with
the migration away from PGPv3 keys. We still have 125 v3 keys left, many of
them for users who also have a v4 key but haven't asked for the v3 key to be
removed or responded to my email prodding them about it. I don't want to repeat
that.
<br /><br />
So if we're looking at key replacement we need to have some idea about where
our Web of Trust currently stands, and what effect various changes might have
on it. I managed to find the keyrings Debian shipped all the way back to slink
and ran the keyanalyze and cwot stats against them. I then took the current
keyring, pull in all the updates for the keys in it (so that any signatures
from newly generated keys would be included) and ran the stats again. Finally I
took details of 12 key migrations (mostly from Debian Planet but also a couple
of others I knew about) and calculated what the effect of removing each key
would be. These stats are cumulative and I replaced the most well connected
(by centrality) keys first.
<br /><br />
The results are below.
<br /><br />
<ul>
<li>Total is the total number of keys in the keyring</li>
<li>SCS is the largest Strongly Connected Subset</li>
<li>Reachable is the largest reachable subset</li>
<li>MSD is the Mean Shortest Distance</li>
<li>Centrality is the average centrality for the reachable subset</li>
<li>update-<i>foo</i> indicates that <i>foo</i>'s key was replaced with a newer one</li>
</ul>
<table>
<tr><th></th><th>Total</th><th colspan="2">SCS</th><th colspan="2">Reachable</th><th>MSD</th><th>Centrality</th></tr>
<tr><td>1999-02-06 (slink)</td><td align="right">228</td><td align="right">36</td><td align="right">(15.78%)</td><td align="right">50</td><td align="right">&nbsp;(21.92%)</td><td align="right">2.9022</td></tr>
<tr><td>2000-01-03 (potato)</td><td align="right">375</td><td align="right">104</td><td align="right">&nbsp;(27.73%)</td><td align="right">180</td><td align="right">&nbsp;(48.00%)</td><td align="right">4.3382</td></tr>
<tr><td>2001-09-22 (woody)</td><td align="right">948</td><td align="right">538</td><td align="right">&nbsp;(56.75%)</td><td align="right">704</td><td align="right">&nbsp;(74.26%)</td><td align="right">4.7320</td><td align="right">2008.6249</td></tr>
<tr><td>2005-05-28 (sarge/etch)</td><td align="right">&nbsp;1106</td><td align="right">883</td><td align="right">&nbsp;(79.83%)</td><td align="right">969</td><td align="right">&nbsp;(87.61%)</td><td align="right">3.3485</td><td align="right">2074.6604</td></tr>
<tr><td>2007-12-04</td><td align="right">1191</td><td align="right">1001</td><td align="right">&nbsp;(84.04%)</td><td align="right">1062</td><td align="right">&nbsp;(89.16%)</td><td align="right">3.1103</td><td align="right">2113.3747</td></tr>
<tr><td>2009-01-18 (lenny)</td><td align="right">1126</td><td align="right">947</td><td align="right">&nbsp;(84.10%)</td><td align="right">1010</td><td align="right">&nbsp;(89.69%)</td><td align="right">3.0489</td><td align="right">1941.2594</td></tr>
<tr><td>2009-04-04 (squeeze/sid)</td><td align="right">1121</td><td align="right">946</td><td align="right">&nbsp;(84.38%)</td><td align="right">1008</td><td align="right">&nbsp;(89.91%)</td><td align="right">3.0466</td><td align="right">1936.9761</td></tr>
<tr><td>2009-05-06 (current)</td><td align="right">1067</td><td align="right">894</td><td align="right">&nbsp;(83.78%)</td><td align="right">958</td><td align="right">&nbsp;(89.78%)</td><td align="right">2.9670</td><td align="right">1759.4363</td></tr>
<tr><th></th<th>Total</th><th colspan="2">SCS</th><th colspan="2">Reachable</th><th>MSD</th><th>Centrality</th></tr>
<tr><td>base</td><td align="right">1067</td><td align="right">904</td><td align="right">&nbsp;(84.72%)</td><td align="right">959</td><td align="right">&nbsp;(89.87%)</td><td align="right">2.9640</td><td align="right">1776.4389</td></tr>
<tr><td>update-93sam</td><td align="right">1067</td><td align="right">902</td><td align="right">&nbsp;(84.53%)</td><td align="right"> 958</td><td align="right">&nbsp;(89.78%)</td><td align="right">2.9734</td><td align="right">1780.9874</td></tr>
<tr><td>update-joerg</td><td align="right">1067</td><td align="right">900</td><td align="right">&nbsp;(84.34%)</td><td align="right"> 958</td><td align="right">&nbsp;(89.78%)</td><td align="right">2.9776</td><td align="right">1780.7578</td></tr>
<tr><td>update-aurel32</td><td align="right">1067</td><td align="right">898</td><td align="right">&nbsp;(84.16%)</td><td align="right"> 957</td><td align="right">&nbsp;(89.69%)</td><td align="right">2.9803</td><td align="right">1779.2497</td></tr>
<tr><td>update-noodles</td><td align="right">1067</td><td align="right">896</td><td align="right">&nbsp;(83.97%)</td><td align="right"> 956</td><td align="right">&nbsp;(89.59%)</td><td align="right">2.9831</td><td align="right">1777.8326</td></tr>
<tr><td>update-jaldhar</td><td align="right">1067</td><td align="right">896</td><td align="right">&nbsp;(83.97%)</td><td align="right"> 955</td><td align="right">&nbsp;(89.50%)</td><td align="right">2.9855</td><td align="right">1779.9193</td></tr>
<tr><td>update-srivasta</td><td align="right">1067</td><td align="right">896</td><td align="right">&nbsp;(83.97%)</td><td align="right"> 955</td><td align="right">&nbsp;(89.50%)</td><td align="right">2.9904</td><td align="right">1784.3382</td></tr>
<tr><td>update-ana</td><td align="right">1067</td><td align="right">895</td><td align="right">&nbsp;(83.88%)</td><td align="right"> 954</td><td align="right">&nbsp;(89.40%)</td><td align="right">2.9926</td><td align="right">1784.3102</td></tr>
<tr><td>update-nobse</td><td align="right">1067</td><td align="right">893</td><td align="right">&nbsp;(83.69%)</td><td align="right"> 953</td><td align="right">&nbsp;(89.31%)</td><td align="right">2.9947</td><td align="right">1782.2392</td></tr>
<tr><td>update-neilm</td><td align="right">1067</td><td align="right">892</td><td align="right">&nbsp;(83.59%)</td><td align="right"> 951</td><td align="right">&nbsp;(89.12%)</td><td align="right">2.9974</td><td align="right">1782.6098</td></tr>
<tr><td>update-reg</td><td align="right">1067</td><td align="right">891</td><td align="right">&nbsp;(83.50%)</td><td align="right"> 950</td><td align="right">&nbsp;(89.03%)</td><td align="right">2.9977</td><td align="right">1780.8515</td></tr>
<tr><td>update-rmayorga</td><td align="right">1067</td><td align="right">890</td><td align="right">&nbsp;(83.41%)</td><td align="right"> 949</td><td align="right">&nbsp;(88.94%)</td><td align="right">2.9984</td><td align="right">1779.4910</td></tr>
<tr><td>update-evgeni</td><td align="right">1067</td><td align="right">889</td><td align="right">&nbsp;(83.31%)</td><td align="right"> 948</td><td align="right">&nbsp;(88.84%)</td><td align="right">2.9974</td><td align="right">1776.6445</td></tr>
</table>
<br />
This is actually more hopeful than I thought. There's an obvious weakening as a
result of the migrations, but the MSD stays under 3 and the centrality stays
fairly constant too. The reachable/SCS counts do decrease, but at this point it
looks fairly linear rather than an instant partition. Of course the more keys
that are removed the more likely this is to drop off suddenly. Counteracting
that DebConf9 is coming up which will provide a good opportunity for normally
geographically disperse groups to cross sign, reinforcing the WoT for these new
keys.
<br /><br />
Either way I at least have a better handle on the current state of play, which
gives me something to work with when thinking about how to proceed. For now,
bed.
]]></description>
            <link>http://www.earth.li/~noodles/blog/2009/05/breaking-the-web-of-trust.html</link>
            <guid>http://www.earth.li/~noodles/blog/2009/05/breaking-the-web-of-trust.html</guid>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">Debian</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">PGP</category>
            
            <pubDate>Wed, 13 May 2009 23:28:35 +0000</pubDate>
        </item>
        
        <item>
            <title>Adventures with an Intel G41 and KMS</title>
            <description><![CDATA[I bought a new machine recently; for the flat at present with the aim of it becoming an upgrade for the media box once my lease is up. Nothing spectacular; <a href="http://processorfinder.intel.com/details.aspx?sSpec=SLAY7">E5200</a> Dual Core Pentium at 2.5Ghz, <a href="http://www.msicomputer.co.uk/index.php?func=proddesc&prod_no=1495&maincat_no=1&cat2_no=170">MSI G41M-FIDP</a> mobo and 4G of <a href="http://www.ocztechnology.com/">OCZ</a> DDR2 800. I don't need that much, but for &pound;30 how could I resist? Total price, including the extra postage tax to NI and a small case, &pound;200 from <a href="http://www.ebuyer.com/">eBuyer</a>. I had an existing HD I could use and also managed to find a spare DVD writer too.
<br /><br />
I did a 64 bit <a href="http://www.debian.org/releases/lenny/">lenny</a> install from the multiarch netinst CD. There was a slight issue with partman getting confused at one point but I couldn't reproduce it so it might well have been user error. Network, graphics, sound all detected fine out of the box.
<br /><br />
Anyway. Part of the reason for a G41 based board is that it's a fairly recent Intel chipset but slightly cheaper than the cutting edge G45. And Intel have been pretty good about getting decent support for their chipsets, both in X for 2D and Mesa for 3D. Unfortunately the X support in lenny isn't great; the driver (2.3.2) works, but I found I needed to disable acceleration for it to be reliable. And I wanted to take advantage of what the chipset could offer.
<br /><br />
Helpfully there was a push of various shiny new bits of X into unstable last week, including <a href="http://packages.qa.debian.org/libd/libdrm.html">libdrm</a> 2.4.5 and <a href="http://packages.qa.debian.org/x/xserver-xorg-video-intel.html">xserver-xorg-video-intel</a> 2.6.3. So I thought I'd give that a try. I don't want to track unstable on this box as it'll have pretty dire connectivity (Orange 3G at best). Testing may be a possibility but I'd need to sort out a way of pulling the updates via a USB stick on a better connected box - pretty sure I've seen things about doing this in the past so will have to investigate.  For the moment I added an entry for unstable, set pinning to prefer lenny and told aptitude to install xserver-xorg-video-intel and mesa from unstable. While I can't possibly recommend this unless you're confident about being able to repair any resulting mess yourself I found it went quite smoothly and didn't pull in nearly as much new stuff as I feared.
<br /><br />
The newer X/Mesa packages alone weren't enough. The PCI IDs for the G41 aren't yet in mainline kernels, let alone the 2.6.26 variant in stable.  So I compiled up 2.6.29.1 with this <a href="http://www.mail-archive.com/dri-devel@lists.sourceforge.net/msg36219.html">patch</a> and figured I'd enable Kernel Mode Setting at the same time. 2 reboots later (when setting KMS you don't want to enable the intelfb driver, but you do still need to enable the &quot;Console on Framebuffer&quot; option. Ooops.) and I had a shiny X install proclaiming OpenGL 2 hardware acceleration support and Xv. Plus switching between X and a text console was pretty damn smooth. Rockin'
<br /><br />
On the whole I'm quite impressed, though I am seeing occasional freezes with Xine and Xv output - not sure what it's tickling as mplayer seems to be ok and I can't actually get any error output when it happens. Will try and hook it up to the network and see if I can still login that way at some point. For the moment it's still perfectly usable aside from that.]]></description>
            <link>http://www.earth.li/~noodles/blog/2009/04/adventures-with-an-intel-g41-a.html</link>
            <guid>http://www.earth.li/~noodles/blog/2009/04/adventures-with-an-intel-g41-a.html</guid>
            
            
            <pubDate>Sun, 12 Apr 2009 14:38:30 +0000</pubDate>
        </item>
        
        <item>
            <title>Oh yeah, we released, didn&apos;t we?</title>
            <description><![CDATA[Nearly a month has elapsed since Debian released Lenny. The interesting thing for me about this release was that I failed to get to the point where running etch was causing me pain. This became even more evident when Katherine commented on my <a href="http://www.einval.com/%7Esteve/DebianT/lenny_valentine.png">Lenny T-Shirt</a> - I'd forgotten to mention our release to her! Previously there have been a bunch of features coming that I really wanted, sometimes to the point of using backports. It's probably something to do with the way I run Debian; I use stable for remote machines and while in the past this would have meant quite a few work boxes these days it's just a box at my parents' and my colo.

Where I felt the pain during this release cycle was on the boxes where I run unstable (my home desktop) or testing (my work box and my laptops). Development on new shininess slows down significantly while we're preparing for release (not unsurprisingly). And there are things coming up I quite like the look of, largely aimed at the desktop arena. I've been running <a href="http://www.gnome.org/projects/NetworkManager/">Network Manager</a> 0.7 from experimental on my EEE, for example - I need the HSO 3G support to avoid unnecessary faff on a daily basis. I've got ATI cards in my work and home desktops, so I'm watching the <a href="http://www.mesa3d.org/">Mesa</a> developments with interest - roll on OpenGL 2.0 support hopefully. The Intel KMS support that doesn't seem to be quite there yet but RSN, no, really, will be nice for my laptops. Experimental <a href="http://www.cadsoft.de/vdr/">VDR</a>s are looking interesting and perhaps worth upgrading my PVR to.
<br /><br />
For a long time I haven't really understood the point of view that Debian shouldn't release. Or rather, I haven't understood why people would think that was a serious option. The first Debian box I installed went into a colo facility shortly afterwards. This is the first release I've not been running Debian on a commercial colo box and while I treat my personal colo in a similar fashion it's not quite the same in terms of priorities. However I still think regular releases are hugely important to the project. Some pain for those of us more interested in new shiny is a small price to pay for producing a flexible, reliable distribution, be they server administrators (though I see a worrying number of people decide to install testing on their production servers and then rarely/never update it), derivers or appliance vendors.
<br /><br />
Mind you, now we've released I'm going to have to do all those things I've been putting off. I should probably start with moving my Perl bits into <a href="http://pkg-perl.alioth.debian.org/">pkg-perl</a>. And maybe I should switch over some sources.list files to point at squeeze instead of lenny...]]></description>
            <link>http://www.earth.li/~noodles/blog/2009/03/oh-yeah-we-released-didnt-we.html</link>
            <guid>http://www.earth.li/~noodles/blog/2009/03/oh-yeah-we-released-didnt-we.html</guid>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">Debian</category>
            
            <pubDate>Wed, 11 Mar 2009 22:58:59 +0000</pubDate>
        </item>
        
        <item>
            <title>Bachelor Pad</title>
            <description><![CDATA[<a href="http://www.translink.co.uk/">Translink</a> are breaking the trains for 3 months at the end of March. This is manifesting as the line between Ballymena and Coleraine being entirely shut (it's only single track, so it's not like they can do one side at a time), but will hopefully result in a smoother, faster journey. Not much good for the 3 months when my journey goes from a single train ride to a train, bus, then another train ride. And gets longer by 20-30 minutes (so potentially 5 hours a day commuting. Yay!). I think not.
<br /><br />
So I have rented a flat in Belfast, conveniently only 3 minutes walk from work. 3 month leases are hard to find so I have it for 6 months. I'm a bit freaked. I shouldn't be really; I lived alone when Katherine first moved back to NI. But that was in a house I'd been in for ages rather than somewhere entirely new to me. It proved its worth last night when we were able to walk to <a href="http://www.bbc.co.uk/northernireland/atl/dyrtft/">Do You Remember the First Time?</a> in a couple of minutes though. Being in the city centre is damn handy, though I'm having to get used to the regular noise of traffic again. :)
<br /><br />
(This post primarily a test of <a href="http://dropline.net/past-projects/drivel-blog-editor/">Drivel</a>; it's not worth the hassle of dealing with Virgin or BT to get a broadband connection, so I'm going to end up continuing to use my <a href="http://www.orange.co.uk/">Orange</a> 3G dongle and trying to do things in local clients where possible.)]]></description>
            <link>http://www.earth.li/~noodles/blog/2009/03/batchelor-pad.html</link>
            <guid>http://www.earth.li/~noodles/blog/2009/03/batchelor-pad.html</guid>
            
            
            <pubDate>Tue, 10 Mar 2009 21:07:12 +0000</pubDate>
        </item>
        
    </channel>
</rss>
