Feisty Fawn Facetiously Frolics
Well, after several months of development, Ubuntu 7 (Feisty Fawn) has finally hit the download servers. I've always enjoyed getting the latest Ubuntu release since Canonical seems to understand what new "features" are important to end users: flash, glitz and useless 3D effects. Thanks to Vista, no desktop is considered to be complete anymore without partially translucent window borders, subtle shadows and not-so-subtle 3D transitions. But I was talking about Ubuntu, not Vista... Each Ubuntu release seems to feature a new improvement which either makes Gnome more usable for the uninformed end-user, or increases the visual appeal. For example, Ubuntu 6.1 featured a slightly improved version of the Human GTK theme. Ubuntu 7 actually has two big ticket items which fall into this category: NetworkManager and Compiz. NetworkManager is this cute little utility which is just made for desktop end-users. It basically encapsulates all the complicated configuration typically involved in setting up wireless functionality in Linux and replaces it with a simple and attractive menu. The UI itself is somewhat reminiscent of the wifi network selection menu in MacOS X, except it also shows network strength. NetworkManager also deals with switching between wired and wireless networks seamlessly. Now, NM has actually been around for a while now, but it's been kept out of Ubuntu due to a lack of support for static IP configurations (until now). Compiz is a slightly different type of upgrade. Like NetworkManager, it's actually been available for a while now, but unlike NM its functions are purely aesthetic. Compiz lets you do fun things like make windows wobble as you drag them, or add shadows to visual elements such as windows, menus and tooltips. It's pretty cool, though I'm sure the die-hard utilitarian Linux users are crying foul. Compiz's one detraction (aside from its sheer uselessness) is that it requires quite a high-end graphics card to fully take advantage of its glitz. Thanks to the new restricted drivers utility in feisty, it's fairly easy to install drivers which enable things like Compiz, but unfortunately you still need the hardware to back it. Unfortunately, even this latest release of Ubuntu seems to lack first-class Eclipse support. Oh don't misunderstand me, you can still install Eclipse from a tarball and it works wonderfully; but the package installer available from the Ubuntu repositories (i.e. what you get when you type "apt-get install eclipse") still isn't up to snuff. It's not really Ubuntu's fault really. After all, it's Eclipse that has the somewhat non-conformant directory structure. I know that it's been discussed ad nauseam in the past, but unfortunately Eclipse doesn't seem to be on the road to recovery any time soon. For those of you who don't know, the problem stems from the fact that Eclipse keeps its plugin and feature files in a subdirectory of the main installation directory (e.g. "eclipse/plugins"). If one attempts to use Eclipse in a shared environment, the permissions on these directories must be lax enough to permit any eclipse users full read/write access. However, this is something of a bad idea since it's not good to allow users to make changes which effect other users's environments. One possible solution that I've used from time to time, is to install Eclipse into /usr/bin/eclipse (as per Linux conventions) and then move the plugins and features directories to some separate location, usually /etc/skel/.eclipse Then, I create symbolic links in the /usr/bin/eclipse directory pointing to "~/.eclipse/plugins", "~/.eclipse/features" and "~/.eclipse/configuration" respectively. Any users which wish to use Eclipse get the plugins and features directories copied to the appropriate subdirectory of their home. This way, each user can use the update manager and install plugins as they see fit without affecting the global configuration. The problem with this approach is that one entirely loses global configuration control. For example, if one wants to upgrade the Eclipse major version, all of the ~/.eclipse directories have to be wiped and replaced, losing user changes. Minor changes, such as standardizing on a plugin, are next to impossible with this setup as well. And on top of that, for every user which wishes to use Eclipse, over 100 MB of hard drive space must be allocated. While this is less of a problem than it used to be, it still strikes me as extremely annoying. To Eclipse's credit, it has started a project to address some of the issues surrounding Eclipse installation on various Linux distributions. Unfortunately, the Linux Distributions Project seems far more interested in perfecting the build/release process to comply more with Linux distribution standards and to better facilitate the creation of packages such as RPMs and DEBs. While this is a laudable goal, it really doesn't address the core problems with Eclipse usage on Linux. Hopefully we'll see a fix for these problems eventually, but until then I guess we're stuck with sym-links and permissions tricks to make things usable. Do you have a favorite trick to make Eclipse function better in a multi-user environment? If so, I'd like to hear about it.
Until Next Time,
Daniel Spiewak
daniel@dzone.com
|