Roger Whittaker

View Roger Whittaker's profile on LinkedIn

Valid XHTML 1.0 Transitional

Last updated: Saturday 31st December 2011

Saturday 31st December 2011

Since openSUSE 12.1 came out I have been running it on my work laptop (continual heavy use) with both / and /home on btrfs. I have had two filesystem crashes, one on / and one on /home. The crash on / left no trace. The one on /home was definitely a case of https://bugzilla.novell.com/show_bug.cgi?id=733843.

Hopefully this will be fixed soon. In neither case did I lose any data. In both cases free space was low on the filesystem at the time of the crash.

I think the snapper tool is absolutely great, particularly the way that it integrates with YaST and zypper.

Sunday 6th November 2011

Last weekend: photos.

Monday 11th July 2011

Photos.

Monday 2nd May 2011

The whole event was a massive advertisement for the military. There were continual reminders of the Second World War - the commentators helpfully reminding us of "the young Princess Elizabeth mingling with the crowds on VE day", etc, culminating with the flyover by a Lancaster bomber, a Spitfire and a Hurricane and then by modern war planes. It was the wedding of two young people for heaven's sake. The Second World War ended 66 years ago. But no-one seems to find the use of this imagery odd in any way.

The message is: it's ALWAYS 1939, we're ALWAYS at war, there's ALWAYS another Hitler somewhere to be fought, and if you're British, you should support the latest war whatever it is. (Nasser was Hitler, Idi Amin was Hitler, Saddam Hussein was Hitler, Ghaddafi is Hitler, etc...). This is a misuse of the memory of the Second World War, to create a phoney "national myth" in which "we" are always in the right, and it is disloyal and un-British even to question the latest war. And by upholding this military version of national identity, the royal family ensure that they are held in contempt by those who do not share the enthusiasm for war and destruction.

This "national myth" is roughly what Mr Gove wants to teach in schools instead of history, by the way. It stinks. It is a calculated promotion of ignorance, just like the bogus "national myths" that we see being taught in certain other countries.

Tuesday 22nd March 2011

Recent photos:
March 19th
Noruz.

Saturday 5th February 2011

Here are my notes on installing Debian 6.0 to the Guruplug Plus.

None of this is original or my own work, but I found that I needed to refer to several different sources of information to get the job done.

I hope this is helpful, but the usual disclaimers apply: don't blame me if this doesn't work, or if it destroys your device.

Here we are installing to a microSD disk. If you are using a USB stick, the usb address will be different in the boot_cmd line below.

Update to a recent u-boot using this reference:
http://www.cyrius.com/debian/kirkwood/sheevaplug/uboot-upgrade.html.

From USB, do something like this:
Marvell>> usb start
Marvell>> fatload usb 2:1 0x0800000 uboot.bin
Marvell>> nand erase 0x0 0xa0000
Marvell>> nand write 0x0800000 0x0 0xa0000
Marvell>> reset

