Wednesday, September 10, 2008

Puppy and Fluxbuntu: perfect for Indian netbooks?

A netbook for India should be a sub 10,000 INR device. In fact, should be well below 10, 000 INR to have a mass appeal. None of the products available in today's market are any where near this price range. The cheapest in the range is Eee PC 2Gsurf and HCL MiLeap X which cost around 14, 000 INR.

But the fact remains that, for a netbook (or what ever you call it), a basic computing device with Internet access, to be accessible to an average Indian, should be priced well below 10K INR. I have no idea of how this can be achieved, but am a strong believer that it is not difficult to make it a reality. Some of my ideas of how such a device could be built is what I would try to jot down in a series of posts. I call my creation "peoplebook", which as of now is nothing but a vaporware, until someone picks up the idea and builds a real usable product. Or someone generously funds me to materialize the idea ;)

The first and the foremost requirement of building a device like this should be that applications and in fact the operating system itself be built using the same hardware. This immediately disqualifies many devices that can provide cheap hardware, including ARM based devices which are heavily used on mobile phone and other low power devices.  The biggest drawback of ARM based devices like Simputer, Mobilis, Nokia Internet Tablet or Smartphone (based on Symbian or Windows) is that they require a host computer (the dependable PC) to build the software stack. Moreover it is overlay complex to change operating system on these kind of architectures. So the best bet is to use a x86 compatible low power processor which can support a standard Linux/ Windows OS. As Windows has a licensing cost, which eventually adds up to the total cost of the device, I can safely rule out using Windows here. So the natural choice lies in choosing GNU/Linux for the purpose. Building a customized Linux distribution is not exactly an easy task. Though projects like Linux from scratch (LFS for short) do give you hands on for building exactly that, maintaining and upgrading constantly evolving Linux stack is again a problem. So the best bet is to use standard Linux distributions that are available, build by those who are good at it and supported by community. While distros that fall in this category are easy to trace: Ubuntu, Fedora and OpenSuse, all of them have pretty hefty hardware requirements and may not be able to support low power hardware that I am talking of.

While Intel has introduced a new range of low power processors called Atom, along with its previously available Celeron-M ULV and A110 processors, they will still be requiring fans for cooling. This a major hurdle in bringing down the cost of the whole system, as having no fan will eventually translate to thinner and more portable devices that are probably far efficient in power consumption. So, for the time being, I would rule out using a Intel branded x86 processor. The most qualified processor for such a device appears to be Via's Eden processor with the Nano-ITX board. This processor and board seems to be an extremely interesting architecture for building such a general purpose computing device. I am not sure though as to why other people have never tried this, or have they?

Though Via's Eden processor is quite a capable x86 processor that can support Linux and Windows, its definitely not suitable for heavy weight distributions like Ubuntu or Fedora. So in the search of a lighter but complete distributions, I found two interesting ones: Puppy and Fluxbuntu. While Fluxbuntu is based on Ubuntu, but is tailored for low power devices, with 64 MB RAM and about 2GB of hard drive, Puppy is exactly meant for similar hardware (but about 256 MB ram is required) but has been around for quite a long time and has a wider community support.

Since, I didn't have actual hardware to test out these distros, I first checked Fluxbuntu under the Virtual Box environment, with 64 MB RAM and 2GB HDD, but with Intel Core 2 Duo processor @ 1.86GHz. This gave a reasonable and usable desktop with software for word processing and browsing. But its no fun testing on a virtual environment, so I installed Puppy on a 2GB USB drive and then booted my MiLeap with it. MiLeap uses Celeron M ULV @ 900 MHz and has 512MB RAM and 30GB HDD and currently runs Windows Vista Home Basic. For our purpose we have only 2GB HDD as Puppy is now installed on the USB drive.  This installation turned out to be snap for booting from the MiLeap.

Now some real applications stuff: Puppy comes with standard tools for editing docs (Abiword), browsing Internet (Skymonkey, with embedded flash player for playing youtube) and music player (xine, with requisite codes for playing most of the media files). On development front, you can install the latest gcc and other libraries to use Puppy as a platform for developing new applications, or even building new customized Puppy distributions. The same is true for fluxbuntu, however the support for this distro seems to be lesser.

I feel that if someone could piece these things together, with cheap and low power x86 hardware, one can build a really usable machine for the general Indian public and satisfy their computing needs.

[Lots of blah blah? You will have to bear with me till I see these kind of devices ;) ]

No comments: