I have moved this WEB log to http://jldupont.com.
Is the concept far fetched? Consider the following:
1- Virtualization technology makes it possible to run any operating system (OS) on any (decent) personal computer
3- Distribution: the packaging of the Downloadable Personal Computer can easily follow a model akin to JumpBox’s
a) Joe Bloe walks (or surfs or course) to his favorite PC hardware store and buys a Customizable Personal Computer (i.e one on which you can have a Downloadable Personal Computer)
b) Joe Bloe surfs to his favorite Downloadable Personal Computer WEB site and customize his very own PC: he chooses his OS, browser, Music & Video player etc.
c) Joe Bloe downloads a copy of his customized PC
d) Joe Bloe installs his customized PC
Windows’ reign drawing closer to its end
What else does it take to free ourselves from Windows’ reign? Not much still: BIOS manufacturers have progressed to the point where the booting stage of a PC is much more controllable & customizable. The final step is to include a virtual machine player (such as VMware’s) on the motherboard and voilà !
What is Pear?
Pear stands for PHP Extension And Repository. It consists of well, you guest it, extensions and a repository for those. The beauty of Pear comes from its managed installation process: one can easily upgrade PHP Extensions using the services of Pear. For those not yet acquainted with PHP, you can consult the official PHP site.
The reasons I wanted to host a Pear Channel on GoogleCode where simple:
- Low cost: GoogleCode Project hosting is free
- Capacity: 100MB of storage per project
- SVN access
Challenge #1: Pear documentation
In general, the documentation related to the Pear Extensions themselves is good. What was lacking in this instance was the documentation on the REST interface. I had to reverse engineer the PHP code of Pear as well as well as tear apart the Pear’s WEB site REST repository.
Challenge #2: Pear bug
Pear is a marvelous tool to say the least but in the case at hand here, a bug slowed me down quite a bit. The Pear installation tool can’t process files of MIME type ‘text/plain’ when served with HTTP-compression Transfer-Encoding (see the standard). This is quite annoying as by default GoogleCode Apache servers do serve those files transfer-encoded using the ‘chunked’ method.
I have filed a bug report on this issue here.
The Quick Fix
The quick fix, whilst waiting for Pear v1.7.0, is to set the MIME-type of the text files required by the Pear REST interface to ‘application/gzip’. This effectively fools GoogleCode into believing that the said files are already compressed. This trick forces GoogleCode servers to send the text files without further transfer-encoding.
I have also done a presentation on this subject: Pear Channel Presentation on GooglePresentation .