eyeOS Web-based Desktop OS

eyeOS is a web based desktop operating system. Despite its unusual deployment orientation, in many ways, it's a full desktop operating system, complete with file management and full applications that operate within draggable, resizable windows. As well as an overview of what the eyeOS 1.9 branch has to offer, I'll take you through what I did to install it on a Debian type operating system. Overall, I felt that it was a usable system and perhaps even a glimpse at what most computing is going to be like in the future.

I'll be concentrating on my experiences of setting up eyeOS 1.9 rather than the 2.x version that was launched earlier this year. I tried eyeOS 2.x on a couple of different set ups, but I kept running into the serious performance problems that are widely reported on the eyeOS forum by other people who have tried it. The 1.x series also has the advantage of having been considered stable for more than two years.


As I said before, eyeOS offers a complete desktop with a suite of applications in a system that can be accessed over a network such as a LAN or the Internet via a web browser. It's a system that can supply a fleet of networked computers with their application environment in a cloud set up, or it could be your own personal refuge when you are stuck using someone else's computer.

When investigating a system such as this, most people will wonder about the performance. As one would expect, application launch and execution speed are sometimes curtailed compared with a more conventional desktop operating system. Graphical operations are also hampered by the extra layer of abstraction imposed by the browser based interface. However, if you think about it, most of a typical working day isn't spent moving and resizing windows or launching applications, and once a given application is running, response to user input, particularly via the keyboard, is good.

So, what are the applications? Well, the default set up features a wide range of applications including a calendar, an RSS reader, an email client, a word processor, a spreadsheet, a contacts manager and others. The applications themselves are surprisingly well-featured, and I find myself wondering if what eyeOS offers might have been competitive with what full commercial software was offering not so long ago. The file management extends to the necessary facilities to upload and download your files.

The eyeOS word processor. Its feature set is impressive.

The window management is also surprisingly comprehensive. A task bar runs along the bottom of the screen. That's right, eyeOS is fully multi-tasking and can run more than one application at once, with overlapping, movable and resizeable windows. The mouse button brings up a context menu, as with most operating systems, and scroll wheel functionality is fully implemented. As technically impressive as the windowing system is, for a browser-based user interface, I find myself thinking that it may be overkill. I bet that most users will quickly get into the habit of maximizing all windows when actually working.

All in all, despite a few compromises, I was left with the impression that eyeOS is far from a mere proof of concept demonstration; this is something that could be used for serious work.


[update: See our guide to running a server in a VirtualBox VM. It's an aproach that works very well with eyeOS.]

To install eyeOS, you first need to prepare a web server platform that consists of Apache, PHP and a few other elements. Here's a method that installs everything you need onto a Debian box.

First, install the dependencies:

sudo apt-get install apache2 php5 php5-cgi php5-sqlite php5-imap libapache2-mod-python libapache2-mod-php5 libapache2-mod-perl2 apache2-mpm-prefork analog

Resetting the whole machine is probably the quickest way to restart any services that need it. Once you have done this, test the web server by pointing the browser towards the machine that you have just installed Apache to. So, for example, if you've installed it locally, point your browser to:

Hopefully, you'll be greeted with the standard Apache “It works!” message.

Now fetch the eyeOS 1.9 archive from the eyeOS website. Double check that you've grabbed the right file, as the download page prominently displays the 2.x download, which I found confusing. Once you have the zip file containing the eyeOS files, unpack it to your home directory. Rename the eyeOS directory to make it lower case, copy it into the default Apache web content directory and set the necessary permissions with:

mv eyeOS/ eyeos/
sudo mv eyeos/ /var/www/
sudo chmod 777 /var/www/eyeos/ -R

Now it's time to carry out the installation from the web interface. Begin by navigating to:

Fortunately, eyeOS does some fairly extensive checks when setting itself up. So, if you are missing a component that it needs, it will tell you and and you should be able to figure out what's missing with some guess work. Choose a password, wait a moment and navigate to the login page. In future, you log in by navigating to:

The eyeOS website.

Got a better way of doing this, run into difficulties installing it or prefer a different web based OS? Yell out in the comments and let us know.

Load Disqus comments