I was discussing, OK, maybe arguing, with my Windows/MS centric colleague the merits of Ubuntu v.s. Windows the other day. I know... it's an age old debate, but fun nonetheless. He made the statement that Windows is easy to use and that's what users want, they don't want to struggle with Linux. And I don't disagree with him, at least on the point that an OS must be easy to use, but where I don't, is that Ubuntu isn't user friendly. (I won't comment on other distros as they admittedly can be very difficult.) The one point that I will generally concede is that the standard look and feel of Windows beats Ubuntu hands down. OK, maybe this is an unfair comparison as Ubuntu is intended to run on a very wide spectrum of hardware and therefore they deliberately excluded the eye candy. But, it's relatively easy to transform Ubuntu to pretty much anything you want. Ubuntu is pretty easy to use, but because it looks different from Windows, this can lead to resistance to change.
This got me thinking a little... Well, what if the system looked and for the most part, functioned exactly the same as some given version of windows? This would negate the argument of which OS looked better as they would both be virtually exactly the same and to some degree which is "easier" to use. The look of the OS to some people is important. Admittedly, I do care that it looks "right" even though this isn't the only reason for my use of Ubuntu. Up to now, I'd been pretty much of the "Linux isn't Windows and therefore shouldn't look like it" opinion, but I started looking at how to transform my OS into a Windows clone, just to see how close I could get it. With a quick search, I found a set of scripts that made Ubuntu look virtually exactly the same. I even ran a "test" against some chosen subjects, showing them my new "Windows 7"... As they all know me as being a total Linux convert, they looked a little suspiciously at my screen and took a few moments to realise that it wasn't Windows 7. The give-away was generally the application names in the menu. But, nonetheless it was kinda hard to tell. Ok, I admit there are still differences that a user would have to get used to, but nothing rocket science.
So, if my Ubuntu looks virtually exactly the same as Windows 7, is Windows "easier" to use?
I'm finally beginning to describe myself as being OS agnostic. Some of my colleagues may scoff at that listening to the way I've gone on about Windows vs. Linux, but I really don't "hate" Windows or Microsoft. I've used their products for many years and admit that they have some without an equally good (or better) alternative. I just choose to use Ubuntu instead in most instances.
Ok, so now that that has been established, I believe that the world is going to be moving in the "OS agnostic" direction over the next few years. What I find it interesting is the need for companies to reposition themselves over the next few years in order to remain current. One of the "hallmarks" of the 70's computing era was that most computers were "dumb terminals"; all the processing happened server-side. And today, we are slowly moving back to that in certain instances. For many people, much of their computer-based work happens through the browser and they don't really need that many client-side applications. Even the office suite which has been the staple of most computer needs over the past two decades has started moving online. There are a number of options available including Feng Office, Google docs and even Microsoft is half way there with Office-live. With regards to Microsoft, They've got a distinct advantage in that they are so dominant in the "Office market" that all other "Office" applications have to pretty much conform to their standards or they wouldn't easily be even considered. And that includes me! I hate receiving an emailed document from someone (or sending one), only to find out that the formatting looks weird or has some compatibility issues. Therefore, I've ended up installing Microsoft Office on my Ubuntu. OK, I digress... For many people this is the killer, but as standards are being defined for most areas of I.T., including the open document standard and Office Open XML standard, it will matter less and less in terms of what you use to get the job done.
The adoption of cloud computing/ "Software as a Service"/web applications is going to reduce the importance of which OS you use over the next few years. So where is MS going? They're going to have to focus their attention on applications instead. I don't think that they can really avoid reduced importance in terms of OS choice if most apps are online. They're going to have to come up with some pretty inventive strategies in order to keep their users "locked" to Windows.
OK... Great. You I've watched a million YouTube videos on how great Ubuntu (or rather Gnome) can look with a million funky effects. But I was always left wondering how they did it. Sometimes you'd read through the comment section on the site and somebody would mention what was used. So, this time around I'm going to explain in as much detail as I can from a new users perspective on how to get all those funky effects. I know not everyone is going to like my theme, background etc, but once you understand how to do it, you can apply the concepts to your own instalation.
Default Ubuntu install
Let's get started. Firstly, I've installed Ubuntu 9.10 Karmick Koala but these instructions should generally work for other versions of Ubuntu and probably other Debian or Ubuntu based distributions. I'm running a Dell Latitude E6500 Laptop with 4 Gigs of RAM and a 2.4Ghz Core 2 Duo CPU. I then checked that my wireless Internet connection was working as well as ensuring that the Graphics card was ok. I didn't install any additional Graphics drivers for this machine - All I did to check that things were kinda working was to Right click on the desktop >>"Change Desktop Background">> Visual Effects Tab and enabled the "Extra" radio button. This Enables some 3D graphical effects, but I think that more importantly, checks to see that the graphics drivers are working. If you get an error, while enabling anything but "None", then you may need to install your graphics drivers first. Firstly, try click on Start >> System >> Administration >> Hardware Drivers. Assuming that you've got a working Internet connection, it will search for proprietary hardware drivers and hopefully find some that will work for you. Failing that, you'll have to Google for an answer to installing your graphics drivers. Without these you won't be able to enable the graphical effects that I'm showing here.
Compiz Fusion:
Ok, now that we're sure that your graphics card should work, the next step is to get "Compiz Fusion" working. Well, my first question when I heard about this "Compiz" thing, was what the @#$ is that? Well... hmmm.... Google it and you'll probably get an answer like "Compiz is a compositing window manager for the X Window System". OK, so that didn't help much to me trying to set up Linux for the first time - It basically replaces the basic window manager which renders the windows on the screen. As long as you're using a relatively recent version of Ubuntu, Compiz should already be installed by default. But just as a check you can click on Start >> Add/Remove Software or Start >> Ubuntu Software Center (depending on your version of Ubuntu).
In order to really get much use out of Compiz, you have to install the Settings Manager component. Once again, click Start << "Add/Remove Software" or "Ubuntu Software center". In the search bar, type compizconfig-settings-manager or ccsm for short and install the tool. Once it has been installed, you should be able to launch it by clicking on Start >> System >> Preferences >> CompizConfig Settings Manager. This is where the fun really starts!
I'll leave you to explore all the settings for yourself as it really comes down to personal preference, but the following plugins are those that I've enabled:
Desktop Cube - This is an absolute must :-) It allows the extension of your desktop onto the four (or more) faces of a cube. Explore the settings which allow you to set the transparency of the cube while rotating (on the "Transparency" tab) and setting a background image while rotating (under the "Skydome" section on "Appearance" tab). Rotate Cube - In order to see the effects set above, ensure that the "Rotate Cube" plugin is enabled. Now, you can test that everything is working 100% - Assuming that you haven't changed any of the keyboard shortcuts, you can hold your middle mouse button down on the desktop (not on an open window) and move the mouse sideways which should start rotating the desktop. Alternatively, you can press , and or to rotate the cube.
Note: I've enabled the "Cube Reflection and Deformation" plugin as well in order to achieve the reflection below the cube. Just ensure that you switch "Deformation" to "none", otherwise your desktop will probably look like a cylinder.
"Expo" plugin - This unfolds your cubed desktop and allows you to drag windows across all the faces. The standard effect I think is a straight horizontal alignment of the workspaces as apposed to the curved ones that I have (You'll see what I mean once you do it). In order to get it curved, you can set the "Deformation" on the "Appearance" tab to "Curve". On the same tab, you can set the reflection as well which also looks great. Once all this is enabled, press "Super + e " to activate the view below. (Hu... What's "Super"? Well... Linux talk for the "Windows button".)
Fading Windows plugin: Fading windows in and out when maximizing and minimizing - Pretty self explanatory. Window Decoration: Well... mine is enabled, but I've changed my window decorations to be managed by "Emerald". Google it for more info on what is is, if you're interested. WobblyWindows: These are pretty interesting effects you'll see when moving your windows around. Window Previews: These add previews when hovering over the application listed on the taskbar, similar to Windows 7. Application Switcher: This allows you between different windows on the current workspace with previews of the windows. Group and Tab Windows: This is an interesting one that allows you to take two windows and kinda glue them together as if they were on either sides of a piece of paper and flip them over. This took me a little while to figure out though, as you've got to first group two (or more) windows, tab them and then you can flip them. Play around and have a look at the default key bindings. Ring Switcher: This is a nice alternative to the function on the "Application Switcher" plugin. Shift Switcher: This is another alternative effect similar to the function, which I demonstrated in the above video.
Ok, that's pretty much a rundown of most of the plugins that I've enabled for Compiz, but it really takes some exploring to get it working the way you want. Just a note that it is possible to install additional plugins from the Compiz site, but I'm not going to cover any of that here. Cairo Dock:
If you've ever seen a Mac and thought that thing at the bottom of the screen that they use to launch applications was pretty cool, well... you can have your own for Linux/ Ubuntu as well. It's pretty simple to install - click on start << Add/Remove Software or Ubuntu Software Center. Then type in "Cairo" in the search box and install Cairo Dock. Done! Now... like everything else, the next step is to customize it. Custom themes can be downloaded from the Internet by Googling for Cairo Dock themes. There are tons of themes on http://gnome-look.org/. For a more in-depth tutorial on installing and configuring Cairo dock see http://linuxbsdos.com/2009/11/12/sex-up-ubuntu-9-10-desktop-with-cairo-dock/
Backgounds, GTK themes, icons and cursors:
Ok, this is probably one of the first things that most people do and really easy, but for completeness, I'll add it. You can either double click on any image and once opened in "Eye of GNOME" (The image viewing program) you can click on Image << Set as Background Image. Done~! Another way to to set it by right clicking on the desktop and then Change Desktop Background. Images can be dragged onto the application to add them. GTK 2.0 themes, icons and cursors can also be downloaded from gnomelook.org and added in the same way. This will probably the staple of your customization tasks so get used to it.
Finally, different fonts can be installed by copying true type font files to /usr/share/fonts/truetype/. Once you've copied them there, they should be available to select from the Font selection in Appearance Settings. As a side note, I think that Windows uses Segoe UI font, which can be downloaded somewhere - just check the legality, as it may belong to Microsoft and therefore be illegal.
There are a number of other software tools that I've used in the screencast that I'll detail in upcomming posts. As I've gone along, I've learned some lessons the hard way, but refined things as I progressed. Hopefully, this is a gives you an idea customizing your new Ubuntu. After every install, I've gone through a similar process outlined above and am currently busy building a live CD which has all the above customizations set by default, saving me the time and effort customizing Ubuntu each time. Plus, I'll be able to give a friend a "complete", themed Ubuntu with a number of very useful programs and codecs -Will come one of these days!