With more and more stuff moving over to running on the web these days, and with emerging 'web desktops', it's about time we strayed from our normal desktop Linux territory and took a look online.
eyeOS is a project that bills itself as an open source web operating system. It includes a desktop and several applications that run inside your browser window and allows you to do various things from one central desktop within your browser.
It's a downloadable web application written in PHP, so it will run anywhere where you have a web server where PHP is installed and configured properly.
In this FOSSwire post, I'm going to install it on my Ubuntu LAMP installation (which you can get up and running yourself with my recent tutorial). I'll give a really brief installation overview below for those of you using the Ubuntu LAMP setup, then I'll get on with the review. Just for future reference, we're dealing with version 1.0 here.
Installing
Download the .tar.gz package from the eyeOS downloads page. Right-click the file once download and choose Extract Here (or the similar option). Copy the whole folder into /var/www. Couple of quick terminal commands now:
$ cd /var/www
$ chmod 777 eyeOS
$ chmod 777 eyeOS/install.php
$ chmod 777 eyeOS/eyeOS101.eyepackage
Now browse to http://localhost/eyeOS/install.php.
First impressions
On downloading the package and popping it onto a suitable web server, you are asked to enter a root password (and rather curiously asked to repyte [sic] it). You are also asked to enter a hostname for your eyeOS installation.
Installation is admittedly very simple - there is no need for any database setup, you just enter that information and hit Install. You are then presented with a login screen where you can login with your username as root and the password you set a moment ago.
You are greeting with a nice blue abstract desktop background, various floating elements over the desktop and a couple of icons on the left of the screen.
Applications
A handful of eyeOS applications are installed by default - they include a file manager, basic word processor, a calendar application, a contact manager, feed reader, web browser (rather strangely, a browser within a browser) and more.
The basic set of applications are actually very functional and surprisingly responsive for something so JavaScript heavy (I was testing in Ubuntu Feisty's Firefox 2.0.0.4 build). I'd like to really emphasise this point. It probably helps that I was doing this on a local server, so network lag wasn't an issue, but still, eyeOS is very snappy for something so intensive on the client side. Dragging windows around the screen is quick and there are just nice small touches here and there which make it a very compelling experience in comparison to some web applications I've used (the Yahoo Mail beta somehow springs to mind for being extremely sluggish).
For example, you can open up eyeDocs, the word processor, and use the included TinyMCE editor to write in rich text. You can then save your document to your web desktop storage space and it will be automatically saved onto the server. This does have utility as you can easily get to your documents and reach them from anywhere. Put up against a more developed and focused web office solution like Zoho Writer or Google Docs, however, and it clearly isn't as rich an experience.
The other applications are also very usable, but again I find them to suffer because of the more developed web-based alternatives that are available. If you are passionate about using only free software or want to remain more in control of your data, however, using the tools included in eyeOS can have real advantages.
Extensibility
Part of the beauty of eyeOS however is its extensibility, or at least, the potential for it.
To test out the themes system, I downloaded the nuoveXT theme from eyeLook (the community hub for themes and applications for eyeOS). At first I really couldn't work out the process required to actually get the theme installed. Looking over at a thread on the official forums, it seems that 0.9 themes are not yet compatible with the 1.0 release. A bit frustrating, and it would have been less so had this been made more clear.
I imagine that in time, some of the themes over on the eyeLook site will be ported to the new release and this issue will be resolved.
Architecture
Architecturally speaking, eyeOS is very interesting. They have constructed a PHP API which the eyeOS applications are written in. By the looks of the documentation over at their wiki, building simple eyeOS applications does look surprisingly simple (see this Hello World example).
There is definitely potential here, and I think extending free and open source software into the web desktop space can only be a good thing. At the moment, I don't think I'd seriously end up using it. I don't think it is necessarily eyeOS's fault, as the project is extremely innovative and well done for what it is.
Conclusion
Personally, I don't think we're 100% ready for a web-based desktop yet, certainly not in the way eyeOS is doing. Whether it's the limitations of what technology we have client side at the moment or something else, I'm not entirely sure.
Still, eyeOS is an extremely interesting project to take a look at. You can download the code and run it yourself, or run on the demo servers on the eyeOS website.