First, I want to tell you how impressed I was by your work on the InterSystems prior art request. You guys are scary awesome. InterSystems also left a comment of thanks. I saw Peter Salus left a comment about the ArpaNet, and here's the Table of Contents of his book about it, which they can get at Amazon, or you can too. He points out, "The original
call required a heterogeneous set of sites (1968). The four original
sites (Dec. 1969) connected a Sigma 7 (UCLA), and SDS 940 (SRI), an
IBM 360 (UCSB), and a PDP 10 (Utah). The source materials have just
been published (ISBN 978-1-57398-000-5) and can be ordered from Amazon." I guess it really hit me this time that we've stumbled on to a new way to really make a difference at Groklaw. Putting so many knowledgeable geek brainiacs in one place and letting them all work together... it's powerful. So thank you very much for your help on that and on the Peer to Patent project also. I know we can't single-handedly change the entire patent system. We are merely human, after all. But we can help those struggling with it as opportunities present themselves. But today is Saturday. Time for some fun.
A Groklaw member, George De Bruin, has been playing with his new $199 Everex TC2502 Green PC (which I notice Wal-mart now advertizes saying that you can "step up" to more memory and Windows Vista Basic, but I'll try not to hold it against them), and he's written a review for us. I enjoyed it a lot and I hope you do too. I know the Everex Green PC with gOS is designed for those who are not geeks. And our reviewer is hardly in that category, being a Unix and Linux sysadmin, so he can't realistically run it the way a normal user would what he does do is differentiate between what a normal user would likely do and what he did instead. I thought it was very useful. He couldn't resist a little tweak here and there, which led to more, and by the end, he made me want to buy one just to have the fun he's having. Of course, like most of us, he knows exactly what he likes and wants in computers and software and themes, so some of his preferences might not be yours. Some folks really love Enlightenment, for example. What the review shows more than anything is that no matter what kind of GNU/Linux software various vendors put on a computer, or how they set it up for you, because it's FOSS, there is nothing holding you back from making it be the way you really want it to be, and when you put that together with the Everex price, now you are cooking with gas. As he says at the end, with a few caveats, it's a very attractive low-power-using machine at an amazing price. And if you bought an Everex and are experiencing any of the issues he writes about, or just want to tweak it too, you may benefit from trying some of his fixes. Note that he lists where you can find all the software he writes about. It's in the references section at the end. Enjoy.
************************************
Reviewing The gPC and gOS
The First 12 Hours and Beyond
~ by George J. De Bruin
INTRODUCTION
There has been quite a bit of press about the Everex TC2502 Green PC
(aka the gPC), as much for choosing an Ubuntu based operating system
(gOS) with a Google-centric configuration, as much as for being the
first mass-produced, and mass-distributed “green” computer designed
for use by average users. I read several reviews of the machine, and
many comments on Wal-mart's and other websites. At this point, the
reviews are fairly mixed, with experiences ranging from incredibly
positive to quite negative (see references section at the end).
I looked at the specifications for the machine, and found them to be
relatively impressive for a low-end, very inexpensive computer. The
gPC wasn't designed to be a cutting-edge system but looked like it
would be enough of a computer for the average home user. Plus, I saw
that there was adequate room for expansion, possibly making it
suitable for multiple uses with a couple of simple upgrades.
So, I was at Wal-mart the other night and noticed they had two gPC's
on the shelf, and decided it was time for me to buy one of them to
evaluate. Originally I was going to limit this “review” to my first
12 hours with the machine keeping the following in mind:
- No matter what, I am not an average user.
- I try to differentiate points at which I will do something that a
non-computer, non-Linux savvy user would do.
Those things being said, onward...
PURCHASING THE gPC
One of the first things I considered when buying the machine was, how
normal would it be for a home user or a college student to already
have a monitor to use with a computer? Actually, these days, the
answer is probably fairly normal. However, something else I
considered is that most users might want to upgrade their monitor if
they still had an old CRT that they had been using with their
computer. Let's face it, Wal-mart doesn't make their money by selling
a computer, or a few add-on's for a computer that have low profit
margins. They are all about selling big ticket items, with a
substantial profit margin, and lots of them.
As I pondered my purchase of a gPC, I had started considering
upgrading from my 19” CRT to a flat panel monitor. I had done some
research online back when the gPC was first announced (back in
November), and found there seemed to be a price break around the 20”
to 22” LCD's. At that point I had decided that it wouldn't be worth an
extra $100-$150 to have two 22” monitors (with the dream of someday
setting up a dual-head configuration for my main computer, while
hooking up my laptops to the secondary inputs). So, I had resigned
myself to planning to order a couple of 20” wide screen LCD's from a
major online store.
I nearly let out an audible laugh when I spotted the 22” wide-screen
monitors on the shelf in Wal-mart. Surely, they couldn't be as good
as the monitors I'd been looking at online. Well, I thought I could
endure some extra amusement before leaving with my gPC. I turned the
box around so I could see the specs on the side: 14 million colors,
resolution to 1680x1050, Horizontal Sync range of 31-80, Vertical Sync
range of 56-76, Pixel span of 0.282mm. Okay, not quite as impressive
as the other LCD's I'd looked at, but nothing to sneeze at either.
However, there was one important spec missing: the response time. I
pulled out my Motorola Q and looked up the specifications on the
Proview website...2ms response time!
Okay, suddenly this monitor wasn't a joke. They were actually a
reasonable choice (for $250). So, I walked out of Wal-mart with my
gPC and two Proview PL2230WDB
monitors in my cart.
UN-BOXING AND SETUP
I possibly have things a little bit better at home for my computers
than a lot of users. I have a dedicated office, with a table that I
have specifically set up for my computers. As a Unix/Linux
administrator during the day, and a wannabe writer at night, my work
area is quite important to me.
So, I unloaded the car and put the boxes in my living room. Then I went
into the office and cleared off the workstation area of my desk so I
could set everything up. Back in the living room I un-boxed
everything, and started placing the machine and monitors into the
office and cabling them up.
The monitors came with pretty much what I'd expected: the monitor, a
two-piece stand that snapped together, a VGA cable (but not DVI cable,
despite having DVI inputs), a speaker cable (the monitors have built-in speakers
I'll never use), a power cable, and a CD with drivers and
documentation for Windows. The gPC came with the computer, keyboard,
mouse, speakers, CD of the OS, a few pamphlets. The documentation is
rather skimpy, opting for a glossy large single page with quick setup
instructions on one side, and a quick overview of the desktop on the
other.
The one interesting thing about the gPC was the choice of using a USB
connector to power the speakers, instead of a separate power cord. In
one respect, I admire this ingenuity, while in another respect I
lament that I would have lost a USB port to the speakers had I chosen
to use them.
My setup differs slightly from an “out-of-the-box” configuration is
several ways: -
I chose to use my Dynex DX-KBOM2 wireless USB keyboard and mouse.
- I wired the output from the sound card to my stereo. I have a
nice stereo that I typically prefer listening to over most of the
tinny, inadequate computer speakers.
- I added my external USB hard drive to the system. This drive has
backups from my desktop and laptop computers, as well as a bunch
of music and video files. All of these items I figured could be
useful as I journeyed into the new machine.
POWER UP!
So, after an hour and half it was time to start the gPC. I have to
admit, I felt a bit excited as I powered the machine on but soon had
my first disappointment, even though it is somewhat minor.
Several reviews have mentioned how quiet the gPC is. As I listened to
the fan rumbling away and the case vibrating in sympathy, I felt
somewhat let down. I couldn't believe that this was considered to be
a “quiet” machine. However, my standards are probably too high in
this area. I normally build my own machines with hand-selected parts.
I generally satisfy my sensitive ears by finding quiet power supplies,
quiet fans, and sturdy cases that tend to dampen the noise on their
own. The gPC is made from parts that are not the same quality level
as I would use. Of course, expecting high quality for $200 is a
little silly.
The initial startup of the machine walks the new user through a
series of items: language, time zone, account set up and password.
Then the user is prompted a second time for a password. This one
caught me off guard, and I consider myself to be quite technically
savvy (especially when it comes to Linux). But, as it turns out, this
isn't a problem. The system was looking for the user account password
that had been set up. It needed to use the account to run an
application using sudo. The only confusing part is the wording of the
prompt. I guessed (correctly) the only password it could be prompting
me for was the one I'd just set. I don't know that most people would
get that.
Next, there was the EULA prompt for the Google Toolbar. This was an
unexpected prompt, but understandable, as this machine makes heavy use
of Google applications but is not sanctioned by Google. This being
the case, the Google applications can be included with the system;
they just cannot get around having the user acknowledge to the Google
EULA. (You can chose to not acknowledge
the EULA if you choose not to use the Google Toolbar.)
With the setup complete, I was taken to the login screen. The screen
is simple and clean, looking like a modified GDM screen (which, in
fact, it is). I logged into the system and was greeted with the
default desktop as has been seen in numerous screen shots available on
the net (there's a really good gallery at Tuxmachines). But wait a second...this
desktop looks *literally* exactly like the screen shots, even on a 22”
flat panel LCD display.
VIDEO WOES
This shouldn't be, should it? Nah, it shouldn't. Probably the
default is just set to 1024x768 to make it easy for most users to read
the screen and be able to support older monitors out of the box.
Well, I guess maybe I stepped up a bit too much in buying a new
monitor. But no worries -- this is something that should be easy to
fix, even for the less technically inclined user.
I went into the menus, found the configuration menu, and opened up the
video settings. Much to my dismay the options were: 1024x768 and
800x600. The system hadn't even detected the superiority of my video
display, much less allowing me the option of fixing it easily.
Okay, so I can still fix this, but now we are out of the mom and dad
region of fix-ability. I opened a terminal and edited the xorg.conf
file.. I thought just the mode lines needed to be adjusted. I added
1680x1050 and 1280x960 as recommended by the Proview documentation.
Save the file, exit everything, and restart the X server.
The gOS login screen looks the same. I logged in. No change: the X
server hadn't been able to use the updated mode lines. At this point I
kind of shot myself in the foot, I have to admit. Being late in the
night, I made a jump to an extreme that I didn't need to: I ran the
xorg configuration option to generate a new xorg.conf file. When I
compared the files, I found they were different enough that I decided
to just try the new file (making a backup of the original first, of
course).
I was well rewarded for my effort: the X server came up with the
resolution set to 1680x1050. However, as I would find out later, my
reconfiguration was not completely correct, and there was a side
effect to my replacing the xorg.conf file.
But for now things were actually starting to get usable. The shelf
along the bottom of the screen no longer had to scroll left and right
to reveal its contents. Everything displayed along the middle of the
screen. And, more importantly, the leaf icon was over in the left
corner of the screen, so now it didn't look like just another
launcher.
UPDATES
Okay, I would be a hypocrite if I didn't do what I tell all my friends
to do: make sure your system has the latest security patches and
updates installed. This is actually especially true with a machine
that was shipped with a pre-installed operating system, as most likely
it has been “in channel” for a month or two, while the operating
system has been updated (more true with Linux than with certain other
operating systems).
Admittedly, I was surprised I hadn't seen any notification there were
updates available. Several screen shots I'd seen show a message
popping up on the screen when updates are available. The choice of
putting the system tray/notification area in the lower right hand
corner of the screen should seem normal to most users who have Windows
on their system. For me, though, I tend to not look at the lower
right hand corner of the screen. The annoying Windows system tray has
taught me to look away from it.
Never mind, though; I know how to find the update manager and start
it. And, sure enough, there are updates: a whopping 147 of them. I
started the download and figured it was time for a short break before
heading into some new territory.
A LITTLE MUSIC AND SOME TWEAKING
Coming back from my break I checked on the updates. They were still
downloading. It has been several hours, and I haven't had any music
at all. If someone who knew me was around they would have been
checking my temperature. For me, music is about as necessary as my
blood... So that was the next task.
My normal music player isn't included with gOS. No surprise, as I
haven't seen my music player included in any distribution. ( I'm used
to using snackAmp, but this system has
Rhythmbox, which will have to do for now.)
I start Rhythmbox and stare at it a second. I really don't want to
learn my way around its interface. My music files are on the external
120gig USB drive that I hooked up when I set up the machine. I double
click the convenient desktop link to open the drive. Some kind of
navigator/file manager window opens displaying the drive contents.
The window is pretty sparse, just an up arrow and a path window. I
assume that this is the standard Enlightenment file manager, and it
should work the same as most file managers. I navigate to the folder
I want and hit <ctrl a> to select “all” files. The whole window is
grayed out. Try dragging the files to the Rhythmbox. Only one of the
files appears in the play list. Hrm. Maybe I mis-moused. Try again.
This time a second file appears in the window. Grr.
I go back to the file manager window and hit <ctrl a> a few more times
for good measure. Now I notice there are some white squares popping up
in the middle of the window. I have no clue what this means, and
there's no menu or help for me to try to decipher it. I try dragging
my mouse around in the window with the left button held down and sure
enough, a “rubber band” style selection occurs. I try to drag and drop
the files again, and only one file goes into the play list.
ARGH! I just want some tunes! I end up dragging the files to
Rhythmbox one at a time. Finally! I have some music playing, and it
sounds pretty good. On to the next task...changing the wallpaper.
Changing the wallpaper isn't difficult. After a minute looking
through the menus, I find the right spot to make the change.
Next, adjusting the “shelf” along the bottom of the screen.
Yes, gOS is heavily geared towards Google. However, the designers
cannot call it a “Google OS,” nor can they claim any affiliation,
backing, or even an agreement with Google. And fortunately for users
of gOS, the designers (from a company called Good OS) had the
foresight to include a reasonable range of non-Google applications
with the system, which is a very good thing. There are additional
applications I need on the shelf, and several that I don't really
need. For example, my job requires I edit and view documents that are
somewhat sensitive. Uploading these documents to Google Docs &
Spreadsheets (or any other public web site) would not be acceptable,
so using OpenOffice.org is a much better solution.
I also need to adjust the size of the panel. When I reconfigured Xorg
to handle my monitor, the shelf remained proportionally the same size:
large buttons that you could literally throw your mouse at without
having to aim too much and probably hit what you wanted. While this
is actually good user interface and ease-of-use design, it is a bit of
overkill for me. However, it is possibly the best design element of
the shelf. I see this as the kind of thing that would make it easy
for my parents to use this machine. (Then I saw the animation and the
scrolling, which to me completely ruins a truly excellent idea.)
Okay, how do I go about changing the shelf? No documentation, so it's
time to just start clicking and hope I don't break anything.
Fortunately, my guess that clicking an icon with the right mouse
button would give me a configuration menu worked, and from there I found the
“iBar Configuration”. This was the window where I could change the
contents of the shelf. So I started making those changes.
After changing the applications, I went back to the menu again. There
was also an Appearance entry and an entry for the shelf itself. I
poked around until I found the menu to adjust the size of the shelf.
I was able to select from several size: small, medium, large, etc.
I was somewhat encouraged by the ease of making changes to the shelf.
This speaks well of the intuitive nature of a portion of the
interface design. I considered for a moment digging in a bit and
figuring out how to disable the animation and change the way the
buttons responded, so I could tell that things had been launched
(another annoying point that ruins an otherwise excellent design).
But as my album finished playing in Rhythmbox, I looked at the updates
and concluded it would be an hour before they finished downloading.
Combine that with it being past 3am, and I decided it was time to
sleep.
WHAT'S WRONG WITH MY gOS USER INTERFACE?
When I first saw the gOS desktop in screen shots, I thought it looked
pretty good. However, as I have hinted at already, the design of this
user interface leaves a lot to be desired and is a excellent example
of how a few good ideas can go horribly wrong.
The shelf is the perfect example: it started with a good core concept
of arranging up a series of heavily used icons along the bottom of the
screen and making them large and easily accessible. Unfortunately,
this is where the good design ended.
There are so many icons on the shelf that frequently they cannot all
be displayed. This means that users that are trying to launch a
program have to move their mouse over the shelf to get it to scroll
left or right in order to find the program they want. This goes
against one of the major design principles: encourage motor-memory by
keeping important items in a consistent location. Had this principle
been followed, it would have allowed shelf usage to become second
nature, a real “no brainer”.
Next, the way the shelf animates the launchers when they are moused
over is horrible. The animation ruins any chance the user has of
reading the text that pops up above the launcher to tell them which
application they are on. And when you click on a launcher to start an
application, how can you tell? Why does the launcher display an expanding
copy of the launcher, which is the same animation technique used when
you mouse over the launcher? To be fair, it gets larger than when you
just mouse over the launcher, but if you aren't watching carefully you
are likely to miss the difference.
And if that weren't bad enough, when you minimize a window it is
placed to the left of the shelf. As such, it's extremely difficult to
tell the difference between a launcher and a minimized application.
To be fair, the minimized icon might be a bit larger than the panel
icon, but I really can't say that with any certainty. How about
shading the minimized icons? Or placing them someplace else
altogether?
The Favorites menu would appear to be a good idea. A menu that is
essentially the same as the shelf, only you access it by clicking any
empty space on the desktop. Great, a quick way to get to the contents
of the shelf. Only it really isn't. Instead, it's a separate menu
that just happens to start out with the same applications as the ones
on the shelf. If you change the items on your shelf, you have to edit
the Favorites menu in a separate location to keep the two in sync.
The Google search in the upper right hand corner is another case of a
good idea gone awry. The font is too large to display in the
window properly, resulting in chopped off letters. You really can't
see what you've typed if you type more than a word or two. The white
box itself is just simply an eye-sore. The results after you click on
the button come up in a browser (WebRunner) that you can't really do
anything with –- it's functionality is dubious at best. And, the whole
search bar is a duplication of the Google Toolbar in FireFox, which at
least let's me click on the links to the pages and look at them.
The window decor has issues too. First the buttons on the windows are
just green marbles, lined up on the left side of the window. The idea
of the marble buttons is an idea from Mac OS/X that has been often
emulated. Personally, this is a portion of the Mac user interface
that is extremely weak. Even when the marbles are colored, it assumes
that a color is easily associated to a function. I have always found
this bothersome.
In gOS, the fact that all three are green doesn't even give the user
any clue as to what they do. To figure their functions, you have to
mouse over them to display their function symbols. But, this is
another issue -- if you are mousing over them you probably won't be able
to see the whole symbol. And, then you have to decipher what the
symbols mean. For example, the “close” symbol is a dot. A dot? How
does that say close? In fact, in some desktops a “dot” is used to
indicate the “sticky” state.
Add to this that the windows can only be resized from the top and bottom
edges of the window. Not from the sides as most desktops allow. And,
in some cases, it isn't even clear there are separate top and bottom
edges to grip until you mouse over them. For example: the background
of the file manager window is white, the same color as the bottom edge
of the window. This makes it impossible to tell there is a bottom
edge.
The network monitor, Exalt, looks impressive on the desktop, but it
doesn't actually show me that the network connection is working.
Unlike the Windows tray icon, or plug-ins for most other desktops, it
doesn't blink when there is activity.
Finally, there's no way to lock the screen or logout on the desktop.
In fact, the exit, lock, etc. are slightly hidden on the system menu.
Admittedly, this might be a good thing: it makes it more difficult to
exit the system by mistake. But, I'd think locking the screen would be
a good idea.
So, need I go on? There are many, many things that need to be worked
on in this interface. For pictures of a few of these issues, you can
look at my picture
gallery.
Now back to the rest of my journey.
THE XDEBCONFIGURATOR ERROR FROM HELL
I was still pretty wired, and found myself unable to sleep. After
what seemed to be about 20-30 minutes, I decided to check on the
updates. I was worried my network connection would drop in the middle
of getting them (which has happened before).
Lo and behold, the updates had finished downloading! They were still
in the process of installing, but I figured that wouldn't be too long
(the only big update was for OpenOffice.org). So I waited for the
installation to finish. It got all the way down to the end, when
suddenly a message popped up: E: xdebconfigurator: subprocess
post-installation script returned error exit status 1
I took a quick look through the output window and saw something that
looked like the system was trying to do something to my xorg.conf
file. To my relief, however, it appeared this was a post process: all
of the packages had been installed and configured. Nothing I wanted to
worry about now, I just made a mental note to look into it in the
morning.
I exited the update manager and then fired up synaptic. I selected
pekwm, Rox, pypanel, Xfce and a few more packages I frequently use,
and to have something to compare the gOS desktop against. I started
them downloading and went back to bed.
The next morning I went into my office and found the same
xdebconfigurator error message on the screen. I checked, and again it
appeared to have happened after the packages had been installed and
configured. At this point I didn't want to deal with the error any
more. It was time to work on making this system really functional,
and doing more comparisons and testing with it.
I popped open a terminal, went to the xorg.conf file and confirmed
that the contents hadn't been changed. I then set the immutable
attribute on the file, thinking that xdebconfigurator would honor that
attribute and not try to change the file.
INTO XFCE
I closed out of the default gOS desktop and at the GDM login screen
hit F10, then selected Xfce from the session menu, then logged in. I
looked at the standard Xfce screen that appeared and started making a
few quick changes: one panel along the top with the system tray,
application menu, task list, and a few plug-ins. I skipped setting up
all of my normal launchers; I just wanted a familiar environment that
I could try a few things in.
I started launching applications and moving them around between
desktops and doing some of the standard mail reading, news reading,
etc. I do most mornings. It became obvious fairly quickly that things
were a bit slower on this machine than my laptop, especially when I
tried to open Firefox, OpenOffice.org Writer, Thunderbird, and
Sunbird.
I also noticed that things appeared to be a bit washed-out looking. I
tried changing themes, but the image didn't seem to improve. Then I
thought maybe it was the monitor, I didn't recall having checked any
of the settings after getting it connected. Sure enough, the
brightness was still all the way up, and the contrast was down around
50 percent. Adjusting these settings improved the appearance to the
point where it was quite usable.
I still didn't have an explanation for why changing the themes didn't
improve things -- in fact, it seemed as changing the theme hadn't taken
effect. But that would have to wait. Next I wanted to figure out if
the degradation of the performance was related to Xfce or was a
general system issue.
I logged back out and went into the standard gOS environment. After
realizing the gOS desktop was configured for only one workspace, I
ended up fiddling around for a bit to find the virtual workspaces.
Once I had several workspaces set up, I launched all of the
applications that I normally use. The performance seemed a little
worse under the gOS environment than it did in Xfce.
I faced something of a dilemma. The performance wasn't horrible: the
system wasn't hanging or stuttering or anything traumatically bad. It
was more like I was able to see the screens re-painting a little more
slowly when switching between applications/workspaces. I was fairly
certain I could resolve this issue. However, these were four large
programs I was running, and the intent of the system was to be used as
a web-based platform, not large standalone programs.
And that was the crux of the dilemma: I could fix the issue, or I
could leave it be and try to use the machine more as was intended. I
opted to file this issue away until later and use the machine as
intended.
WATCHING A DVD
I can't honestly say that I watch many DVD's on my computers. Not
that they can't handle it, but normally if I am watching something, I
prefer to watch it on my TV, away from the computer. On the other
hand, watching the occasional YouTube video, or maybe a music DVD is
of interest to me.
I closed down all of the applications I had open and inserted a DVD.
Immediately a link was created for the disc on the desktop. Clicking
the link opened the disc in the file manager. Obviously not what I
wanted. I closed the file manager and launched Xine, which was able
to open the disc and start playing it. But, it didn't play well. The
animation of the selection menu was jerky, and the image stuttered and
skipped as I started playing a program on the disc.
It wasn't long before Xine complained that the number of dropped
frames was too high, indicating a video problem, a bad driver or
something. So off I went to look at the xorg.conf, again.
This time, the file had been changed! Huh?? I knew it hadn't been
changed during the package installations. It appeared that it had
happened after I had set the immutable attribute on the file.
I looked at the date/time stamp on the file and went off to look at
the messages file. Sure enough, xdebconfigurator was the culprit, it
had regenerated the xorg.conf file according to the entry in the
messages file. Okay, this was getting irritating. Time to do some
digging.
I wondered if anyone had mentioned problems with xdebconfigurator on
the help site for the gOS. I hadn't been there before, but there was
a handy “Q&A” launcher, so I decided to give it a try. It took a bit
of searching, but I did find the same message I was seeing. The
recommended fix was to just uninstall xdebconfigurator. Doesn't seem
like much of a fix, really. The thing that nagged at me with this
solution is this: if xdebconfigurator causes serious problems for
users, why install it in the first place? Why install it, only to be
told to remove it?
The answer is: the audience this machine is marketed to are very much
used to Windows and Mac OS/X. These users don't know an xorg.conf
file from a hole in the wall, and rightly so. It's not something they
should have to know anything about. And with the criticality of the
file, it needs to be protected. So, this is a case where an attempt
to do something good for the general user got in my way as a more
knowledgeable Linux user. (Maybe one of these days I will go back and
learn more about debconf and xdebconfigurator.)
After removing the package, I went back and looked at my xorg.conf
file. I was slightly disturbed to find the generated configuration
file was laid out for Xfree86. Granted, the Xfree86 format is still
compatible with Xorg, but there are some things that aren't the same,
and I found an example: the generated file set the mouse protocol to
PS/2, not ImPS/2 as it had been, and not Auto as the xorg generated
configuration had set it. (It was frustrating when my scroll wheel
stopped working for no reason I could immediately find.)
So, I looked over the file that had been generated. The mode lines
were correct. However, the monitor section didn't have the DPMS
option, or horizontal or vertical sync rates. I corrected these
settings and restarted the X server.
I chose to go back into Xfce. This time the video started and played
perfectly. Obviously the missing settings for the monitor were all
that were affecting the video playback. However, while I was playing
the video, I started to see the performance issue again, and this time
I noticed the CPU was pegged.
TRACKING DOWN A PERFORMANCE ISSUE
I opened terminal and started top. Oddly, the program that was
causing all the CPU usage was pdftotext. I couldn't understand this --
I couldn't think of anything that would have started pdftotext. I
noticed that it had a PPID that wasn't 1, so I looked up the PPID and
found a daemon called trackerd.
Trackerd is an indexing daemon for a search engine -– similar to Beagle
or Google Desktop. With a little more investigation into Tracker, I
found the source of the problem. The trackerd daemon was set to go
full-throttle in building its index. Further, it is set to index the
whole user home directory, which I had not known or suspected up to
this point.
I went ahead and adjusted the Tracker daemon's configuration to run
better in a low memory situation and turned off a few unneeded
options (I don't use Evolution, so no point in trying to index
Evolution data, for example). After saving the modified configuration, I tried
HUPing the trackerd process, but it didn't make a difference. There
is another layer to the “problem” here: pdftotext isn't being niced
when it's launched. Oh well, not a whole lot I can do about that at
the moment.
Why was the tracker daemon going nuts, you ask? Well, I'd have to
point the finger at myself at this point. I have a very large
collection of eBooks, over 1,100 of them, to be precise. I had
started copying them from my laptop to the new machine using scp. The
tracker daemon picked up on the directory change in my home directory,
and started doing what it was supposed to be doing: indexing the
files.
So, knowing the cause, and knowing that there would be an end to it, I
decided to play with tracker a bit. I had seen in the man pages that
there were command line tools for it, only when I tried to use them
none of them seemed to be installed. I went into Synaptic, and sure
enough the tools weren't installed, nor were any of the graphical
clients for tracker. I started those installing and went off into
Firefox to look up my next thing to do.
MAKING THE SYSTEM COMPLETE
gOS is a good system for most users. However, there are things that
can be installed to make it more complete. HowToForge.com has a
series of “The Perfect Desktop” articles written by Falko Timme for
nearly every distribution available, and gOS is no exception. While his
articles may be seen as a bit of overkill, I can say that I've been
able to do any- and everything I've needed on a machine after following
his suggestions: no digging for CODECs, no looking for the right
player to play an odd file. In fact, my only criticism of his articles
is that he doesn't chose some of my preferred applications. :) But
still, his articles are a good baseline for a configuration. I just
install my alternatives where desired (for example, installing Deluge
instead of Azureus for torrent downloading).
While tracker was still digging through all the PDF's on my drive, I
started going through Falko's article, and selecting all the things I
needed in Synaptic. When I had finished my selection (about 45
minutes later, with several interruptions along the way), tracker
still wasn't quite done.
I decided to wait a bit and start heating lunch. When I got back to
my desk I'd had an idea: I wonder if Groklaw would be interested in an
article on my experiences with this machine? I emailed pj, started
the packages installing, and decided that I could copy my music files
over from the external hard drive, while the packages installed, then
went off to eat my lunch.
Notice that the system was getting fairly beat up at this point:
downloading and installing packages, indexing files, and copying
files. While it was a bit poky trying to handle all the I/O that was
going on, it seemed to be responding pretty well to the load.
After lunch, I was pleased to find that all the packages had finished
installing. And this time, there was no error from xdebconfigurator.
And the files had finished copying, and it appeared that the indexing
was either done, or at least wasn't using up all the CPU anymore. I
checked my email again, but no response from pj, so I went back to
tweaking the system and testing things out, and investigating the
system level configuration.
THE DEATH KNELL FOR E17
One of the things I need to do on a semi-regular basis is remote into
work. I would personally prefer to use a regular VPN for this task.
Alas, the work VPN is a proprietary system that doesn't have a Linux
solution. (Several of us have been trying for some time.) Because of
this, I am relegated to using a web-based Citrix application server to
run remote desktop to get into my Windows PC.
In order to use this connection, I have to install the Citrix plug-in
for Linux. Which I downloaded and installed. The other requirement
is a correct, working version of Sun Java that is compatible with the
Java applets used by the Citrix server (this is one of the things that
“The Perfect Desktop” resolves for me).
The thing about this configuration is, I have found that not all
window managers on Linux work properly with it. I haven't dug into
the situation carefully, but it appears the Citrix plug-in (or the
Java applet) creates a hidden window the exact size that it needs to
display an application, then maps the image of the the application it
is serving on to it. This appears to confuse a
window manager like pekwm. It gives the focus to the hidden window,
and tries to send all of the keystrokes, mouse movements, and other
events to god-knows-where, but they don't get to the Citrix server
because they are never echoed back.
This is important enough for me that it means life or death to any
window manager/desktop that I am going to run on a routine basis.
Personally, I am okay with running pekwm during my normal usage, and
then switching to Xfce (which does work correctly) when I need remote
connectivity into work.
So, this was my final test for the gOS desktop, now that I had
everything set up.
I went back into Enlightenment and tried logging into work. The site
came up, and I was able to log into the Citrix application server
page. This much I have been able to do everywhere, and I've been able to
do it with both Firefox and Opera, so it was no surprise. The next
part was the tricky part: launching remote desktop and logging into my
PC.
It failed.
As with pekwm, the window came up, and the image of the
login screen was displayed, but I was unable to type in the window.
This isn't a matter of the keys not being echoed; they are completely
lost.
With that failure, I thought I'd better verify that it worked in Xfce.
I logged out and switched to Xfce: everything worked as it had on my
laptop running Ubuntu (Feisty and now Gutsy). So, that was the death
knell for Enlightenment. If I can't do my work, it's not of any real
use, especially with an interface I am not exactly in love with.
BEYOND THE FIRST 12 HOURS
Originally I planned to stop here, summarize my thoughts, and give a
conclusion to this review. However, a couple of issues came up that need
to be addressed in this article. And, on a whim, I decided to test a
theory about the user interface to gOS. So, this article has been
expanded to nearly double its original length. I hope that you find
the additional things that I have to talk about interesting, even if a
portion of it isn't pertinent to reviewing the gPC.
MISSING SWAP
One of the activities that I do on a routine basis -- say every few
days, or weekly -- is to check my system to see how well it is
performing. There are a lot of tools in Linux that can be used for
this: top, sar, vmstat, iostat, free, ps, df, du, and others.
System
performance monitoring is a subject that whole books have been written
about and is a bit out of scope for this article. If you want to dig
into any of these utilities, I suggest starting with their man and info
pages. If you want to learn even more, I'd recommend the book “Linux
Troubleshooting for System Administrators and Power Users” from
Prentice Hall, ISBN10: 0-13-185515-8, ISB-13: 978-0-13-185515-1.
While my gPC was new and wouldn't have a lot of information to show
me, it still seemed like a good idea to poke around a bit to give
myself a baseline for what I should expect and make sure there
wasn't anything that looked odd.
As I was checking the system out, I found a major issue: the system
appeared to not have a swap partition configured. On a system with a
lot of installed RAM (say 2gig or more), this isn't likely to be a
major issue under normal usage. However, on a machine with 512meg of
RAM, the swap partition is needed to allow the system to free up the
RAM to allow applications to run at their best performance. Indeed,
as soon as I saw this issue, I realized that the problems I had seen
with the tracker daemon taking too much system resources, and the
system slowing down when running many applications, was likely (at
least in part) due to the strains that Linux was going through trying
to manage everything in just RAM, with no extra room for the system to
use as temporary space.
I quickly created a 1gig swap file by doing the following three things in my
terminal window:
sudo dd if=/dev/zero of=/tmp/swapfile bs=1024K count=1024
sudo mkswap /tmp/swapfile
sudo swapon /tmp/swapfile
This procedure does the following: step 1 creates an empty file
approximately 1gig in size, step 2 formats that file for use as a swap
file, and step 3 activates the swap file so the system knows about it.
There was an immediate result: 60 megs of data paged out, and RAM was
freed up. I determined this by looking at the output from the free
command:
(Note: the above example is from my current system, which now has
1.5gig of memory.) Whereas originally, the *Swap* line had all zeros, it
now had numbers similar to the above, except the *Used* column said 60.
It was almost like the machine breathed a sigh of relief.
The last step to fixing this problem was to add the swap file to my
fstab so it would be found whenever the machine was restarted. Looking
in the fstab file, I found the system actually did have a swap
partition defined:
But, it was obvious that the swap partition hadn't been activated when
the machine started.. I did an ls -l /dev/disk/by-uuid and I did find a
link to /dev/hda5 (which was hinted at by the comment in the fstab
above), but the UUID of the link, and the UUID in the fstab file
didn't match:
To make certain I had things correct, I did a swapon /dev/hda5, then
verified that it had mounted correctly by running cat /proc/swaps:
I deactivated my swap file and deleted it. Finally, I fixed the UUID
in the fstab to match the UUID in /dev/disk/by-uuid.
I went to the gOS IRC channel and mentioned this issue. One of the
participants stated that this was an issue with how the machines were
being imaged by the OEM (Everex in this case). This makes sense as
others who have installed gOS from CD haven't had this issue. Although
it is slightly weird that the UUID for the root partition was getting
set correctly (which I confirmed in the fstab and grub configuration
file). The swap was somehow overlooked when Everex set up their
imaging process.
THEMES IN XFCE
I mentioned earlier that it didn't seem that changing themes in Xfce
was working properly. This, as it turns out is something that I had
run into once before and totally forgotten about (kudos to a
participant of the gOS IRC channel for refreshing my memory). There
was a .gtkrc-2.0 file in my home directory. The presence of this file
will stop systems like Xfce from being able to change the theme that
is in use on the system.
But, wait a second, that file doesn't exist on any of my other
machines. So, how did it get there?
As it turns out, there is a default .gtkrc-2.0 file in the /etc/skel
directory. This makes certain the file is automatically copied into
the home directory of any account that is created on the system.
While I understand the desire to make the system as usable as
possible, this “feature” is really a non-feature in my book. I don't
know of a system that *doesn't* allow you to change the color settings
on your windows. Even Microsoft wouldn't go that far, and I would
hope that Apple wouldn't go that far (I'm not overly familiar with the
Mac, so I'm only speculating here). The idea that the user needs to
be protected from changing their theme is just downright stupid.
PERFORMANCE AND MISCELLANY
I am not a highly methodical performance measurement person. I don't
sit down with a lot of tools and analyze every last detail of system
performance. However, I know where to look for performance issues, and I know how to use tools like sar, time, dd,
vmstat, iostat, and a few others to test parts of a system.
I really didn't go far with performance testing the gPC system.
However, I did do some poking around, and made a few notes about how
it compares to my laptop, a Lenovo 1000 N300 with an Intel Celeron
M424, 1.6GHz.
The first thing I looked at was /proc/cpuinfo to see what the bogomips
rating of each processor is. The Celeron comes in at 3195.64, while
the Via C7-D comes in at 3011.07. Not a terribly huge difference when
you consider the laptop was nearly four times the price. The one
difference I did note, and I think this is possibly the most telling
difference between the two: the Celeron has 1meg of CPU cache, while
the C7-D only has 128Kb.
While I do have sar installed on the gOS machine, I am hesitant to
talk about its measurements in heavy detail for two reasons: (1) I
don't have sar running on my Lenovo, and (2) I would need to devise a
more exacting testing and configuration methodology to make the
comparisons meaningful. Typically my reason for installing the sysstat
package is to have it around in the event that I need to track down
some problem that I might be able to get a clue on by looking at the
stats over a longer period (hours to days).
I did review the sar logs for several days since I set up this system.
I have sar set to snapshot the system every 10 minutes. What I have
seen in the logs is this: nothing. There are no major I/O problems,
no major page fault issues, no inexplicable IRQ's, etc. Basically,
when the system sat idle, it sat idle with just a little of the
standard system level activity going on. When I was doing things with
the system, it responded (and logged) appropriate activity.
There was one item that I did notice and made a test comparison
between the Lenovo and the gPC. When I found that the swap file
wasn't active, I went ahead and created a file using dd. The nice
thing about dd is that it gives you some timing and I/O output when it
finishes running. I saved the output from the run, and decided to do
the same test again later, and then perform the same operation on the
laptop to see how it faired.
Before doing this test, though, I did a little checking on the two
machines. It turns out that both of them are very similarly
configured: both have 80gig drives, both have 2 partitions (one for
the OS, one for swap), the swap partitions are the same size, both
/file systems are formatted with ext3, and both are configured for the
same number of inodes, etc. In fact, I almost had a sense of déjà vu
looking at the disk layout of the two machines. it almost appeared
that one was cloned from the other.
However, I know that isn't the case, especially given the results from
the test. But beyond that, there is a major difference in the
hardware: the disc controllers aren't the same, the physical discs
themselves aren't the same, etc. I haven't looked up the makes/models/
stats of the disks in the machines, but it's obvious that
they are different.
The gPC averaged 36 seconds to create a 1.1GB file, with a transfer
rate of 30MB/s. The Lenovo took 51 seconds, with a transfer rate of
21MB/s (again, on average). So, it would appear that the raw disk I/O
in a linear writing scenario is better on the gPC than it is the
laptop. (Which is likely explained a lower speed drive in the laptop,
given the type of drive installed.) That lead me to wonder if the
linear read time for something like starting an application would also
be better on the gPC? Unfortunately, this isn't the case, exactly.
I did a very unscientific test of starting large applications on the
two machines and logging in and out of X. The applications I used
for the test were: Firefox, Thunderbird, OpenOffice.org Writer, and
The Gimp. The result of testing with these applications was very
consistent: each of them started in 5-10 seconds on both machines. On
average they took 1-2 seconds longer to load on the gPC than they did
on the Lenovo laptop. Logging in and out of X, both systems logging
into Xfce with an identical configuration was consistent with the
application tests: 1-2 seconds difference, the gPC being a bit slower.
So, what does this show? Only a little bit, IMO. The gPC actually
excels in some areas that I personally didn't think it would excel in
(the linear writing). The application launching is another matter. I
was surprised that the two were so close. I expected the gPC to be
slower, possibly two to three times slower than the Lenovo. Where I
actually think the bottleneck in terms of startup times on the gPC
is not in the disk performance.
I think the gPC is slower at starting applications because of the
smaller CPU cache. Why do I think that? Again, it's unscientific,
but watching The Gimp load its extensions on both machines looked to
be going about the same speed. The Gimp loading its extensions isn't
as bound to disk I/O as much as it is to the speed of the CPU. I
would almost be willing to bet that if the C7-D had a 1Meg cache, it
might rate the same as the Celeron in my laptop, or possibly better.
REPLICATING THE GOS DESKTOP
Let me start this portion of the review with a small commentary about
window managers/desktops and Enlightenment in particular.
I've played with more desktops and window managers than most people
probably should in their lifetime. At one time, I used to install
every one that was available on whatever distro I was using and tried
to spend a week in each of them (some I spent longer in; some I
couldn't stand for more than a night or two) evaluating different
parts of them and just trying to get a good feeling for what it would
be like to work in it on a daily basis. Once I had at least tried all
the available managers in the distro, I found Window Managers for X website and proceeded to start going through each
of those.
What spurred me to this activity? Well, initially, I had tried both
Gnome and KDE. Gnome frustrated me: too many options seemed to be
buried too deeply to find easily and other things were only
accessible through tweaking configuration files. To make matters
worse, most of the documentation for the configuration file tweaks was
online and not always easily understood by a relative newbie to
Linux. KDE, to me at least, appeared to be better but not perfect. I
recall there were four or five things that I hadn't been able to
accomplish in Gnome that I did in KDE without too much effort. (I'm
not claiming that these things were all that intuitive in KDE, only it
took less effort to figure them out, or at least find the answers I
needed.) However, my satisfaction with KDE was short-lived when KDE 3
came out. I noticed a definite change in performance.
In talking with a few friends I'd made online that used Linux, one
suggested looking at WindowMaker, and another suggested looking at
Blackbox. I downloaded and looked at both of them and fell in love:
the performance was so much better! And thus started my long road
evaluating many, many window managers.
This is the long way to getting to the following comment/opinion: in
all of the window managers and desktops I looked at there were ones
that were good, ones that were bad, and even the ugly. But, even worse
were the handful that were almost diametrically opposed to the kinds
of functionality I felt needed to be in a window manager. One of
those handful of window managers was Enlightenment.
Now, this is not to say that the functionality that I was looking for
wasn't or isn't available in Enlightenment. Quite to the contrary, I
am certain that the functionality is there. However, it was a
matter of feeling that functionality and usability was secondary and
therefore buried to a level where it was painful to seek it out.
Why did I get that feeling? Well, the primary reason was that the
themes and window decorations were so elaborate in many cases that it
was impossible to make simple changes to them, such as the order of
the buttons, or the size of the title bar without going through a
theme editor and basically re-inventing the theme to suit my needs.
Now, I know, not all GTK+ themes allow you to adjust the window
decorations in such a manner, but the number of them that *do* allow
this kind of a change is quite high. And quite a few window managers
(like Blackbox, Fluxbox, pekwm, just to name a few) make it as easy as
editing a simple text file to make these changes. Enlightenment, on
the other hand, was going to put me into a position of needing to be a
graphic artist and possibly something of a programmer in order to get
a set of window decorations that had the functionality I wanted.
As I played around with the gOS desktop I was plagued by the thought
that there was good interface design at its core, but it had gone
horribly wrong. I started wondering if it would be possible to
replicate the concepts of the gOS user interface in other
environments? Surely it had to be possible, right?
I thought about it for a moment and decided to give it a try, with a
few caveats: I didn't want to spend a lot of time on this, if I
couldn't come up with something that loosely resembled the gOS
interface in half an hour, then it would be fair to say that the team
that had developed the gOS desktop had put much more time into the
endeavor than was worth trying to replicate. Also it would, at least
to my way of thinking, mean that there was something to Enlightenment
that made it a particularly well suited to this kind of interface
design that wasn't easily reproduced.
I also wasn't out to completely duplicate the appearance of the gOS
desktop. Rather, I was looking to come up with something that was
functionally similar, without the parts I felt were bad: the
wallpaper, the animation, the unreadable text over the icons, the
Google search bar on the desktop.
And I needed to keep in mind how much overhead the desktop would have
in memory since that is a valuable resource on a machine with only
512meg of RAM. The results were a surprise, even as I designed the
solutions.
I used wallpapers from The Kahvi Collective. This
net label is really excellent. I've got copies of all their releases
on my machines and use their wallpapers all the time.
I skipped the Google search bar because (a) search bar is not very
usable, (b) in my opinion, it's esthetically awkward, (c) the same
functionality is available in the Google search bar in Firefox. In my
opinion, it wasn't worth spending time to duplicate this
functionality. If I was really looking for this function, I probably
would have chosen to load Google Desktop on my system. (I did have the
Xfce Smart Bookmarks panel extension, but decided not to use it
either.)
XFCE
First up in this challenge was Xfce. I knew from the outset there
were several things that I couldn't easily replicate since Xfce has a
different approach when it comes to organizing the desktop.
I started by creating panels: first a vertical panel in the lower
right hand corner. I put the system tray in the panel and added a
few of my more commonly used applets. Next, I created a horizontal
launcher panel along the bottom of the desktop. On this panel I put
my equivalents of the launchers that gOS has on its shelf (i.e., pidgin
instead of meebo, OpenOffice.org Writer and Spreadsheets instead of
Google Docs and Spreadsheets, etc.).
Next I needed to replicate the placement of minimized window icons on
the desktop between the launcher panel and the system tray panel.
This was a problem. While Xfce does have this feature, it places the
icons in the upper left corner, and then moves down the screen. (I
think this *might* be something that could be changed in a
configuration file, but didn't have the time to look it up.) But the
current handling by gOS is pretty bad: it places minimized windows to
the right of the shelf, making it difficult to discern where the shelf
ends and minimized windows start. The answer was to do something
different, something more Windows-like: use another panel with a task
list. This way, the user could see all of their running applications,
and any minimized/iconified windows would be shaded in the task
list. To this panel, I added a pager, which is not in the normal gOS
configuration, but as I like using many desktops (ten, to be exact) it
is more utility to me as a customization of the desktop.
The biggest problem, however, was the placement of this panel.
Putting it in lower right corner of the screen, just to the left of
the system tray panel looked odd. It also posed a problem: users
might miss the panel and unintentionally hit something in the tray.
This wouldn't happen with the gOS desktop as the icons are too large
(but there is still the problem of not being able to easily
differentiate between the launchers and minimized windows).
I tried placing the panel in the upper left hand corner, pager on top
and the task list growing down the side. This proved to be a very
effective solution. It was easy to “throw” my mouse towards the upper
left corner of the screen, then move up or down to the task I wanted,
and with large buttons it made it easy to get the desired item every
time. Note when I worked on this, I didn't create the “About gOS” or
“My gPC” buttons as found on the desktop, however. I knew that if I
wanted to create them, they could have been placed slightly to the
right of the panel without a problem.
The clock and Exalt were things I actually didn't like about the
original gOS desktop. Placing them in the center of the right side of
the screen is just not all that good of a place for them. Plus, Exalt
doesn't really seem to be all that useful. I decided to instead opt
for a monitor application that would allow me to display whatever
information I wanted and place it wherever I wanted it. For this I chose
conky, (a) for familiarity, (b) for flexibility. Note, I didn't
update my configuration of conky, and as such it is slightly broken
(for example, the gPC doesn't have two CPUs, and the net meter should
point to eth1 instead of eth0), and conky doesn't duplicate the
supposed functionality of Exalt (but I found its usefulness to be
lacking anyway). Conky's configuration could be re-worked with larger
fonts and different types of information for the more general user. I
placed conky in the upper right hand corner.
And so, that was it. About thirty minutes after I'd started, I had
something that resembled the gOS desktop in Xfce, with a few twists to
make it work. (Note, I forgot about the Favorites menu, that would
have taken some more work.) In fact, as I used the desktop for a few
days, it seemed to work very nicely for me. You can see screen shots
of the results (some done in progress, and some slightly tweaked to a different color
scheme). You'll notice in these picture that I have the X
server's compositor turned on. I tried this for a while, just to add
a little more sparkle to my desktop, but then decided to turn it off
as the overhead was a bit much.
I have to admit, the Xfce design does take a little more memory than
Enlightenment: 68.3meg of memory, versus 58.2meg for Enlightenment.
However, if anything, I didn't notice any performance hit due to the
extra memory overhead. And, I know that the footprint could be
reduced by removing the panel applets that the gOS configuration
doesn't use: exit/lock buttons, dictionary, pager, and screenshot.
Just removing those would make the memory footprint smaller (by a few
meg). Plus, the advantage of Xfce is its fully integrated file
manager, which the gOS environment doesn't do very well at all. (I
mention this because Thunar is actually started as a daemon in Xfce,
so it counts as part of the memory footprint.)
PEKWM AND ROX
I had thought that it was relatively easy to create something similar
to the gOS desktop using Xfce, however I hadn't considered what it
would take in pekwm with Rox. And, the reality is, the results
resemble the gOS desktop even more than the Xfce version, and it was
even easier to create.
To start off, I modified the startup of pekwm to add a Rox pinboard
for the desktop. Then I set the wall paper to one of my choice. I
already had a pekwm theme I had already been developing based on the
wallpaper colors.
Next, the big thing was to recreate the shelf along the bottom of the
screen. This was easily accomplished by dragging the desktop files
from /usr/share/applications to the desktop, arranging them along the
bottom and turning off the titles that Rox displays. I then copied
the “About gOS” from the Enlightenment desktop to Rox's desktop. Rox
had already created a “Home” shortcut on the desktop that I just
changed the image to the same one used on the gOS desktop and changed
the title to read “My gPC” and arranged them in the upper left hand
corner.
Next, I added an application called trayer to the startup for pekwm
with options to place it in the bottom right corner, just as the gOS
desktop used it (in fact, I later found this is the tray that the gOS
desktop uses). In place of Exalt and the clock, I used conky as I had
done in the Xfce version (although, the thought of using xclock and
xosview instead had occurred to me...but I didn't want to spend the
time configuring them).
Finally, I went into Rox's configuration and made a few tweaks: (a) I
told it to pass mouse buttons to the window manager, to allow using
pekwm's launcher and window control menus, (b) I turned on the option
to show minimized windows on the desktop, and placed them in the lower
right hand side of the screen, and adjusted the offset from the right
side so they didn't overlap the tray.
A couple of final touches: I updated pekwm's start file to
automatically start the Rox pinboard, conky, trayer, and set the
wallpaper using hsetroot as well (to resolve an issue where some
applications that use transparency will only look at the X root
window, despite Rox putting up its own root image) when the user logs
in. I also adjusted pekwm's autoproperties file to resolve an issue
with trayer and conky getting stuck between the X root window and the
Rox pinboard.
And with that, the desktop was complete, well at least as complete as
I could accomplish in 30 minutes. You can see screen shots of the
completed desktop here.
Some notes about this desktop:
1. It doesn't have a “Start” button. I'm sure I could get this with
a Rox Application, but I decided to not pursue it for now. (There
is a quick hack for this, however, just create a shortcut to
/usr/share/applications on the desktop. This allows Rox to open
the folder, where you can launch any of the applications directly
from their .desktop files.)
2. I didn't try to recreate the Favorites menu of the gOS
environment. Could easily be done in pekwm, but I didn't feel
like it. Instead, my “favorites” are on the main menu.
3. There are no buttons on the title bars. That's not a
shortcoming; it's a design choice. With pekwm's ability to group
windows, it makes more sense to turn off the buttons to have the
most space to read the window titles. (Look at images 3 and 4 –
the windows are the same, just different applications selected in
each one.)
4. The gray semi-transparent background behind the minimized
windows: major advantage. Easy to differentiate between minimized
windows and the launchers.
5. Title bar colors aren't completely done -- I haven't finished my
theme yet.
6. In the snackAmp screen shot, notice there is no title bar on the
player window. This is a feature, a compact view of the player
which I normally have on all desktops automatically.
7. Notice the pop-up “GoTo” window allows selecting applications
by frame, while the “GoTo Client” menu allows selecting any
program from any frame.
8. No animation of the launchers (yay!). Clicking on a launcher
flashes a white band around it to indicate it's been clicked,
however there is no other feedback that it's launching (like the
mouse pointer changing).
9. A final note: pekwm's default menu is static. It doesn't look at
the /usr/share/applications directory and build a menu from the
.desktop files. This is something that could be done but is
beyond the time I had to work on my experiment. The default menu
does contain most of the applications you'd normally use.
Rox and pekwm allowed me to get a lot closer to the look and feel of
the gOS desktop than did Xfce. However, there is one thing I didn't
mention above: Rox is a lot faster as a file manger, and it's
infinitely more functional and flexible than Fileman in the gOS
desktop. This alone makes this approach worthwhile in my opinion.
The memory footprint issue is another stunning case in point. Rox,
pekwm, conky and trayer take a total of 26meg of memory. Less than
half of the memory required for either Xfce or Enlightenment. And,
while there are a few small things missing from this configuration
(like a “start” type menu). These things could be implemented with
more time, and I suspect that they wouldn't require doubling the
memory footprint.
There was one additional surprise. pekwm by itself doesn't have built-in transparency or compositor support. However, with a quick
download, I had installed xcompmgr to allow me to turn on and
configure the compositor support in the X server. Surprisingly, this
doesn't seem to have quite as much overhead as it did with Xfce. I am
not saying there isn't any, but it may actually be acceptable for
daily usage. (I am still just trying it out.)
TEST OVER
Overall, I'd say this was a successful experiment. While Xfce was
challenged in several areas to work like and look like the gOS
desktop, it was far more functional and usable, IMO. And the Rox and
pekwm version gets very close to looking like and even operating like
the gOS desktop. I'm sure if I wanted to spend some time working on
this (which would be a fools errand, in my opinion), I could solve most
of the issues that I ran into with Rox and pekwm emulating the gOS
desktop.
The memory overhead was a little more for Xfce (10meg), and less for
pekwm / Rox (26meg). X compositor support was a bit tricky with Xfce,
but seems to be okay with pekwm/Rox. To be fair, I didn't try using
xcompmgr with Enlightenment as that wasn't part of the objective of
this test.
Honestly, Xfce and Rox/pekwm were just the tools that I had at hand.
There are other desktops/environments that might be better suited to
this kind of system. IceWM comes to mind immediately (although,
admittedly, it's more Windows-like). Fluxbox could also be a
contender in this arena, as could a host of others.
So, the questions remain: why Enlightenment? Enlightenment feels
clunky, configuration is difficult, its file manager is bad, it's
memory overhead is high for what it provides, and its tools are
minimally useful (Exalt). Comparatively, the environments I tested it
against came in with similar or better memory foot prints, more
functionality, and smoother operation.
SUMMARY AND CONCLUSION
I would not say that the gPC is a great computer system. However, it
is a system that is well fitted to the purpose it was intended for:
browsing the web, sending email, IM chatting, and other online social
functions.
Of the issues and problems I ran into with the system, some were of my
own making, and some were definitely weak points in the system as
distributed by Everex. The single biggest issue that absolutely needs
to be addressed is the broken swap partition as it directly affects
the performance of the system. The other part of the system that I
found serious enough issues with is xdebconfigurator, which I would
recommend removing (unless you are more masochistic than me and want
to figure out what is wrong with it).
Overall, I would have to say the system performs quite well when
compared to other systems designed to run an operating system like
Windows XP. My comparison to my laptop showed that the speed
differences were negligible, while leaving some room for improvement.
(If Via comes out with an upgrade for the C7-D that has a larger
cache, I'd be all over that.) I would suggest considering more memory
for the machine, while I don't have proof yet (my order hasn't
arrived), I'd bet that going to 1gig or 2gig will allow the system to
perform a lot better. When you consider this kind of upgrade won't
cost more than $50, you are still well ahead in the price vs.
performance game.
The video performance appears to be acceptable and runs DVD's very
well. However, trying to use something like the compositor will drain
some of the resources from the system. I don't know what the solution
for this is: it could be the onboard video, it could be the video
driver, it could be the CPU. I'll know better when I get my memory
and video card. Definitely for now running something like compiz or
beryl would not be advisable.
The sound on the system is nothing spectacular but nothing to sneeze
at either. The sound output was good and smooth, was able to drive my
stereo system well, and faithfully reproduced the sound of ogg's,
mp3's, flac's and DVD's without issue. I didn't set the system up to
take advantage of the full 6 channel surround sound. I'm something of
a purist, so good 2-channel stereo sound is what I typically require.
There was one odd note that I don't think I'd mentioned before: the
sound quality between the rear speaker port and the front panel head
phone jack appears to be different. The front jack was definitely
thinner in sound: less bass, tinny upper end, and somewhat thinner
sounding mid-range. It could be that something is mis-wired, or maybe
the headphones were wired for two of the surround sound channels. I
don't know right now. I will know when I open the case and look at the
wiring. But this proved to only be a minor annoyance -- and something I
suspect most people wouldn't notice.
The only part of the system that I found to be seriously lacking was
in the desktop interface. The interface is designed to be light and
easy to use. And, on an intuitive level, this definitely proves to be
the case. However, I've dedicated a whole section of this review
explaining the issues with the user interface. I just don't have the
feeling that Enlightenment as a desktop environment is really ready
for “prime time”. I didn't find it to be all that good when I looked
at it in the past, and I still feel there are a lot of other options
that would be a lot better. On top of the desktop issues, fileman is
unusable as released in gOS (although one of the development team
tells me that there have been recent major improvements in this area,
but I am skeptical).
A couple of other reviews have questioned the “green” claim of this
machine. There is no certification (like an EnergyStar rating).
However, VIA does have a ROHS certification on their website
for
the C7-D processor. Also, the efficiency of the power supply has been
questioned. But, when all is said and done, this machine has measured
as only using 20-80 watts of power during normal operation. This is a
lot better than quite a few machines on the market; however it does
have room to be improved, while still keeping in the low price range.
So, this is a machine that I can recommend purchasing, with a few
caveats:
1. Expect to have to fix a few issues as outlined in this article. I
would even suggest either (a) reloading gOS from the supplied CD,
or (b) installing some other version of Ubuntu (I'd recommend
Xubuntu).
2. Don't expect the desktop to be the perfect if you stick with
Enlightenment.
3. Don't expect to be playing major games, like Crysis. (Not that I
think anyone buying this machine *would* expect to play heavy
games.)
4. Seriously consider getting more RAM for the machine. The bang
for the buck will probably be highly worth while.
The fact that this is a low power consumption machine, combined with
the $200 price tag, makes it an extremely attractive machine. It's
definitely well-suited to most web-based applications and most SOHO
needs. As an all-in-one system, it's very good.
However, if you have the skills, you might want to consider building
your own system: there are several other motherboards for the C7-D
processor, including one with a smaller footprint that could fit into
a Micro-ATX chassis. Also, you could then look at getting a more
efficient power supply. And you could decide
what distribution you want to use with the machine.
References
gOS and gPC Links:
Everex gPC page: http://www.everex.com/products/
gpc/gpc.htm
Think gOS site
FAQLY's gOS FAQ's/Q&A
gOS IRC channel
gOS Forum
VIA Arena (additional hardware info, Linux/Ubuntu drivers/info, and
more)
VIA pc2500 Mainboard page (info about the system board in the gPC)
gOS Images:
TuxMachines' gOS Images
My gOS Images
My Xfce gOS Images
My pekwm/Rox gOS Images
gOS/gPC ARTICLES/REVIEWS:
From PC Magazine:
The gPC: 'G' for 'Green' or 'Google'?
Everex gPC
Rob Beschizza, Wired
Slashdot
Ben Crowell's review of the Everex TC2502 Green gPC
Gizmodo
HowToForge: The Perfect Desktop: gOS 1.0.1
SOFTWARE:
Xfce
pekwm
Rox
Conky
Enlightenment
snackAmp
|