Un-bricking a System76 Starling netbook

In case it may be of help to someone else in the same situation…

I have a System76 Starling netbook, which until this week was running Ubuntu 9 (Karmic Koala). That’s the release it came factory-installed with, and as long as it was getting patched and updated, I was sticking with the “ain’t broke, don’t fix” principle. Previous experience has taught me that the tiniest tweak to an otherwise working Linux system can lock you into a death-spiral of dependencies, upgrades, super-dependencies and so on, until you have no option but to press on because you can’t retreat.

However, when the system updater warned me this week that Ubuntu 9 would not be getting any more patches, I decided it was time to take a deep breath and upgrade to an LTS (Long Term Support) release of Ubuntu 10 (Lucid Lynx). I also reasoned that as Lynx has been out for a while, System76 would have had time to get their hardware-specific driver for the Starling good and ready. So, after backing up all my data to an external drive, I hit the Upgrade button.

All went well, at least in terms of fetching all the packages. Unfortunately, the installation process hung part way through, and after leaving it frozen for half an hour or so (just in case) I sighed, turned the power off, and resigned myself to re-installing from scratch. As I now have an un-bricked Starling running Ubuntu 10.4, this post is simply to point you to the set of resources which worked for me, if you’re in the same position.

Here are some starting assumptions:

  • You have a Windows machine with which to create your bootable USB image (it can be done with another Linux machine or a Mac, but you’ll have to find your own path in those cases)
  • Obviously, as the Starling has no CD drive, you’ll a nice big USB stick handy (they say 2Gb, but if you have 3-4Gb I think you’ll be safer, for reasons I explain below)
  • A wired network connection… this will just make it a lot easier to auto-update with the most recent software updates and the System76 driver.

And here, in the order you will probably encounter them, are the pages which got me through it. There are others, but I found some false trails, and these are the pages which worked for me.

  1. System76’s “How to Upgrade to Lucid Lynx” page
  2. The Ubuntu Lucid releases – you want the Netbook Live CD .iso
  3. The Ubuntu help page on creating a bootable USB image
  4. Two tools from PenDriveLinux: USB-Installer and Persistent-Filespace creator
  5. Ubuntu support thread on Lucid/wireless just in case…

If step (3) works OK, you may not need the tools from step (4); however, the first time I tried it, the USB image boot failed because it couldn’t find a writeable filespace. This error is listed on the Ubuntu help page above, under Known Issues, as “Can not mount /dev/loop1 on /cow”. The Persistent Filespace creator will help you make one of those on the USB stick… which is another reason why I think a 3 or 4Gb stick is probably a good idea.

You may or may not need step (5): frustratingly, when I first booted Lucid Lynx my wireless connection came up flawlessly: I ran the System76 driver and my wireless connectivity disappeared. The thread had some suggestions about making sure the C/C++ libraries (gcc) are definitely installed on your machine, and re-running the System76 driver. I followed those suggestions and it still didn’t work, but after a couple of re-boots and tweaks of the 3G-Wifi switch on the front of the Starling, it all worked again.

Good luck…