Archive for January 2010

Pure awesome


For anyone playing along at home, my xstartup currently reads:

gnome-wm &
gnome-panel &
gnome-settings-daemon &
nautilus --no-default-window &
gnome-volume-manager &

Keyboard hack

It’s not pretty, but it works.

The bug seems to be with the way that Gnome interfaces with the VNC server. There are a lot of different suggestions over the net to fix it. I have found one that works for me, but I will be trying the vnc4server one at some point.

Hugues Fournier posted a reply to Scrambled Keys in feisty ubuntu desktop which saves a working good keymap and then runs it in the Gnome session.

To do this you need to VNC in to your LXDE environment and run the command:

xmodmap -pke -display :1 > ~/ ( if your VNC display is :1 )

Then create a shell script in your filesystem containing:

cat ~/ | xmodmap -

and chmod u+x it.

This is where I differ from Hughes’ instructions. You need to run this script while within the Gnome environment. For now, I have managed to use mouse control to edit the Menu. You can browse to the script and then enter anything as a name (you can tidy this later). Run the script from the menu and test. I will be looking at ways to auto-boot it later.

Hats off to HTC and Google

Throughout all of this work I am hammering the Nexus and it barely gets warm. It can get to enough above ambient so that you can feel it, but only just.

Admittedly I haven’t tried to increase the clock speed as cyanogen suggests.

Good work on the unit though, compared to the G1 the Nexus runs cold.

Bluetooth input

Just been shopping and the only shop to stock Bluetooth keyboards at all are the local Apple partner.

Tried a display model and the Nexus failed to spot it, despite seeing everything else in the store. Including the EPOS system.

Failure from: T-Mobile, 3, Carphone Warehouse, Orange, Phones4U, PC World and Maplins.

Baby steps 2

Getting closer.

My xstartup now reads:

gnome-session &
gnome-settings-daemon &
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
vncconfig -iconic &

Background image still missing and keyboard mapping still screwed. It produces this:

Screen resolution and VNC

Since I realised that I am now mainly working over a VNC link from a computer and not the device itself, I can push the resolution, especially under LXDE.

I have re-configured my .bashrc to run at 1024×768. Performance is still pretty good and I’m not noticing many slowdowns from the change.

Nexus and 3G

Google have confirmed a radio patch for the Nexus to come soon. I can confirm that the trouble is real, the Nexus performance is currently poor compared to the G1 with the HTC radio firmware applied on T-Mobile’s network in the UK.

Once the patch is applied I expect the Nexus to perform well as the difference to the G1 was amazing.

The Nexus is solidly outperforming my other devices in standard 2G use though. It is a rare luxury to have this much signal.

Baby steps – the beginnings of Gnome on Android

So, this is what it’s really about. As well as what I mentioned you need earlier, the full list is:

  • Nexus One (or other fast Android device)
  • Root
  • microSD card of 2GB or bigger with enough space on the ext2 partition for a lot of stuff – as a guide I have a 1.5GB partition with only 350MB free
  • Apps2SD or a read/write filesystem and knowledge of mount

If you don’t understand any of the points above, please don’t consider following anything else.

Once you can root shell in via ADB you can get the Ubuntu build and LXDE running with Paolo Sammicheli’s wonderful blog posts. This build worked well on the G1 and I was able to run Fennec at a crawl with it. Getting the Nexus made me want more and I am aiming for Gnome.

Haven’t got there yet, but I’m on the way. After getting Paolo’s build working, you will need to install the following packages:

apt-get update
apt-get install gnome x-window-system-core xserver-xorg gnome-desktop-environment twm


I think there is some redundancy in that list. Beware the package ubuntu-desktop, it’s a 500MB behemoth that includes Open Office and scanner software and such. I know I’m pushing the Nexus, but I doubt I’ll be scanning on it any time soon.

To work on the phone, I am using an ADB shell session over the USB and VNC over a wireless link. For this sort of work you need a keyboard and mouse, using the on-board VNC client to talk to localhost is pretty much unthinkable.

Imthiaz Blog posted a Gnome VNC guide, including the sample xstartup settings:

# Uncomment the following two lines for normal desktop:
# exec /etc/X11/xinit/xinitrc
gnome-session &
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
# xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
twm &

Boot your VNC server and log in in the normal way. I thought I had failed several times, as all I was getting was the X11 blank screen:

Finally, when I left it long enough I started to get elements appear, though it is obvious I still have a problem with a window manager:

I also seem to have a massive problem with keyboard mapping too. Those issues for another day..

Nexus keyboard

While having a smoke and setting up WP to go on the nexus I discovered that it is impossible to use the screen software keyboard while shivering from the cold.