Packages often come in three varieties. These are:
Official source distributions (tarballs): Often .tar.gz or .tar.bz2. These are gzipped/bzipped (respectively) Tape ARchives (holdover from the good ol' days when we stored everything on 9-track tape). If you are using gnome or KDE, you should have no problem with double-clicking the icon for the distro and having it come up in its own window. In any case, the distro contains the source tree (that is, all the raw code, man pages, docs, etc) for the entire package. The neat thing about this is if you know how to code in the native language of the tree (usually C), you can get deep into the code and make it do things specific to your machine and/or change the general functionality. Unless you're really into programming, however, I wouldn't recommend doing this as you could seriously break something.
CVS distributions: This is a great way to get the bleeding-edge, bug-ridden, up-to-the-minute changes of open source software. Not for the neophyte, these will often not contain all the dependancies which are included in the official tarball, and require knowledge of CVS (a networked version control system). This is what open source developers use in order to assist in creating a project. Should you decide to use this method, remember that you are receiving source code
, and as such will need to compile it.
Binary distributions (packages): .deb, .tgz, .rpm, etc. These distributions contain precompiled binaries of a package for use with specific linux distributions or binary package managers. If you are familiar with windows, these are similar to the self-installing .zip or .exe archives downloadable for that OS, with the notable exception that the installation program must be resident on the computer and is not included with the package.
If you have no prior experience using a compiled language (C, Pascal, etc), do not
use the CVS method, as this is a somewhat arcane realm best left to those initiated into the rites of the computer programmer and/or programming hacker. Acquiring a binary distro is usually a safe bet, however I normally get source distros, as I run slackware and don't want to deal with rpm or rpm2tgz if I can avoid it.
Unpacking and compiling the source tarball
I assume in this section that you are familiar with your CLI (command line interface, or shell).
First: cd to the directory in which the tarball resides (if I download from Netscape in gnome, it will be in ~/Desktop).
Next: unpack the tarball. If it is .tgz or .tar.gz, use the following:
tar -zxvf <sourcefilename>
You should now have a new directory. cd to that directory.
Next: read the README and INSTALL files. These show program-specific methods in which the source is to be installed. IN MOST CASES, you will use the following sequence of commands:
These do the following. ./configure scans your system to insure that you have everything needed by the source program, and that certain system specific information is set. Make then compiles the code into its final binary form. Make install then does exactly what any other installer program does, and throws the binary files produced and any included documentation and required support files into their requisite locations on the computer. PLEASE NOTE: make install will only work if you are logged in as the superuser (root), as most user accounts will not have write permissions to the requisite directories.
There is one other important item to remember: You can also
from the source directory, which will reverse the installation process.
Although this will work for most distributions, always
read the README, INSTALL, and any other documentation that may come with the source package in order to make sure you're doing everything right. Some packages are quite difficult to compile, and some are as simple as the three aforementioned steps. A notable exception to the above is compiling a linux kernel: the configuration and installation of one of those from source is quite a job.
If all this confuses you, however, feel free to stick with binary distributions. I would strongly encourage you, however, since you are running linux, to learn at least how to compile your own distributions. Linux is, after all, a free variant of UNIX, which in turn is a shortening of UNICS, or the UNIversal Control System, which was designed from the outset as a programming platform and happened to become a good multiuser OS as a byproduct.