First off, my colleague Donna wrote up a bit about the work we’ve been doing for the last few months. It’s been a pleasure to work with her, and I don’t really think of her as a crony but nobody tell her I said so.
The second thing is a way to get all the linuxes. That’s right, all of them; specifically a way to get a variety of them running in a single headless virtual machine on your OS of choice. You start with an Ubuntu .ISO and VirtualBox.
Install Ubuntu on a suitably capacious VM, make sure sshd is running and starts by default, pause it, close and quit VirtualBox. Then do two things; first, set yourself up with this script:
VBoxManage startvm Prime --type headless
VBoxManage setextradata Prime "VBoxInternal/Devices/e1000/0/LUN#0/Config/guestssh/Protocol" TCP
VBoxManage setextradata Prime "VBoxInternal/Devices/e1000/0/LUN#0/Config/guestssh/GuestPort" 22
VBoxManage setextradata Prime "VBoxInternal/Devices/e1000/0/LUN#0/Config/guestssh/HostPort" 2222
VBoxManage setextradata Prime "VBoxInternal/Devices/e1000/0/LUN#0/Config/guesthttp/Protocol" TCP
VBoxManage setextradata Prime "VBoxInternal/Devices/e1000/0/LUN#0/Config/guesthttp/HostPort" 8080
VBoxManage setextradata Prime "VBoxInternal/Devices/e1000/0/LUN#0/Config/guesthttp/GuestPort" 80
(My VM’s name is “Prime” in this example, to clarify. Yours may not be.)
Then read this article by Ted Dziuba about running several versions of Linux, simultaneously and non-virtualized, on the same machine. It’s pretty cool, and that should set you up with All The Linuxes, should you happen to want all the linuxes.
From that you can SSH to localhost:2222 for Ubuntu and schroot between the whatever other linuxes you desire. X-forwarding will help you here, and I wonder if you can add Android to that list? Hmm. Hmmmmm.
Next up, if you’re making changes to Firefox don’t/won’t/can’t get at their Tryserver test harness, I just found out (duh, of course) that all their tests are in their source tree anyway. Add these lines to the end of your Makefile, and you can run the whole test harness locally with one command.
echo 'Running automated tests in 10 seconds. This can take a long time - hit control-C to end.' && sleep 10
make $(MAKE) -f $(topsrcdir)/obj-ff-dbg/Makefile crashtest
make $(MAKE) -f $(topsrcdir)/obj-ff-dbg/Makefile jstestbrowser
make $(MAKE) -f $(topsrcdir)/obj-ff-dbg/Makefile reftest
make $(MAKE) -f $(topsrcdir)/obj-ff-dbg/Makefile mochitest-plain
make $(MAKE) -f $(topsrcdir)/obj-ff-dbg/Makefile xpcshell-tests
Configure, make, make test-me, then wait. This is a run-overnight kind of thing – it will stomp on your machine pretty hard – but at least it will tell you if you broke anything. I was briefly tempted to call that “trouble”, or “come-at-me-bro” rather than “test-me”, but I think wisely elected not to.
Finally, I broke down and installed Fedora on my little netbook, and to my surprise it’s awfully pretty. I miss apt-get, but the new Gnome UI is actually great, wildly better and more discoverable than Win7. It’s actually a respectable little computer now, all things considered. Except, of course my wireless doesn’t work, and if I put an SD Card in it won’t suspend anymore.
“Sysadmin” is a portmanteau of “administration” and “Sisyphus“, apparently.