Linux Software
All Linux software is currently available from online repositories. You can download applications for desktops, Internet servers, office suites, and programming packages, among others. Software packages may be distributed through online repositories. Downloads and updates are handled automatically by your desktop software manager and updater. In addition, you can download from third-party sources software that is in the form of compressed archives or software packages like RPM and DEB. RPM packages are those archived using the Red Hat Package Manager, which is used on several distributions.

Compressed archives have an extension such as .tar.gz or .tar.Z, whereas RPM packages have an .rpm extension and DEB uses a .deb extension. Any RPM package that you download directly, from whatever site, can be installed easily with the click of a button using a distribution software manager on a desktop. You can also download the source
version and compile it directly on your system. This has become a simple process, almost as simple as installing the compiled RPM versions.
Linux distributions also have a large number of mirror sites from which you can download their software packages for current releases. If you have trouble connecting to a main FTP site, try one of its mirrors.
Software Repositories
For many distributions, you can update to the latest software from the online repositories using a software updater. Linux distributions provide a comprehensive selection of software ranging from office and multimedia applications to Internet servers and administration services. Many popular applications are not included, though they may be provided on associated software sites. During installation, your software installer is configured to access your distribution repository.
Because of licensing restrictions, multimedia support for popular formats like MP3, DVD, and DivX is not included with distributions. A distribution-associated site, however, may provide support for these functions, and from there you can download support for MP3, DVD, and DivX software. You can download a free licensed MP3 gstreamer plug-in from fluendo.com, for example. Many distributions do not provide support for the official Nvidia- or ATI-released Linux graphics drivers, but support for these can be found at associated distribution sites. Linux distributions do include the generic X.org Nvidia and ATI drivers, which will enable your graphics cards to work.
Third-Party Linux Software Repositories
Though almost all applications should be included in the distribution software repository, you could download and install software from third-party repositories. Always check first to see if the software you want is already in the distribution repository. If it is not available, then download from a third-party repository.
Several third-party repositories make it easy to locate an application and find information about it. Of particular note are sourceforge.net, rpmfind.net, gnomefiles.org, and kde-apps .org. The following tables list different sites for Linux software. Some third-party repositories and archives for Linux software are listed in Table below, along with several specialized sites, such as those for commercial and game software. When downloading software packages, always check to see if versions are packaged for your particular distribution.
Linux Office and Database Software
Many professional-level databases and office suites are now available for Linux. These include Oracle and IBM databases, as well as the OpenOffice and KOffice suites. Table 1-3 lists sites for office suites and databases. Most of the office suites, as well as MySQL and PostgreSQL, are already included on the distribution repositories and may be part of your install disk. Many of the other sites provide free personal versions of their software for Linux, and others are entirely free. You can download from them directly and install the software on your Linux system.
- Database Software
- oracle.com - Oracle
- sybase.com - Sybase
- software.ibm.com/data/db2/linux - IBM DB2
- mysql.com - MySQL
- ispras.ru/~kml/gss - GNU SQL
- postgresql.org - PostgreSQL
- Office Software
- openoffice.org - OpenOffice
- koffice.kde.org - KOffice
- sun.com/software/star/staroffice - StarOffice
- gnomefiles.org - GNOME Office and productivity applications
Internet Servers
One of the most important features of Linux, as of all Unix systems, is its set of Internet clients and servers. The Internet was designed and developed on Unix systems, and Internet clients and servers, such as those for FTP and the Web, were first implemented on BSD versions of Unix. DARPANET, the precursor to the Internet, was set up to link Unix systems at different universities across the nation. Linux contains a full set of Internet clients and servers, including mail, news, FTP, and web, as well as proxy clients and servers. Sites for network server and security software available for Linux are listed in Table below. All of these are already included on most distribution repositories and may be part of your install disk; however, you can obtain news and documentation directly from the server’s websites.
- apache.org - Apache web server
- vsftpd.beasts.org - Very secure FTP server
- proftpd.org - ProFTPD FTP server
- isc.org - Internet Software Consortium: BIND, INN, and DHCPD
- sendmail.org - Sendmail mail server
- postfix.org - Postfix mail server
- squid-cache.org - Squid proxy server
- samba.org - Samba SMB (Windows network) server
- netfilter.org - IP Tables firewall
- web.mit.edu/kerberos/www - Kerberos network authentication protocol
- openssh.com - Open Secure Shell (free version of SSH)
- gnu.org - Linux compilers and tools (gcc)
- java.sun.com - Sun Java website
- perl.com - Perl website with Perl software for Linux
- developer.gnome.org - Website for GNOME developers
- developer.kde.org - KDE library for developers
Development Resources
Linux has always provided strong support for programming languages and tools. All distributions include the GNU C and C++ (gcc) compiler with supporting tools such as make. Linux distributions usually come with full development support for the KDE and GNOME desktops, letting you create your own GNOME and KDE applications. You can also download the Linux version of the Java Software Development Kit for creating Java programs. A version of Perl for Linux is also included with most distributions. You can download current versions from their websites. Table 1-5 lists different sites of interest for Linux programming.
