Software
(jpeg 7k)
(jpeg 21k)
no gifs due to patent problems
Table of Contents
Please consider helping the GNU Project by writing software.
GNU software is available by several different methods:
- Order copies on CD-ROM
from the
FSF. This helps provide the funds
for GNU software development.
- FTP it
from an ftp site near you.
(But please also make a donation
to the FSF, if you can, to help us write more free software.)
- Get a copy from a friend.
(But please also make a donation
to the FSF, if you can, to help us maintain free software.)
Here is a list of some GNU programs and FSF software projects, with
some information about them.
We would like to list all GNU programs here, but that will take more
work. If you would like to write descriptions for other GNU programs,
here's what
to do!
For descriptions of GNU Software not listed here, please look at the
articles: ``GNU Software'' and ``Forthcoming GNUs'' in the current
GNU's Bulletin.
Information on the year 2000 and GNU
software is also available.
The index (28k characters)
shows which GNU package each GNU program or library is in.
You can get this and other GNU software
these ways.
Some of these links are at other web sites not maintained by the FSF.
The FSF is not responsible for the content of these other web sites.
- Autoconf produces shell scripts which automatically configure source code packages.
- Automake is a tool for generating Makefile.in files for use with Autoconf.
- GNU Backgammon plays and
analyses backgammon games and matches. It is currently a
work-in-progress.
- Bash, the Bourne Again SHell, is compatible with the Unix `sh' and offers many extensions found in `csh' and `ksh'.
- bc is an interactive algebraic language with arbitrary precision numbers.
- Binutils includes these programs: `ar', `c++filt', `demangle', `gas', `gprof', `ld', `nlmconv', `nm', `objcopy', `objdump', `ranlib', `size', `strings', and `strip'.
- Bison is an upwardly compatible replacement for the parser generator `yacc'.
- Calc is an extensible, advanced desk calculator and mathematical tool that runs as part of GNU Emacs.
- cfengine is used to maintain site-wide configuration of a heterogeneous Unix network using a simple high level language.
- Checker is a package that works with GCC to detect memory use errors in a program.
- GNU Chess is a Chess-playing program.
- C Library for use with GNU/Hurd and GNU/Linux.
- cpio copies file archives to and from disk, or to another part of the local machine.
- CVS is a version control system (like RCS or SCCS) which allows you to keep old versions of files (usually source code), keep a log of who, when, and why changes occurred, etc.
- DejaGnu is a framework to test programs with a single front end for all tests.
- Diction, and Style, check English text for common bad usage and analyze readability. (This package is still in development.)
- Diffutils includes GNU `diff', which compares files showing line-by-line changes in several flexible formats.
- DJGPP includes GCC, G++, and GNU utilities for DOS.
- dld is a dynamic linker which allows the dynamic loading of object files into a running binary.
- doschk is a utility
to ensure that source file names are distinguishable on MS-DOS, FreeDOS and
other DOS systems with 8+3 character filenames, and on System V
platforms with 14-character filenames.
- Dr. Geo is interactive
software that allows the construction of geometric figures.
- ed is the standard text editor. It is line-oriented and can be used interactively or in scripts.
- EDMA is an open and modular development environment similar to the Component Object Model or the System Object Model.
- Electric is a sophisticated electrical CAD system that can handle many forms of circuit design.
- Elib is a small library of Emacs Lisp functions, including routines for using AVL trees and doubly-linked lists.
- Emacs is an extensible, customizable real-time display editor and computing environment. It offers true Lisp--smoothly integrated into the editor--for writing extensions and provides an interface to the X Window System.
- enscript is an upwardly-compatible replacement for the Adobe `enscript' program. It formats ASCII files (outputting in Postscript) and stores generated output to a file or sends it directly to the printer.
- The Fileutils are: `chgrp', `chmod', `chown', `cp', `dd', `df', `dir', `dircolors', `du', `install', `ln', `ls', `mkdir', `mkfifo', `mknod', `mv', `rm', `rmdir', `sync', `touch', and `vdir'.
- Findutils includes `find', which is frequently used both interactively and in shell scripts to find files which match certain criteria and perform arbitrary operations on them. Also included are `locate', which scans a database for file names that match a pattern, and `xargs', which applies a command to a list of files.
- GNU Finger is a utility program designed to allow users of Unix hosts on the Internet network to get information about each other.
- The Fontutils convert between font formats, create fonts for use with Ghostscript or TeX, etc.
- GNU Fortran is a free Fortran 77 compiler.
- Gawk is upwardly compatible with the latest POSIX specification of `awk'. It also provides several useful extensions not found in other `awk' implementations.
- gcal is a program for printing calendars. It displays different styled calendar sheets, eternal holiday lists, and fixed date warning lists.
- GCC is a free compiler for C, C++ and Objective C.
- gdb is a source-level debugger for C, C++ and Fortran.
- gdbm is a replacement for the traditional 'dbm' and 'ndbm' libraries.
- The GNU gettext tool set has everything maintainers need to internationalize a package's user messages.
- gforth is a fast, portable implementation of the ANS Forth language.
- Ghostscript is an interpreter for the Postscript and PDF graphics languages.
- Ghostview provides a graphical front end to Ghostscript allowing a Postscript of PDF file to be previewed using an X Window interface.
- The GIMP, the GNU Image Manipulation Program, is like Photoshop only better.
- GIT, the GNU Interactive Tools package, includes: an extensible file system browser, an ASCII/hex file viewer, a process viewer/killer, and other related utilities and shell scripts.
- gleem,
gleem: OpenGL Extremely Easy-to-use Manipulators is a small,
self-contained C++ library of 3D Widgets that support direct user interaction
with a 3D scene.
- gmp, GNU mp, is a library for arithmetic on arbitrary precision integers, rational numbers, and floating-point numbers.
- GNAT is a complete Ada95 compilation system, maintained and distributed under the GNU General Public License by Ada Core Technologies.
- GNATS, GNats: A Tracking System, is a bug-tracking system. It is based upon the paradigm of a central site or organization which receives problem reports and negotiates their resolution by electronic mail.
- GnuGo plays the game of Go. It is not yet very sophisticated.
- Gnumeric is a spreadsheet
intended to replace commercial spreadsheets.
- GNUscape Navigator is a Web browser that runs under GNU Emacs.
- GNUstep and the GNUstep Base Library provide a graphical, object-oriented programming environment.
- gpc is the GNU Pascal compiler.
- Greg is a framework for testing
other programs and libraries.
- The grep package includes GNU `grep', `egrep', and `fgrep', which find lines that match entered patterns.
- GRG is the GNU Report Generator.
- Groff is a document formatting system based on a device-independent version of `troff'.
- Guile is the GNU extensibility library.
- Gush is the GNU User's Shell.
- gzip is GNU's program for compressing and decompressing files.
- The GNU hello program produces a familiar, friendly greeting. It allows non-programmers to use a classic computer science tool which would otherwise be unavailable to them.
- GNU hp2xx reads HP-GL files, decomposes all drawing commands into elementary vectors, and converts them into a variety of vector and raster output formats.
- Hyperbole, written by Bob Weiner in Emacs Lisp, is an open, efficient, programmable information management, autonumbered outliner, and hypertext system, intended for everyday work on any platform Emacs runs on.
- ID Utils is a package of simple, fast, high-capacity, language-independent tools that index program identifiers, literal numbers, or words of human-readable text.
- GNU indent formats C source code into GNU, BSD, K&R, or your own special indentation style.
- Inetutils is a distribution of common networking utilities and servers.
- Ispell is an interactive spell checker that suggests `near misses' to replace unrecognized words.
- JACAL is a symbolic mathematics system.
- less is a display paginator similar to `more' and `pg', but with various features (such as the ability to scroll backwards) that most pagers lack.
- libtool makes it easy to develop and maintain shared libraries.
- GNU m4 is an implementation of the traditional Unix macro processor.
- make automatically determines which pieces of a large program need to be recompiled, and issues commands to recompile them.
- maxima is a Common Lisp implementation of MIT's Macsyma system for computer based algebra.
- The Midnight Commander is a user friendly and colorful Unix file manager and shell, useful to novice and guru alike.
- Meta-HTML is a programming language specifically designed for working within the World Wide Web environment.
- mtools is a set of
public domain programs to allow Unix systems to read, write, and
manipulate files on a DOS file system (typically a diskette).
- Nana is a package for programming and testing debugging assertions.
- Ncurses is a package for displaying and updating text on text-only terminals.
- NetHack is a Rogue-like adventure game supporting character and X displays.
- OBST is a persistent object management system with bindings to C++. OBST supports incremental loading of methods.
- Octave does arithmetic for real and complex scalars and matrices, solves sets of nonlinear algebraic equations, integrates systems of ordinary differential and differential-algebraic equations, and integrates functions over finite and infinite intervals.
- Oleo is a spreadsheet program. It supports the X Window System and character-based terminals, and can output Embedded Postscript renditions of spreadsheets.
- Panorama is a framework for 3D graphics production.
- patch is our version of Larry Wall's program to take `diff''s output and apply those differences to an original file to generate the modified version.
- The Perl programming language combines the features and capabilities of C, `sed', `awk', and `sh'.
- Plotutils enables the plotting of scientific data and the drawing of vector graphics.
- PSPP is the GNU replacement for SPSS.
- ptx is the GNU version of the traditional permuted index generator.
- queue is a
load-balancing/distributed batch processing and local rsh replacement
system
- R is a system for
statistical computation and graphics. It is a dialect of the S
programming language from Bell Labs.
- RAT is a Recipe Analysis Tool
which calculates the total nutrients in a given recipe.
- RCS, the Revision Control System, is used for version control and management of software projects.
- GNU recode converts files between character sets and usages. When exact transliterations are not possible, it may delete the offending characters or fall back on approximations.
- GNU Robots
is a game/diversion where you construct a program for a
little robot, then watch him explore a world.
- rx is a replacement for the GNU regex library.
- screen is a terminal multiplexer that runs several separate `screens' (ttys) on a single character-based terminal.
- sed is a stream-oriented version of `ed'.
- Sharutils includes `shar',which makes so-called shell archives out of many files, preparing them for transmission by electronic mail services; `unshar' helps unpack these shell archives after reception.
- The Shellutils are: `basename', `chroot', `date', `dirname', `echo', `env', `expr', `factor', `false', `groups', `hostname', `id', `logname', `nice', `nohup', `pathchk', `printenv', `printf', `pwd', `seq', `sleep', `stty', `su', `tee', `test', `true', `tty', `uname', `uptime', `users', `who', `whoami', and `yes'.
- smail is a mail transport system, designed as a compatible drop-in replacement for `sendmail'. It uses a much simpler configuration format than `sendmail' and is designed to be setup with minimal effort.
- GNU SQL
is a free, portable multiuser relational database management system.
- stow manages the installation of software packages, keeping them separate while making them appear to be installed in the same place.
- GNU tar includes multi-volume support, the ability to archive sparse files, compression/decompression, remote archives, and special features that allow `tar' to be used for incremental and full backups.
- The Termutils package contains programs for controlling terminals. `tput' is a portable way for shell scripts to use special terminal capabilities. `tabs' is a program to set hardware terminal tab settings.
- texinfo is a set of utilities which generate printed manuals, plain ASCII text, and online hypertext documentation (called `Info'), and can read online Info documents.
- time reports (usually from a shell) the user, system, and real time used by a process. On some systems it also reports memory usage, page faults, etc.
- wdiff is a front-end to GNU `diff'. It compares two files, finding the words deleted or added to the first to make the second.
- wget non-interactively retrieves files from the WWW using HTTP and FTP. It is suitable for use in shell scripts.
- XaoS is a real-time fractal zoomer.
- xinfo is an X-windows program for reading Info files.
- xshogi is a graphical Shogi (Japanese Chess) board for the X Window System.
- Xlogmaster is an X11 program that does comfortable and fast monitoring of all logfiles and every device that allows its status being read by cat (like the /proc devices).
- (This list needs more work.
It needs all the GNU Programs listed.
Here's what
to do!)
Various Java programs have been contributed to the GNU Project. You will
find a list of these programs by visiting our Java page.
These are just a fraction of the software projects that the GNU Project
is working on. We hope to list more projects here in the future.
- Classpath is a
set of essential libraries for supporting the Java language.
- Free Film Project is
a complete set of utilities which, when used together, will
act as a complete virtual film studio.
- GPKCS-11 is an
implementation of PKCS#11: Cryptographic Token Interface Standard.
- GNOME is the GNU desktop,
intended to provide graphical user interfaces for all the tasks
for which they make sense. GNOME is not yet finished, but it
already has everything from spreadsheets to mail clients.
- Harmony is
aimed at creating an API-compatible replacement for the Qt toolkit.
- The HURD is the kernel of
the GNU system.
These are some free programs which we have adopted to use as part of
the GNU system.
We would like to list all adopted GNU programs here, but that will take more
work. If you would like to write descriptions for other adopted GNU programs,
here's what
to do!
For descriptions of GNU Software not listed here, please look at the
articles: ``GNU Software'' and ``Forthcoming GNUs'' in the current
GNU's Bulletin.
The index (28k characters)
shows which GNU package each GNU program or library is in.
You can get this and other GNU software
these ways.
Some of these links are at other web sites not maintained by the FSF.
The FSF is not responsible for the content of these other web sites.
-
dbedit,
a toolkit for writing database-driven web applications.
- Frontdesk,
a web-based mail system for customer support and bug tracking.
- GN, a Gopher/http server.
- HylaFAX.
- ht://Dig is a complete world wide web indexing and searching
system.
- Lynx, a text-only Web
browser that is
GPLed.
- Generic NQS.
- Roxen, an http server.
- WN, an http server.
- X window system.
- (This list needs more work.
It needs all the adopted GNU Programs listed.
Here's what
to do!)
These are some additional GPL or LGPL-covered free programs which we think it
is useful to mention.
- Mats Weber's
Ada Components for math, data structures, Ada programming
tools and OS Interface.
- Aegis
is a transaction-based software configuration management system.
- Alliance
is a complete set of CAD tools for the specification, design
and validation of digital VLSI circuits.
- AoMasq
is a software package consisting of a client and a server. The
server-software runs in a U*NIX environment, waiting for requests from
Windows 98 clients, wich want to have a internet connection served by
IP Masquerading.
- Autochar is used to automate
the characterization of digital circuits.
- Autogen is a tool for
automatically generating arbitrary text files that contain repetitive
text with varying substitutions.
- Catdoc is a
program which reads Microsoft word files and outputs ASCII text
of the contents of the file.
- COAS is a general-purpose framework
for configuration editing.
-
Compare is a program that compares two pieces of text for
similarities.
- Cook
automatically determines which pieces of a large program need to be
recompiled, and issues commands to recompile them.
- Cyber Radio 1
is a client/server application used for live Internet audio
broadcasts.
- DGPS allows
you to get GPS correction signals over IP.
- Dumb
is a free engine for running Doom worlds, not yet complete.
- The E Equational Theorem Prover is an automated theorem
prover for clausal logic, based on superposition and rewriting.
- Eli
is a compiler construction kit.
- Esh is a Unix shell with
a syntax similar to Lisp/Scheme.
-
fastDNAml is a program for estimating maximum likelihood
phylogenetic trees from nucleotide sequences.
- The Filters
project is writing conversion routines from proprietary formats
to XML-based file formats.
- fftw
is a C subroutine library for computing the Discrete Fourier
Transform (DFT) in one or more dimensions.
- Gale is an instant messaging
and presence software.
- gleem
is a small, self-contained C++ library of 3D widgets that support
direct user interaction with a 3D scene.
- Gnuplot
is a command-line driven interactive function plotting utility.
- GnuSkies is an attempt
to create a free version of the xephem program.
- gpc
is the GNU Pascal compiler;
fpc
is another GPL'd Pascal compiler.
- Jabber is developing a free
alternative to AIM and ICQ.
-
TOCHNOG is a mathematical modeling program
for heat diffusion, deformation, friction, and ground water flow.
- MAVERIK is
a system for managing display and interaction in virtual
reality applications.
- Mercury is a
modern logic/functional programming language. The Mercury
implementation includes a compiler, a debugger, a profiler,
and numerous library packages and other tools.
- Mesa
is a free implementation of OpenGL.
- Minivend
is a free full-featured web based electronic catalog/ordering
system.
- MHonArc
is a Perl program for converting e-mail messages as specified
in RFC 822 and MIME to HTML.
- Ulm's Modula-2
system provides a compiler for Modula-2.
- MRTG
is a tool to monitor the traffic load of network-links.
- omniORB is a GPLed CORBA
orb.
- The
Pizza Delivery System is a GTK+ Application for automating the
order processing of both delivery and take away orders for your
average Pizza Bar, Cafe, Bistro, etc.
- Oberon V4
is an attempt to create an Oberon V4 for systems running
GNU/Linux.
- OpenBIOS is working on
a free bios.
- PIKT is a program
for administering heterogeneous networked workstations.
- Playmidi
is a MIDI player for FM, GUS and external MIDI devices.
- PRCS
is the Project Revision Control System.
- Rosegarden
is an integrated MIDI sequencer and musical notation
editor.
- RRD
TOOL is a system to store and display time-series data (i.e.
network bandwidth, machine-room temperature, server load average).
- Rsync is a file transfer
program for Unix systems which provides a fast method for bringing
remote files into sync.
- The RTSP
Reference Kit could evolve into a useful
audio-playing program.
- Samba is a file-sharing
implementation under the GPL.
- SANE is an application
programming interface (API) that provides standardized access to any
raster image scanner hardware.
- Scilab is a scientific
software package for numerical computations. You should first
look at octave which
is part of the GNU system.
- SmallEiffel
is intended to be a complete Eiffel compiler.
- Tvset is a program for
GNU/Linux that uses the video4linux API to display TV images in X.
- UltraSonix
is a "screen reader" which supports both braille and speech
output under the X Window System.
- VNC is a remote display system
which allows you to view and interact with a remote 'desktop' using a
very low-level graphics protocol which is platform-independent.
- VRweb is a browser for 3D
worlds and scenes modeled in VRML.
-
ytalk is a multi-user talk program, compatible with the
older talk clients and daemons.
These are some software projects that are in the development stage and is
not yet GNU software.
-
Free Expression is a project aimed at developing a copylefted
suite of streaming media tools.
- Flight Gear Flight simulator
is a free flight sim development project.
- Gale is instant messaging and presence software, similar to Internet Relay Chat and Mirabilis' ICQ.
These are some additional Non-GPL-covered free programs which we think it
is useful to mention.
- ftnchek is a
static debugger for Fortran 77 programs. It is designed
to detect certain errors in a Fortran program that a compiler usually
does not.
- Ptolemy is a
system-level design framework that allows mixing models of
computation.
Return to GNU's home page.
FSF & GNU inquiries & questions to
gnu@gnu.org.
Other ways to contact the FSF.
Comments on these web pages to
webmasters@www.gnu.org.
Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.,
59 Temple Place - Suite 330, Boston, MA 02111, USA
Verbatim copying and distribution of this entire article is
permitted in any medium, provided this notice is preserved.
Updated:
01 Mar 1999 rao