Or if you have no u-boot (you're in a bricked state), see the section "Flashing U-Boot on Bricked Plug" here:
http://plugcomputer.org/plugwiki/index.php/Reflashing_images_on_the_GuruPlug.

Main reference for installation, but note that some things are different here, because this page refers to SheevaPlug:
http://www.cyrius.com/debian/kirkwood/sheevaplug/install.html.

The Debian unstable installer for Guruplug is available here:
ftp://ftp.debian.org/debian/dists/testing/main/installer-armel/current/images/kirkwood/netboot/marvell/guruplug/.

Copy the uImage and uInitrd from that location to a DOS formatted USB stick.

Connect to the Guruplug with:
# screen /dev/ttyUSB0 115200

Then:
Marvell>> usb start
Marvell>> fatload usb 2:1 0x00800000 /uImage
reading /uImage
1434220 bytes read
Marvell>> fatload usb 2:1 0x01100000 /uInitrd
reading /uInitrd
3172851 bytes read
Marvell>> setenv bootargs console=ttyS0,115200n8 base-installer/initramfs-tools/driver-policy=most
Marvell>> bootm 0x00800000 0x01100000

The installer boots, and you go through the installation.

Then:
Marvell>> setenv bootargs_console console=ttyS0,115200
Marvell>> setenv bootcmd_usb 'usb start; ext2load usb 1:1 0x00800000 /uImage; ext2load usb 1:1 0x01100000 /uInitrd'
Marvell>> setenv bootcmd 'setenv bootargs $(bootargs_console); run bootcmd_usb; bootm 0x00800000 0x01100000'
Marvell>> saveenv
Saving Environment to NAND...
Erasing Nand...
Erasing at 0x60000 -- 100% complete.
Writing to Nand... done
Marvell>> boot

Now install emacs, isc-dhcp-server, linux-source-2.6.32, module-assistant, rsync, etc...

Create a suitable /etc/dhcp/dhcpd.conf.

Edit /etc/default/isc-dhcp-server to include the right interfaces (eth1 and uap0).

Now we need to get the wireless working.

Reference: http://lists.debian.org/debian-arm/2010/05/msg00081.html.

Now:
module-assistant prepare

(This command installs the necessary tools and headers).

Download the necessary source from:
http://lair.fifthhorseman.net/~dkg/machines/moo/libertas_uap.tgz.

Then:
mkdir /root/build-uap

Copy libertas_uap.tgz to /root/build-uap.

Unpack it.

In /root/build-uap/libertas_uap:
make CONFIG_LIBERTAS_UAP=m -C /lib/modules/$(uname -r)/build M=$(pwd)
mkdir /lib/modules/$(uname -r)/kernel/drivers/net/wireless/libertas_uap
cp uap8xxx.ko /lib/modules/$(uname -r)/kernel/drivers/net/wireless/libertas_uap

Get the firmware blobs helper_sd.bin and sd8688_ap.bin from the original image:
http://www.newit.co.uk/files-guruplug/guruplug-rootfs/.

mkdir -p /lib/firmware/mrvl/

Copy the firmware blobs to /lib/firmware/mrvl/.

Create a file /etc/modprobe.d/libertas_uap.conf:
# blacklist competing modules for the same hardware
# used by libertas_uap (uap8xxx.ko)
blacklist libertas_sdio
blacklist libertas

Now reboot.

Now sort out IP addresses for eth1 and uap0.

Add them to /etc/network/interfaces.

For example - add these lines:
auto eth1
iface eth1 inet static
  address 192.168.10.254
  netmask 255.255.255.0
  broadcast 192.168.10.255
#
auto uap0
iface uap0 inet static
  address 192.168.9.254
  netmask 255.255.255.0
  broadcast 192.168.9.255

Now we need /usr/bin/uaputl from an original Guruplug install, again from:
http://www.newit.co.uk/files-guruplug/guruplug-rootfs/.

Then we need a script to start the access point. Here's a very simple one:

#! /bin/bash
/usr/bin/uaputl bss_stop
/usr/bin/uaputl sys_cfg_ssid bellman
/usr/bin/uaputl sys_cfg_protocol 32
/usr/bin/uaputl sys_cfg_wpa_passphrase "mypassowrd"
/usr/bin/uaputl sys_cfg_cipher 8 8
/usr/bin/uaputl bss_start
/etc/init.d/isc-dhcp-server restart
iptables -F
modprobe ip_tables
modprobe iptable_filter
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

For accessing the internal storage if you want to do that later:
apt-get install mtd-utils

Reference:
http://www.plugcomputer.org/plugwiki/index.php/Installing_Debian_To_Flash.

Then you can do something like:
ubiformat /dev/mtd2 -s 512
ubiattach /dev/ubi_ctrl -m 2
ubimkvol /dev/ubi0 -N internal -m
mount -t ubifs ubi0:internal /mnt

Have a lot of fun... (although it's not openSUSE...)

Saturday 5th February 2011

If you use LaTeX, you will like this:
http://detexify.kirelabs.org/classify.html.

Saturday 15th January 2011

Apple is putting the screws to a handful of European newspapers, no longer allowing them to provide their paid print subscribers with free access to their content through downloads into iPad apps. Whether this is the beginning of a wider crackdown is not yet known.

http://www.theregister.co.uk/2011/01/15/itunes_newspapaer_crackdown/.

Friday 3rd December 2010

The Net interprets censorship as damage and routes around it.

http://wikileaks.ch/.

Sunday 14th November 2010

A few photos from last night are here.