Steve's blog
   


Steve About
Steve's blog,
The Words of the Sledge
steve@einval.com

Subscribe
Subscribe to the RSS feed.

Links

  • Home
  • Debian
  • PlanetDebian
  • Search PlanetDebian
  • Friends

  • Matthew Garrett
  • Simon Huggins
  • Jonathan McDowell
  • Martin Michlmayr
  • Andrew Mobbs
  • David Pashley
  • Mike Pitt
  • Scott James Remnant
  • Daniel Silverstone

  •        
    Monday, 09 January 2012

    Armhf buildds and status in Debian

    Current status

    Back in September, I wrote about the machines that I set up to help bootstrap the new armhf port in Debian. Basing on Konstantinos' huge efforts in bringing up the new "architecture" in debian-ports, we started importing armhf into the main Debian archive on the 24th of November. Since then, those builders have been churning away night and day to build the huge collection of software that makes up the Debian archive. The current state can be seen on the armhf buildd status page, and there's a nice graph showing how quickly we've managed to run from 0 to over 90% of the archive here. (Click on the image for a larger version, or visit https://buildd.debian.org/stats/ for other versions. We overtook hurd-i386 quickly and are now ahead of the kfreebsd-* architectures.

    armhf bootstrap graph

    We've recently brought 3 more similar build machines online (hildegard, howells and hummel), again sponsored by the nice folks at Linaro but now hosted at the York NeuroImaging Centre at the University of York. This gives us both more build horsepower to keep up with building more different bits of Debian (experimental, updates etc.) and more redundancy in case of problems.

    We now have the vast majority of the archive built, and now a number of us are concentrating on fixing the remaining issues: language bootstraps and bugs. Also, on the 7th of January we were just added into testing, the next step on our path for inclusion as a Debian release architecture.

    Setting up the machines

    A lot of people have been asking me about the physical setup I showed in my last blog about these machines, so here's more details for those who are interested.

    • 3U mini-rack
      • Schroff model 24563-192 subrack (3U, 235mm deep), ordered from Farnell in the UK.
      • Added some 24560-353 220mm guide rails (Farnell link).

      Lovely kit, which fits together easily for a rigid enclosure.

    • ATX PSU
      • Ideally with lots of old-style Molex power connectors. I bought the cheapest one I could find from my supplier, and dismantled it. I cannibalised another old PSU and soldered on some extra Molex connectors.
      • In theory, the 6 boards and disks I'm using here could use up to 15W each on the 5V rail (but in practice much less); any current PSU on the market should handle that easily.
      • While I had the case open, I drilled holes and put some bolts through so I could mount it to the mini-rack.
      • Finally, connect together pins 15 and 16 on the ATX power connector so that the PSU will come on without needing to be connected to a PC motherboard (details on wikipedia).
    • Freescale iMX53 Quickstart boards
      • These are the little 3-inch square dev boards I'm using. I bought them from Mouser here, but there are quite a few other companies selling them too. Apparently this exact part has just gone EOL, but there is a replacement that I would hope to work in its place.
    • 2.5 inch SATA hard drives
      • I just bought what looked reasonably priced from my local supplier, 320 GB on the first machines and 250 GB on the next three after the recent rise in disk prices.
    • Cables and connectors
      • 45cm right-angle SATA cable with one right-angled end like this
      • Molex to twin SATA-power cable like this
      • 2.1mm/5.0mm power plug like here (L48AY at Maplin)

      The downside of the Quickstart board is that it doesn't include a SATA power connector on the board, just a SATA data connector. So, what I've done for my boards is modify Molex to SATA power splitters. This way I get a single power input for the board/drive combination as a whole.

      • The Molex socket will connect to the Molex plug from the PSU
      • The first SATA power connector goes to the laptop drive
      • Cut off the second SATA connector
      • Using the red and black (5V and ground) wires remaining, solder on a power plug to drive the board itself
    • Perspex board
      • I found a supplier near Cambridge for some perspex. Each machine has a base card measuring 220mm x 100mm, 2mm thick. I drilled holes and mounted each board with a drive and its cables as shown here.

    Mount the 6 boards into the mini-rack, connect up the Molex power connectors to each board, attach ethernet cables and turn it all on! Each board comes with a micro-SD card containing uboot and an Ubuntu installation. I've configured uboot to boot off the hard drive directly, but leaving configuration available to use the Ubuntu on the micro-SD as a simple rescue system should the need arise.

    The Quickstart boards are not ideal physically for two reasons: the lack of SATA power, plus you need to push a power button on each board to boot it - they don't boot automatically the moment power is applied. However, they're quite inexpensive little machines and have done a great job of building the Debian archive so far! The ideal machines for us would also include more RAM at this point. CPU on these is adequate, but the larger C++ packages (yay webkit!) use a huge amount of memory at link time. Linking in swap is not the best thing, performance-wise... :-(

    UPDATE 2012-01-12: Ian tells me that the newer Quickstart-R boards apparently have a different power controller; these now boot up straight away without needing you to push a button. That sounds useful.

    17:11 :: # :: /debian/arm :: 0 comments

    Monday, 05 September 2011

    Armhf buildds and porter box hosted at ARM

    I'm in the middle of setting up new build machines for the armhf port (see the wiki for more details). We'll shortly have six machines set up in the machine room here at ARM in Cambridge:

    • harris as a porter box
    • hartmann, hasse, hebden and henze running buildd software
    • hoiby as a hot spare

    hartmann

    All of these machines are Freescale i.MX53 Quickstart (aka "loco") development boards. They include a 1GHz i.MX53 CPU (based around the ARM Cortex A8, one of the ARMv7-A family). They have 1GB of RAM and native SATA. They're lovely little machines, measuring just 3 inches square. To mount them usefully in a machine room, I've mounted each board with a 320GB notebook hard drive and the necessary cabling onto a small perspex card as you can see here. Then we can fit 6 such machines and a normal PC-style ATX PSU into a 3U mini-rack. Well, it almost fits - the power supply pokes out a little so we'll need 4U of space when we come to mount it.

    armhf mini rack

    The Quickstart boards have been sponsored by Linaro, and ditto my time setting up these machines. Thanks!

    As is common with new development boards, these machines are not quite fully supported in Debian yet. The kernels we're using are locally-built, using the sources supplied by Freescale. For now, that means a heavily-patched "2.6.35" kernel but we're expecting to be able to switch to mainline very soon. The .config I'm using is kernel.config, and I've built it natively on harris using

    fakeroot make -j2 deb-pkg DEBEMAIL=93sam@debian.org DEBFULLNAME="Steve McIntyre" KDEB_PKGVERSION=1buildd1

    Similarly to the setup for the armel machines, for now I've tweaked things when installing the kernel:

    • depmod:
      • Need to make sure that depmod is run so the new kernel can find and load modules at boot. Added trivial script in /etc/kernel/postinst.d/depmod to do this.
    • initramfs-tools:
      • Needed to copy the file /etc/kernel/postinst.d/initramfs-tools into place from my amd64 machine; I'm guessing this would be there automatically on a new-enough version of initramfs-tools on the armel machines, but we're still using Lenny as a base system for now even if I'm using a Squeeze-based kernel.
    • flash-kernel:
      • Add support for these boards
      • #550584: kernel postinst hook script (/etc/kernel/postinst.d/zz-flash-kernel) to create uImage and uInitrd files from the kernel zImage and the initramfs.

    Finally, I've tweaked the uboot config on the machines to use the uImage and uInitrd files that are generated by flash-kernel:

    MX53-LOCO U-Boot > setenv loadaddr 0x70800000
    MX53-LOCO U-Boot > setenv initrdaddr 0x71000000
    MX53-LOCO U-Boot > setenv bootargs_sata set bootargs \$\{bootargs\} root=/dev/sda2 rw rootwait
    MX53-LOCO U-Boot > setenv load_sata_kernel ext2load sata 0:1 \$\{loadaddr\} /uImage
    MX53-LOCO U-Boot > setenv load_sata_initrd ext2load sata 0:1 \$\{initrdaddr\} /uInitrd
    MX53-LOCO U-Boot > setenv load_sata run load_sata_kernel load_sata_initrd
    MX53-LOCO U-Boot > setenv bootcmd_sata sata init\; run bootargs_base bootargs_sata load_sata\; bootm \$\{loadaddr\} \$\{initrdaddr\}
    MX53-LOCO U-Boot > setenv bootcmd run bootcmd_sata
    

    And I've added extra config into uboot to use the pre-installed Ubuntu system on the micro SD card as a fall-back:

    MX53-LOCO U-Boot > setenv bootcmd_rescue sata init\; run bootargs_base bootargs_sata\; mmc read 0 \$\{loadaddr\} 0x800 0x1800\; bootm
    

    17:15 :: # :: /debian/arm :: 3 comments

    Monday, 15 August 2011

    In one word: AWESOME

    Every year I worry that DebConf might not be as good as I hope, or not as good as previous years. Well, I've yet to be let down!

    The road trip down to Banja Luka was good fun, even if it took a little longer than planned. We ended up travelling down through Germany on the same Friday as much of the country finished work/school for their summer vacation, so there was a lot of traffic. Meh, we got there in the end.

    I made my usual mistake of planning some things to hack on during the DebConf week; by now I should know better... :-) I made a start on one small project, but then got so distracted by so many talks and side meetings with people that it's still waiting. As always, my own personal TODO list picked up huge amounts of extra stuff from those discussions. Catching up with, and socialising with, Debian friends from all over the world was also fun as always!

    Lots of highlights of the week for me, both for technical and social reasons:

    • Multi-arch is finally with us! Great talk from Steve Langasek, and a very useful meeting afterwards to unpick what work is still needed. Quite a bit, it seems... :-)
    • Useful meetings with Otavio to discuss future changes to how debian-installer is going to work, and how the debian-cd and debian-installer teams can work together better on that.
    • Catching up with Martin to work out what's needed to get pancutanfinally integrated with our regular CD builds.
    • Talking with Jimmy about where to go next for regular debian-live builds on our core CD build machine.
    • The ARM BoF, where things have moved on from "why should I care about ARM?" to "when will you have armhf ready for going in the archive?". W00t!
    • Doing our own day trip in the cars from the UK. We got to meet some very friendly and helpful local people, plus we found some incredible roads to drive on. Even if not all of them were technically roads yet... :-)
    • Playing poker in a real casino for the first time, along with a bunch of friends. Nice atmosphere, and very good fun.

    Banja Luka was a lovely place to visit, and a great host city for DebConf. Looking forwards to Managua now!

    12:01 :: # :: /debian/dc11 :: 0 comments

    Monday, 25 July 2011

    Unofficial backport CDs now hosted on cdimage.debian.org

    For several years, Kenshi Muto has been doing some awesome work on updated/backported Debian CDs, producing CDs with support for newer hardware and newer features. I've used them myself in the past to help get awkward machines working, and I know they are a great resource for lots of other Debian users.

    We've discussed things in the last few weeks, and agreed that it would be useful to host his images on cdimage.debian.org. The best place to look now is http://cdimage.debian.org/cdimage/unofficial/backports/. These are unofficial images, so please don't report bugs in the Debian BTS for them.

    14:41 :: # :: /debian/CDs :: 0 comments

    Wednesday, 13 July 2011

    Project Harmony?

    So, the "Harmony Project" launched their set of contributor agreements and tools last week. Colour me unimpressed...

    There's a claim on their website that they are a "community-centered group", but I don't see any list of people and organisations who contributed to this work. That bothers me. Regarding their aim to "assist organisations which use contribution agreements", I don't think that there is anything of value here for the Free Software community at all. Free Software developers don't need contribution agreements, and in my opinion encouraging their use like this is only going to cause further splintering of the community. We've managed for a very long time without them, why start now?

    As a developer, I personally don't believe in contribution agreements at all. If I contribute code to a project, it will be under the terms of a good Free Software license or not at all. That's all that's needed. There's a fair body of opinion out there on this - see pieces from Bradley Kuhn, Richard Fontana and Dave Neary for more discussion.

    What do you think?

    16:57 :: # :: /debian/issues :: 1 comment

    Friday, 08 July 2011

    Farewell to the Space Shuttle

    I agree with Julien - it's a crying shame to see the Space Shuttle finished. There's a lot of people bemoaning lack of progress elsewhere too, for example at http://abstrusegoose.com/377.

    23:00 :: # :: /misc :: 0 comments

    Sunday, 12 June 2011

    How to not embarrass yourself with missing attachments in mutt

    I keep on seeing people sending messages saying "see attached file" or similar in their emails, but then forgetting to actually attach the file. I used to do it myself lots, but then with the help of some ideas I found on the net I wrote the following script to use with mutt. To use it, use the setting "set sendmail=" to point at it.


    #!/bin/bash
    #
    # mutt-sendmail
    # helper script to reduce embarrassment with mutt :-)
    #
    # Copyright 2011 Steve McIntyre 
    # GPL v2
    
    ###
    # save msg in file to re-use it for multiple tests
    ###
    TMPFILE=`mktemp -p ~/tmp -t mutt.XXXXXX` || exit 2
    cat > $TMPFILE
    
    ## Attachment keywords that the message body will be searched for:
    KEYWORDS='attach|patch'
    
    ## Define test for multipart message.
    function multipart {
        grep -q '^Content-Type: multipart' "$TMPFILE"
    }
    
    ## Define test for keyword search.
    function word-attach {
        grep -v '^>' "$TMPFILE" | grep -v "^X-attached:" | grep -E -i -q "$KEYWORDS"
    }
    
    ## Header override.
    function header-override {
        grep -i -E "^X-attached: *none *$" "$TMPFILE"
    }
    
    ###
    # FINAL DECISION:
    # chain series of functions, use ! || && for logic connections,
    ###
    if multipart || ! word-attach || header-override; then
        formail -I bcc < $TMPFILE | /usr/lib/sendmail -oi -oem "$@"
        status=$?
    else
        echo "No file was attached but a search of the message text suggests there"
        echo "should be one.  Add a header \"X-attached: none\" to override this"
        echo "check if no attachment is intended."
        status=1
    fi
    rm -f $TMPFILE
    exit $status
    
    

    15:31 :: # :: /debian/mutt :: 3 comments

    Monday, 06 June 2011

    Silly Cars!

    Jo bought me a voucher last Christmas to spend some time on a race track, driving an Aston Martin and a Lamborghini. Finally we got around to using it last week. Jo is just as much a petrol-head as me, so I surprised her by buying the same experience voucher for her - call it a wedding present. Good call - she didn't stop grinning all day, even on the long drive home!

    The Aston Martin was a DB9 Volante (i.e. the convertible). Lovely car, but a little softer than I'd expected (maybe due to it being the convertible). I preferred the Lamborghini Gallardo, pictured here in a nice subtle colour. *grin*

    Lamborghini

    The nice folks doing the official photos at the track also took some extra photos of us sitting in another supercar - an Audi R8 V10 convertible. We've got those photos coming on CD in the post, and I'll post one when they land.

    23:59 :: # :: /misc/cars :: 1 comment

    Thursday, 05 May 2011

    Going to DebConf11!

    Going
 to DebConf11

    See you in Banja Luka! As mentioned previously, there's a gang of us heading over by car from the UK, which should be great fun. 9 countries in 2 days on the trip down, and an extra one on the way back, just because.

    12:55 :: # :: /debian/dc11 :: 0 comments

    Friday, 22 April 2011

    Bias in the news

    Apologies for yet more politics; normal-ish service will be resumed shortly, I hope.

    I've just put the following into the "BBC News website feedback" form, but I doubt it will have any impact. Quoting it here for the record...

    The BBC news website appears to be showing a systemic bias over the AV referendum. For the last few weeks, there has been regular coverage of the referendum and it seems that there has been the usual blind adherence to "balance" - every story about AV has included some of the (incorrect, unscientific, even hate-filled) propaganda from the "no to AV" campaign without critique or analysis. It's difficult to see any justification for this except deliberate editorial bias, but I don't imagine that there's much that can be done about that.

    However, right now on the BBC News front page at http://www.bbc.co.uk/news/ I can see that there is a link "Referendum views" that points to yet another opinion piece from a "No" campaigner (Frederick Forsyth). I only see a single view here, not the plural "views" suggested. I don't see any positive view for AV promoted from the front page at all, nor any link from this puff piece to the other articles that have been written in the recent past. Looking further, I can see that there *has*, in fact, been a positive piece on the News Front Page today (from Billy Bragg) but there are no visible links to it any more. Both articles were posted/updated at the same time this morning (22nd April, 08:34 BST) yet now only the negative one remains. Very shoddy, and not at all what I would expect from the BBC.

    23:24 :: # :: /misc/politics :: 11 comments

    Monday, 18 April 2011

    Lies, damn lies and voting system lies

    So we're just over 2 weeks away from our next set of local elections in the UK (May 5th), and alongside those elections we're also being asked about switching to a new voting system for future elections. For a long time we've used the simple First Past The Post (FPTP) system here, but now we have the possbility of moving to Alternative Vote (AV) instead.

    First Past The Post

    FPTP is simple to understand - the person who receives more votes than any single other person wins. But that simplicity is the only good thing, and there are many problems with it. It's unfair: in an election with 10 candidate, it's possible for a winner to have just 11% of the vote, even in the case where the other 89% of voters would consider them to be the worst option. It's also very susceptible to tactical voting, leading to nasty tactics in parties' election literature like claiming "party foo cannot win here, so don't waste your vote on them - vote for us instead!". See this Wikipedia article for more background.

    Alternative Vote

    AV is slightly more complicated. Instead of just placing a mark against their single preferred candidate, voters are able to rank as many of the candidates as they like. In the case that there is not a clear winner with more than 50% of the votes from the initial count, the lowest-ranked candidate is eliminated and second-choice votes from their supporters are counted and re-distributed for the other candidates. Iterate this process until one candidate gets more than 50% of the total votes. By re-calculating the votes this way, supporters of less popular candidates / parties should no longer feel the pressure to vote tactically and a more accurate picture of voter intention should emerge. The downsides? AV will tend to lead to slower, more expensive counting due to the potential for several rounds. It's still not real proportional voting, but it's better than FPTP in this regard. Again, Wikipedia has a good article about this subject.

    Other options?

    I'd be much happier to see discussion / trials of other voting systems. For example, Debian uses a variation on Condorcet called Cloneproof Schwartz Sequential Dropping which is an excellent system for fair voting, but it's very difficult to explain and counting votes is comparatively very expensive. It's bad enough getting ostensibly-intelligent Debian developers to understand this system; extending this to a national election would be impossible in my opinion. It's also not an option on the ballot here... :-)

    Politicians spreading lies

    I know this won't come as a major shock for a nationwide referendum, but there's a lot of campaigning going on. And, in the best traditions of political campaigning, there's a huge amount of bullshit being spread. The worst is coming from the "No to AV" campaign, as far as I can see. Without many positive things to claim, various members of the Conservative party (current government, with most to fear from a change of voting system, of course) are spouting outright lies and sowing FUD in all directions:

    1. Claiming that AV will cost £250 million, most of which would be for the cost of electronic voting machines. Except... there's no evidence that these would be needed, nor are there any plans to use them.
    2. Continuing on, highlighting the alleged "extra costs" of AV: campaign poster FUD saying that we need to choose between cardiac facilities for babies and AV, or between equipment for our soldiers and AV. Except... there's no evidence that costs will be that high, nor that we have to make such binary choices.
    3. Claims from senior Conservative figures that changing to AV would mean more votes and legitimacy for extremists like the British National Party. Except... there is no evidence that AV will boost minority extremist parties. The BNP themselves are urging their supporters to vote against AV. Finally, if these parties have a high enough proportion of votes that they should be getting seats in parliament then they should have those seats - this is one of the tenets of democracy. Why should we be choosing a voting system to deliberately disenfranchise people?
    4. Finally, even David Cameron is at it: "too much of the debate about the alternative vote (AV) had so far been dominated by 'scientific' evaluation of the two systems' merits. But for me, politics shouldn't be some mind-bending exercise. It's about what you feel in your gut - about the values you hold dear and the beliefs you instinctively have. And I just feel it, in my gut, that AV is wrong." Well, it's nice that our Prime Minister wants to ignore all the scientific evidence and go with his gut feeling. After all, why would we want to think about choices like this?

    Don't swallow the bullshit

    If you're eligible to vote in the UK, please ignore the bollocks. Make up your own mind how to vote in this referendum, by looking at the facts. I've done that and I'll be voting in favour of switching to AV.

    13:03 :: # :: /misc/politics :: 7 comments

    Sunday, 10 April 2011

    Naming and shaming spammers, #2 in an occasional series

    Spammer Number 2:Tata Technologies (aka myigetit.com) via Streamsend

    Again, it looks like Streamsend are being spamming bastards.

    Guilty of: spamming lots of Debian mailing lists.

    They claim to offer "Online Self-Paced Training for Engineers". I guess that's training in "how to be obnoxious to people on the internet" then. It looks like it's a good idea to simply drop all connections from machines in the mailengine1.com domain. Following up through whois, that's another domain owned by EZ Publishing, the same folks who own streamsend.com. Spamming bastards all over...

    16:19 :: # :: /spam :: 0 comments

    Thursday, 07 April 2011

    DebConf road trip 2011

    Wouter says he's going to drive to DebConf this year (from Belgium to Bosnia). There's a number of folks from the UK looking to do the same thing, and there's time for more people to join us yet. Maybe we'll see you en route Wouter!

    16:29 :: # :: /debian/dc11 :: 0 comments

    Thursday, 17 February 2011

    Pledge for the Freedom Box Foundation

    Thanks to Clint for the link; I've just gone and pledged to support the Freedom Box Foundation with some money.

    23:10 :: # :: /debian/freedom_box :: 0 comments

    Wednesday, 16 February 2011

    Progress Linux

    Saw Daniel's announcement about Progress Linux today. Best of luck with the project - it's great to see more and more Debian derivatives, each focussing on the bits that they care about most.

    23:52 :: # :: /debian/misc :: 2 comments

    Monday, 14 February 2011

    He's gone

    I mentioned last night that Dad was on his way out, and that we were all hoping it would end soon for him. Well, thankfully it did. He was clearly waiting for my stepmum to come back in to see him this morning; he left us at 11:35 today, at peace and in no pain.

    Thanks to everybody for your messages of support, they're very appreciated. It's hard to lose somebody close, and it helps to know that your friends are thinking of you.

    13:41 :: # :: /misc :: 2 comments

    Sunday, 13 February 2011

    Dad ill again

    A few years ago, I mentioned my dad's fight with cancer. He survived that, and has carried on for several more years since. He had a replacement hip fitted last year to improve his mobility, and was looking set to enjoy a good long retirement. Until... Just before Christmas symptoms suggested that the cancer had returned, and with a vengeance. Tests confirmed it.

    We were hoping that Dad would fight on and win through again this time, and I was looking forwards to him being at my wedding this September. But there have been a lot of unexpected complications this time and it's just not going to happen. I spoke to him last on Tuesday this week, but he was delirious at the time. He hasn't really been conscious in any meaningful way since.

    I'm composing this message in the hospital in Southport where I'm now waiting for my dad to die. We've been told by his doctors that it's not going to be long now, but they said that on Wednesday too. My dad has always been stubborn, always a fighter; we know that this is a fight he can't win, but that isn't stopping him from trying his hardest. At least he's being kept comfortable for his last few days, with plenty of strong painkillers on hand when needed. Please let it end soon.

    19:19 :: # :: /misc :: 10 comments

    vmware eats modifier keys

    As much for my own reference as anything else...

    I quite often use vmplayer on my work desktop, and occasionally on my laptop. Other options might work better for other people, but the company have already settled on using vmware on their Linux machines to give users access to Outbreak, Office etc. I try to avoid them as much as possible, but about the only effective option for calendaring at work is Outbreak. *spit*. And on my laptop, I just have a vmplayer setup containing a trivial Windows XP installation for things like Nokia firmware updates. It's more hassle than I can be arsed with to move to something else - the only thing worse than using Windows is installing it, in my experience.

    In most respects, vmplayer is working OK for me. But: it has one intermittent and really annoying bug. Every now and again, as I switch away from the vmplayer session to another desktop using Ctrl-Alt, then Ctrl-Alt-Cursor, vmplayer eats the state of the X keyboard modifier keys. This makes things interesting after that point: my normal use of emacs, firefox, xterms, mutt (etc.) is fairly heavily dependent on being able to use the Shift and Ctrl keys.

    This looks like it has been documented as a bug in a number of places over the past few months/years (1, 2, 3, 4, etc.) but there doesn't seem to be a fix coming. However, what I have found out is that there is a workaround: setxkbmap will reset the modifier key state when things have broken. If only I'd been able to find that earlier - I've ended up restarting X or rebooting in the past... :-(

    19:01 :: # :: /debian/issues :: 1 comment

    Friday, 07 January 2011

    Isohybrid CDs being produced

    New feature for Debian CDs

    We've had a wishlist bug (#551951) open against debian-cd for some time, asking for the creation of "isohybrid" CD images for i386 and amd64. These are special in that as well as the normal CD-based ISO9660 filesystem they also contain a valid-looking DOS-style partition table. Thus, if you simply copy one of these images raw to a USB stick a normal PC BIOS will boot the image directly. This would be a neat feature, making it much easier for people to use standard Debian installer images on their USB sticks without having to follow a lot more instructions.

    Support for this feature was added in syslinux/isolinux quite a while back (thanks to H Peter Anvin and the other syslinux contributors), but this depended on post-processing images with the isohybrid program. Due to the special way that we make our CD and DVD images to produce jigdo images as well, that wouldn't work for us: the jigdo files would no longer match the ISO files. Bugger...! Recently, along came more help in the form of Thomas Schmitt (author of xorriso) and George Danchev, its Debian maintainer. Recent versions of xorriso support creating isohybrid images directly, which is very handy. We've worked together in the last few months on porting my old JTE code (which creates our jigdo images) from cdrkit to xorriso, and after a lot of testing and debugging we now have things working fully. I've added a small amount of code in debian-cd to use the new xorriso features, and for the last couple of weeks all of the i386, amd64 and i386-amd64 multi-arch CDs and DVDs have been built as hybrids.

    It's been a delight working with Thomas and George - they're enthusiastic, helpful and friendly. Thanks, guys!

    What does this mean for end users?

    Instead of having to specially prepare USB sticks for the installer, you can now simply use dd to write the image straight to the raw stick, e.g.:

    # dd if=debian-testing-i386-netinst.iso of=/dev/sdX
    
    The USB stick should now boot directly, showing exactly the same bootup screen as if you'd written the image directly to a CD. Yay!

    I'm expecting to be using this code from now on for new releases, i.e. d-i beta and RC releases and for Squeeze itself when we get there. I'm not planning on backporting this code into the Lenny branch of debian-cd as it's a lot of work and I don't want to destabilise things there.

    What's next?

    We need to clear up some of the maintenance around the code as it stands; I'm planning on moving libjte inside my existing jigit package, as that's a sensible place to put it. That will come after the Squeeze release, though.

    We need to finalise boot support for other architectures in xorriso; I added support for them into mkisofs/genisoimage a long time ago and we've already moved some of that into xorriso.

    Thomas and George have also been working hard to give me faster/better size estimation code, useful for making debian-cd run faster.

    Finally: I'd like to add support into xorriso for creating the nasty HFS hybrid images that are needed for booting Macs. The code that does this in cdrkit is probably some of the worst that I've ever worked with, and I'd like to get away from it. If only Apple hadn't stupidly built their proprietary platform around this shit and had used open standards instead. :-(

    Once we have these bits in xorriso, I'll be able to move production of all of the CDs across from genisoimage to xorriso. Very nearly there for being able to drop the last remnants of Schily-ware from the Debian archive...

    18:36 :: # :: /debian/CDs :: 8 comments

    Wednesday, 15 December 2010

    Debian CDs with firmware included

    We've just posted a news item about the removal of non-free firmware from Debian's Linux kernel packages. Kudos to the kernel team and others for the work involved to make this happen!

    While we would be much happier if these binary blobs were not necessary at all, it's clear that some of our users may depend on them to support the hardware they are using. So, as mentioned in that news item, we've started making some unofficial CD images available that include the non-free firmware packages that we can redistribute. If you need one of these CDs, daily builds are to be found at http://cdimage.debian.org/cdimage/unofficial/non-free/cd-including-firmware/ . Starting with the next debian-installer release (hopefully RC1, coming soon!), we'll be generating fixed versions of these images to match each release too.

    Be aware that these are only netinstall images, equivalent to the normal free netinst images that we normally produce but with the firmware files added. If you want to do an installation entirely from a set of CDs/DVDs/BDs then you will need to burn one of these in addition to that set, then feed the rest of the set when prompted to by the installer.

    13:46 :: # :: /debian/CDs :: 4 comments