The two of the most common methods of installing software are .rpm and .tar.gz (or .tgz, .bz2, .gz)of the two RPMs are the most popular. RPMs are precompiled, installation-ready packages. You might prefer those, if you are new to Linux as compiling from source is not always easy. RPMS in KDE are handled by kpackage. Open it and move around a bit. kpackage is opened by default when you double click a RPM in the file manager. To download them in Netscape, hold the <shift>button and left-click the link (works for every other file, too). There is one obstacle, though: if you aren't root, you can't use kpackage to install or uninstall rpms. ( Although new versions seem to prompt you for the root password ) There are two ways to handle this, both involve opening a virtual terminal (click on the icon that looks like a monitor or hit <Ctrl>-t in the filemanager), this is something like the DOS-window known from some lesser OS's. Type 'su' to become root. Now you may fire up kpackage (type 'kpackage' at the prompt) or second install the rpms by hand.
Some options for installing by hand are: rpm -i [Package_name] : installs the program, rpm -U [Package_name] : upgrades an installed package with a new version, rpm -e [Package_name] : uninstalls, Adding the -vv option (e.g. rpm -ivv) turns on verbose mode (useful if encountering errors). RPM keeps a database about all installed programs, so you won't be able to accidentally erase important programs or files, which other programs rely on. Though be aware that you are doing your installs as root so rpms from obscure sites may be badly configured or even contain malicious content. A very common issue with rpm is failed dependencies, rpm checks if the package you are about to install has all the other packages installed that are required to run the program properly. Alas it only does these checks against its own database. So if you compiled and installed a prerequisite, rpm won't find that and will refuse to install. In this case you may either: Install the prerequisite again via a rpm-package or tell rpm to ignore dependencies (option --nodeps and the ultimate --force). Be careful with these options, though as you can easily break your OS...
one way to check rpms without kpackage or RPM is using the 'midnight commander' ('mc'), which runs on console or in a virtual terminal (e.g. kvt). mc allows you to browse a rpm just like a directory and have a look at all installation scripts (besides: it also makes a formidable file manager).
Install or upgrade? It is important to discriminate between these two. An example: You want to upgrade a library (that's a collection of program routines) because you want to install a program that needs that new version. But some of your programs depend on the old version. If you now upgrade with rpm -U these programs perhaps won't work anymore. You may now get all these programs in rpms that are compiled against the new version of this library. Or you just use the -i switch. Most libraries can coexist in different versions on one system.
Common resources are: ftp://ftp.redhat.com/ and (preferably) its worldwide mirrors. Mandrake-Linux is compatible to RedHat-Linux. Apart from the KDE-base rpm and system initialization stuff you may use original RedHat packages. For Mandrake specific updates check Mandrake's FTP server and its mirrors via Mandrake's main site at http://www.linux-mandrake.com
http://rpmfind.net/ The RPM repository at RpmFind contains some 10.000 rpm-packages. They offer a tool 'rpmfind' which eases the process of finding and downloading specific rpms.
Recommended reading: man rpm, rpm --help | more, RPM HOWTO, Software Building HOWTO
So-called 'tarballs' are packages with the ending tar.gz, .tgz, .bz2 or .gz. These mostly contain programs in
source-code that you have to compile yourself. They contain files like README, INSTALL etc. Read them and follow the instructions.
If you don't want to do that, check the rpm-repository at http://rpmfind.net/
first, if they have an rpm of that program you won't need to do it yourself. It may be a good idea to keep large downloaded packages
somewhere in case you need them again (I use cdrs as they are so cheap).
Why someone wants to compile from source anyway if it can be such a tedious task?, you may ask. Some reasons
are: you may customize program features and install paths self compiled programs usually are even more stable and faster than precompiled
ones because they are more suited to your system settings, upgrading is easier: you just simply apply a patch and recompile. With rpms you
have to download the whole program again. Source code is more up-to-date. Programs are written in source code. To make a rpm of them, you
first have to compile them, write the installation scripts and (hopefully) test them. So if this program has a flaw or is missing a feature
you want badly you can do nothing but issue a bug-report or a feature request and hope for the next version. If you have the source chances
are the author will write a fix/patch, which you can apply soon.
The following is a quick walkthrough to compile a program
Compiling software from source:
We will be using the Ed editor as an example the latest download can be found at http://freshmeat.net/projects/ed/?topic_id=63
Download the source files to your hard drive.
Debian users can check out Havoc Pennington's Debian
tutorial 's chapter 16 on dpkg and apt
Debian users should also check out the Debian User's guide located at
Slackware users can take a look at the Linux newbies guide to Slackware packages