Introduction
A question many Linux newbies ask is how can they install software. Nearly all Windows programs come with a nice installation program that unpacks everything on their hard drive, and then they're good to go. Well, on Linux it's not quite so easy, but it's not exactly hard.
Downloading software from a website
First of all, you'll need to find a package you wish to install. There's everything, from games to media players to development software. Once you find something, look in the downloads section. There will likely be a number of packages listed, such as RPM. Debian/.deb, etc. What this means is that there's multiple binaries (compiled software) for different Linux distributions. Basically, you need to pick the correct one which matches your distribution.
Unfortunately, there are many (too many!) Linux distributions. I can only cover Red Hat/Fedora Linux, Debian, and its derivatives (e.g. Ubuntu, Yellow Dog, etc.). So, if you're using Red Hat or Fedora Linux, you're going to want to download a .rpm file. Debian users should download a .deb file.
You might notice that the file you download is quite small. It usually takes only a few seconds to download on a broadband internet connection. So you might ask, "How can that file possibly hold that program?" Well, it can't. It only contains packaging information which your distribution uses to download the actual program binary. So let's get our hands dirty with the command line and install this program!
Find some sort of terminal application (such as Konsole) and open it. You'll see a prompt sitting there, waiting for you to type in a command. First of all, let's navigate to the desktop:
cd ~/Desktop
Your prompt will change to reflect the working directory. Now that you're in the desktop, we can enter the installation command.
For Red Hat
You're going to use the RedHat Package Manager (RPM) for this. Simply enter the following:
su
[enter your root password here; it'll be invisible]
rpm -Uvh my_program.rpm
Replacing my_program.rpm
with the name of the rpm file you downloaded. Press enter, and expect to wait while RPM downloads the necessary data and installs the program.
For Debian and derivatives:
sudo dpkg -i my_program.deb
(enter your regular password)
(If for some reason sudo didn't work)
su
[enter root password]
dpkg -i my_program.deb
Installing from a package manager
Another way of installing programs in Linux is to use the built-in package manager. A huge number of Linux distributions come with the program Synaptic Package Manager, which is an intuitive, easy-to-use program which is pretty self-explanatory. You choose a package you wish to install, mark it for installation, and then repeat for any other packages. Click "Apply" to add these changes.
For those of you Red Hat users, you can use the "Package Management" utility to install packages, which is basically a GUI front-end of the command line RPM tool. It allows you to select various apps you wish to install, and then you can choose "Update" to get and install the packages.
Removing packages
Undoubtedly, you'll want to remove some of those packages you've installed. You can use your GUI package manager to uninstall packages, or you can use the command line. I'll explain the command line method, since this is more fun!
Red Hat
If you know the exact name of the package, you can remove it like this:
rpm -e my_program
If you wish to know the installation status about a specific package, use the following:
rpm -q my_program
Debian
Using apt-get to uninstall packages is really easy. All you need to do is something like this to remove a package:
apt-get remove my_program
Conclusion
Installing packages on Linux is a very broad subject that is very difficult to cover completely. I have provided a simple overview to give you a better understanding, and you should definitely read up on some more links if you're serious about installing software on Linux. Consider visiting these links:
You will almost certainly encounter software that doesn't provide binaries for your specific distribution. Instead, they offer source code in a tar.gz or tar.bz2 file. Source code needs to be compiled, is a whole topic of its own, and is best left for another tutorial.