Installing/Uninstalling Applications “The Clean Way"
In almost all Linux systems, there is a concept called the “package manager" which makes software installation and uninstallation much easier than in Windows. When you instruct the package manager to install a particular program, it looks at its database, checks the files which the software requires to run (called dependencies), determines if these dependencies are already installed, then goes to the Internet (to its repository), downloads the files it needs and then finally installs them. Uninstallation is the reverse of this process: it checks the file that you want it to uninstall, then checks the dependencies and if the dependencies are used by any other installed program and if not, it deletes the relevant files from your system.
You will also find many programs on the Internet that are offered as source code and have to be installed manually, most of the time by using the configure && make && make install routine.
When you are installing and uninstalling applications, consult your package manager first. If your distribution has it in its repository, go with the installation. If not, go to the program’s home page and see if it can be installed for your distribution by adding/enabling an additional repository. For example, openSuSE is not shipped with the codecs to run restricted format media such as wmv files. To install them, you have to add the Packman repository and then go with selecting the relevant package and installing it. In Ubuntu, there are the Multiverse and Universe repositories to be enabled to install the codecs.
Think twice before adding and using additional repositories. During the last weekend, my Ubuntu update failed because I have installed OpenOffice.org 3.0 from enabling another repository and it conflicted with the Ubuntu update of OOo. I could solve the problem by uninstalling OOo 3.0, disabling its repository, and going only with the Ubuntu update.
Compiling and installing from source should be your last bullet if you can not do anything else, to say, if you can not find the program in your distribution’s repository and/or by adding another repository or by downloading the package in the format that your distribution supports, such as rpm, deb etc..