Installing Xubuntos in VirtualBox
In this document, we will see how to install Xubuntos inside a VirtualBox virtual machine (or VM). The procedure has been successfully tested on a Mac Mini running Mac OS 10.6. If you run into problems, find that something doesn't work for you in this tutorial, or want to provide feedback of any kind, feel free to email me (Guillaume Ardaud) at g.ardaud(at)gmail.com and I'll try and update this tutorial as soon as possible.
There are several advantages to using a VM:
- No need to spend hours trying to install every component for TinyOS development
- Your system isn't messed up by said installations
- If you want to remove the TinyOS development toolchain, you just need to delete the Virtual Machine
The main inconvenient to this approach is that VM tend to be quite intensive resource-wise; you'll therefore need a rather recent computer.
We will be using VirtualBox here- even though VMWare is arguably better known, Virtual Box has the advantage of being free and multi-platform (amongst other things). Whether you are on Mac OS X, Windows or Linux, you'll be able to run a Xubuntos VM just the same.
Therefore the first thing you want to do is to download Virtual Box for your system- you can do so by going on Virtual Box's download page and choosing the appropriate platform. In this tutorial, the screen captures will be taken from a Mac OS X host system; however Virtual Box should remain the same no matter which host OS you have.
Once you have installed Virtual Box, you are going to need to download the Xubuntos virtual machine image. These will come in the VMware format, but thankfully Virtual Box can read them. Download either version 2.0 or 2.1 of Xubuntos according to your needs (we use 2.1 in this document). Once the download is complete, decompress the archive you just obtained in a new folder; the contents should be as follows:
Now launch VirtualBox. Before actually creating the VM, we have to add the VM image file to the list of available media to VirtualBox to create a VM from. Go to File>Virtual Media Manager... and click on "New". From there, select the "Xubuntos 2.X.vmdk" file that is located in the folder you just uncompressed (do NOT select any of the files with a code such as s00X before the vmdk extension). Click on "OK" to close the window.
Now click on the "New" button in the toolbar to create a new virtual machine (if this is your first time using Virtual Box, you might be prompted to do so at the first launch). A wizard will appear- on the first window, click "Continue". On the second window, you will get to name your VM and choose its type.
I named mine Xubuntos, but you can name yours anything you want- this is just for identification. In the Operating System dropdown, select "Linux"; in Version, select "Ubuntu". Click on continue. You will then be prompted on the amount of RAM you want to allocate to the VM- I recommend leaving the default value, but you can customize it.
On the next window, you will have to pick a new virtual hard disk- this is where we are going to load our VMware image. Leave "Boot Hard Disk" checked, and select "Use existing hard disk". In the dropdown menu, select "Xubuntos 2.X.vmdk". Click on continue.
This is the last step- just an overview of all the decisions you've made. Click on "Done".
You will then be taken back to the main window of Virtual Box, where your new Xubuntos machine will await for you in the VM list. To boot it, just click on the "Start" icon, and wait for everything to load.
If after some loading, you get the following screen:
Then congratulations ! You are ready to go ! (the login is 'xubuntos', and the password is 'tinyos'). If however you get cryptic error messages at the term of which you end up in front of a window like such:
Then we have to perform a last operation. Login with the login/pass above, and when you have a prompt type:
sudo dpkg-reconfigure xserver-xorg
Then press enter. When prompted for a password, just type "tinyos", then follow the instructions. Once you are done with the configuration, reboot the virtual machine, and you should be ready to go.