Getting free software for Windows is always a risky proposition. You generally have to think twice before you try out an application. In most cases, the installers or the application itself are riddled with spyware or adware. Though there are exceptions, like in cases of Internet browsers or media players, you have to be sure that the application you’re trying isn’t trying to sneak anything harmful into your system under the name of free software.
In Linux though, almost all software is implicitly free. Again, there are exceptions in cases of applications with professional versions like Zimbra, Xen, and interoperability applications like Cedega or CrossOver, but the majority of the software is free and open-source. Being open-source, you can be pretty sure that there is no malicious intent on the part of the author. If anything even remotely malicious is found, it is generally fixed or the software forked. With that in mind, we will take a look at a few central places where almost all Linux software is posted to be checked out.
Package Managers And Repositories
The first stop for Linux applications always has to be your distribution’s package manager. Almost every distribution today includes a package manager. This tool allows for the installation/uninstallation/clean-up of applications in your Linux install. These package managers (yum, synaptic, portage, etc) are incredibly versatile applications which check for dependencies, reverse dependencies, version mismatches, best installation environments and many other things to install the application in the best way possible.
These package managers work with repositories (servers where applications and metadata are stored) and install applications. All the distros which include a package manager host their own repositories of applications which are modified and tested to work best on their own distribution. Ubuntu has its own software repositories, Fedora Core has them too, and so do most other distributions being used today. These repositories, or shortened to repos, contain a wealth of applications for every purpose. Since your package manager is very closely integrated into your distribution, the best way to install applications in Linux is through the package manager. Please refer to your distribution’s documentation for how to use your package manager.
SourceForge, BerliOS Tucows and Softpedia
If an application is very new, or if your distribution’s packagers decide that certain applications are not to be included on the repositories, you can still find and download these applications fromwebsites like SourceForge. These downloads come in the form of gzipped or bzipped tar files which contain the source-code. You generally have to extract the source code to a folder, compile the code and install the application. Going into detail is out of the scope of this article, but the most common instructions for installing applications from source code are:
$ make install
This will check your Linux environment, compile the application, and install it.
SourceForge contains almost every type of application imaginable, from open-source accounting applications to videogame emulators and everything in between. You can either browse for software by category, or by its name if you’re familiar with it. Once you find the application, it’s as simple as download the project’s files, extracting them to a folder and typing the above commands to compile and install it. Be warned though, this way of installation doesn’t check for dependencies, so if that application depends on certain libraries or software that’s missing on your system, you will have problems. Checking the bundled README or INSTALL files in the downloaded archives will point you in the right direction.
Other noteworthy mentions are BerliOS, Tucows and Softpedia. These websites, while not as large as SourceForge, do their part in distributing Linux applications. Just like on SourceForge, the downloads will come in the form of zipped tarballs which have to be extracted, compiled and installed.
Google And Personal Websites
Certain applications might not be hosted by any website for the developers’ own reasons. A couple of reasons could be that the application violates certain laws which would not be accepted on other websites or in other countries, or if the developer would like to keep the software on his/her own website. Whatever the reason may be, you can still find these applications using Google. Since these personal websites are not bound by any specific rules, the downloads could come in many different formats. You could have an author distributing compiled applications if he’s not interested in releasing his application’s source code, or they might be distributed as scripts which have to be run on the target system so that it can download the files directly.
With other distribution avenues like Bittorrent opening up, you could see trackers come up which host Linux applications. Certain popular trackers like LinuxTracker already host Linux software. As with anything, searching on Google should help you out. Once you have the downloaded files, extract them, and check the included files for a README file which should instruct you regarding the installation procedure.
Managing, finding, and installing applications on Linux has always had its fair share of problems like dependency hell. But considering the huge variety of applications available for Linux, you’d be hard pressed to not find something for your purposes. With a bit of common sense and curiosity, you can make any application run on your distribution. Whatever your need, you can be sure that someone has already created an application which fulfills your needs and all you have to do is look around and find it. So good luck and enjoy Linux!