Some useful packages for the GNOME Desktop Environment

In the world of opensource, we have a variety of choices to accomplish any given task. For instance, to install a package on a Debian based distribution, we can either go to the terminal and say "sudo apt-get install " or use dpkg or aptitude instead. However, having come from a windows background (alas!), my lethargic way of doing things is to start the Synaptic Package Manager, and install or remove the packages I want.

The particular distro I installed (Ubuntu 11.10 - the Oneric Ocelot) turned out to be pathetically bare-bones. It didn't even have a graphical Package Management or desktop configuration tool. But unlike MS which doesn't even provide some good games to play along with the OS that it charges some good amount of money, I was astounded to see the sheer number of packages that an open-source linux distro allows us to download from its repository! My computing creativity that could only be satisfied by using and trying out softwares in all areas of use such as networking, graphics, office applications, programming, etc. was pretty much constrained by the closed-source nature of Windows. This creativity suddenly sprang to a new life and excitement with Linux. Whats more, I was like a child who had an unlimited supply of his favorite toys to occupy him for eternity!

Packages are the Linux equivalent of Windows setup/installation files. Unlike Windows "bloatware" (though it doesn't even ship with some good games to play, ironically it has tons of software that most of us are never going to use!), Linux has a minimalist approach towards package management. All packages come in the form of .deb or .rpm files and can be installed by either console commands such as "sudo apt-get install " in a Debian based distribution or by using graphical tools such as the Synaptic Package Manager. Here are some of the most useful packages commonly used by many of us:

**Note: Packages specifically built for GNOME environment could also be run on KDE desktop environment and vice versa, though with a slight performance penalty. Thats because both desktops are based on the X-Window system but use different graphics libraries, the former using gtk+ library from GNU and the latter using qt from TrollSoft.

[1] synaptic: If your debian-based distro does not include this package, then this is going to be the first package you will be installing. This is an excellent graphical package management tool that makes installing and removing packages a dream. It has several features such as upgrading and downgrading packages, automatically removing the dependencies that are no longer used, setting up of repository, sorting and searching utilities, etc. You will never have to use "sudo apt-get..." again.

Synaptic Package Manager

[2] gnome-shell: The default unity desktop does not appeal to lot of people (including myself). One of the reasons is that there isn't much control over the desktop and panels. If you are one of them, then all you have to do it is install this package. Either search and install using synaptic, or type the below command in a terminal:

sudo apt-get install gnome-shell

[3] gnome-tweak-tool:  You will most certainly going to need this once you start exploring your desktop. As the name suggests this tool allows you to literally "tweak" a lot of gnome desktop settings such as visibility of home/computer, mounted-drives, etc. on the desktop, manage gnome themes/extensions, etc.

[4] compiz-config-settings-manager: This is an excellent tool that allow you to have furthur control over your desktop and graphics. Compiz is the window manager for the x-window server (on which gnome is based). Compiz settings that you can control include how the windows are drawn, shaded and decorated.

[5] ubuntu-restricted-extras: Due to some copyright or legal restrictions in the United States, Ubuntu does not include such things as MPEG Layer 3, DVD codecs and drivers, etc. But you can download and install this as a separate package from their repositories. You may also want to install the vlc package along with this, if you don't like or don't want to use the default GNOME tools to play audio/video.

[6] gimp: The gnu image manipulation program is a high quality graphics editor comparable to adobe photoshop. The entire gtk+ framework came into existence to create this tool. If you are one of the artist types or just want to try gimp for fun, you can try out this package.

[7] extremetuxracer: One of my favorite 3d games. You guide tux the penguin through various hilly and icy scenarios.

[8]  knetwalk: Though it is part of the kdegames package developed for the kde dekstop environment, I can't stop playing it once I start. In fact I didn't even know it is was not built for GNOME until I read about it! Thats when I learned that both KDE and GNOME applications can in fact run on each other's desktop pretty well. There is some performance overhead involved of course, such as loading the other desktop libraries (qt or gtk+ as the case may be) and you must keep that in mind.

[9] build-essential: You will need this if you are into c and c++ programming. This will install the gnu compiler collection consisting of c & c++ language compilers, linker, debugger and other tools.

[10] monodevelop: If you are a developer who is from a Microsoft .NET background, having coded in C# or VB.NET (like me), then this where you want may apply your .NET skills. The entire BCL library is included, only MS proprietary namespaces such as System.Windows.Forms are the ones you are going to miss. For more info, visit the website

[11] gedit: This package is pre-installed with most distributions. It is the Linux equivalent of the win notepad, albeit with tons of more features.

gedit - Linux equivalent of Windows Notepad

[12] disk-utility: I found this nice program pre-installed with ubuntu 11.10. It is a nice GUI tool that shows disks and partition details on the system. It also allows you to format or repair drives and edit partitions.

disk-utility - A tool showing disk and partition details.

[13] sysvconfig - A text-based tool to start/stop/configure services. One of the things you will need is a tool to start/stop services (a.k.a daemons in Linux) for which you may also use the "sudo service ..." command apart from this tool. However, you may also need to disable some unneeded services from startup that your distro might have included for you, such as bluetooth, scanner, etc. This tool helps you in doing that.

[14] kdevelop - This is a light-weight IDE for writing apps in c, c++ and many other languages. It is light-weight and makes use of your existing build chain such as GNU make and compiler utilities, debuggeres, etc. More information is available on their website,

No comments: