GNU Package Blurbs
This file gives short blurbs for all official GNU packages with links to
their home pages. More documentation of
GNU 3DLDF supports 3D drawing with output to the MetaPost format via
a language similar to Metafont. It is primarily intended to provide a
means of creating 3D content for TeX documents, but it can also create
animations containing text typeset by TeX.
GNU a2ps converts almost anything to a PostScript file, ready for
printing. It accomplishes this by being able to delegate files to
external handlers, such as Groff and Gzip. It handles as many steps as
is necessary to produce a pretty-printed file. It also includes some
extra abilities for special cases, such as pretty-printing --help
GNU acct provides a means for system administrators to determine system
usage patterns. It provides information on, for example, connections,
programs executed, and system resources used.
GNU ACM is a flight simulator in which players can compete in aerial
combat from different computers, piloting well-equipped jet aircraft
similar to an F-16C Falcon or a MiG-29 Fulcrum.
GNU adns is a C library that provides easy-to-use DNS resolution
functionality. The library is asynchronous, allowing several concurrent
calls. The package also includes several command-line utilities for
use in scripts.
GNU Alive sends periodic pings to a server, generally to keep a connection
Anubis is a daemon that sits between the Mail User Agent (MUA) and the
Mail Transfer Agent (MTA). When a mail is sent by a user in the MUA,
it is first passed to Anubis, which performs additional processing to
the message before passing it on for delivery by the MTA. Anubis may,
for example, modify the message headers or body, or encrypt or sign
GNU APL is a free interpreter for the programming language APL. It is
an implementation of the ISO standard 13751.
Archimedes is a free package for semiconductor device simulations. It is
intended to assist engineers in designing and simulating submicron and
mesoscopic semiconductor devices based on the Ensemble Monte Carlo method.
It is able to handle a wide variety of materials and structures, which
are described through simple scripts.
Aris is a program for performing logical proofs. It supports
propositional and predicate logic, as well as Boolean algebra and
arithmetical logic. In addition to its predefined inference and
equivalence rules, Aris also supports references to older proofs. Its
use of standard logical symbols and its natural deduction interface make
it easy to use for beginners.
Aspell is a spell-checker which can be used either as a library or
as a standalone program. Notable features of Aspell include its full
support of documents written in the UTF-8 encoding and its ability to
use multiple dictionaries, including personal ones.
AUCTeX is an integrated environment for producing TeX documents in
Emacs. It allows many different standard TeX macros to be inserted
with simple keystrokes or menu selection. It offers an interface to
external programs, enabling you to compile or view your documents from
within Emacs. AUCTeX also features the ability to place inline previews
of complex TeX statements such as mathematical formulae.
Autoconf offers the developer a robust set of M4 macros which expand
into shell code to test the features of Unix-like systems and to adapt
automatically their software package to these systems. The resulting
shell scripts are self-contained and portable, freeing the user from
needing to know anything about Autoconf or M4.
Autoconf Archive is a collection of over 450 new macros for Autoconf,
greatly expanding the domain of its functionality. These macros have
been contributed as free software by the community.
AutoGen is a program to ease the maintenance of programs that contain
large amounts of repetitive text. It automates the construction of these
sections of the code, simplifying the task of keeping the text in sync.
It also includes an add-on package called AutoOpts, which is specialized
for the maintenance and documentation of program options.
Automake the part of the GNU build system for producing
standards-compliant Makefiles. Build requirements are entered in an
intuitive format and then Automake works with Autoconf to produce a
robust Makefile, simplifying the entire process for the developer.
libavl provides a large collection of binary search tree and balanced
tree routines for C. These trees offer at least O(log n) performance
for usually costly operations such as searching, inserting or deleting
items from a data structure.
Ball and Paddle is a classic arcade game in which you use a paddle at
the bottom of the screen to bounce a ball against bricks in the upper
region, eliminating the bricks as they are hit. As a novel twist,
events and attributes of all the objects (bricks, ball, etc.) may be
scripted with GNU Guile.
GNU Barcode is a flexible tool to produce printed barcodes from
text strings. It supports a variety of encoding standards and sizing
measurements. Barcodes can be output in PostScript or Encapsulated
Bash is the shell, or command-line interpreter, of the GNU system.
It is compatible with the Bourne Shell, but it also integrates useful
features from the Korn Shell and the C Shell and new improvements of
its own. It allows command-line editing, unlimited command history,
shell functions and aliases, and job control while still allowing most
sh scripts to be run without modification.
Bayonne is the telephony server of the GNU Telephony project. It offers
a scalable environment for the development and deployment of telephony
solutions, with a focus on SIP.
GNU Bazaar is a version control system that allows you to record changes
to project files over time. It supports both a distributed workflow as
well as the classic centralized workflow.
bc is an arbitrary precision numeric processing language. It includes
an interactive environment for evaluating mathematical statements.
Its syntax is similar to that of C, so basic usage is familiar. It also
includes dc, a reverse-polish calculator.
GNU Binutils is a collection of tools for working with binary
files. Perhaps the most notable are ld, a linker, and
as, an assembler. Other tools include programs to display binary
profiling information, list the strings in a binary file, and utilities
for working with archives. The bfd library for working with
executable and object formats is also included.
GNU Bison is a general-purpose parser generator. It can build a
deterministic or generalized LR parser from an annotated, context-free
grammar. It is versatile enough to have many applications, from parsers
for simple tools through complex programming languages.
GNU Bool is a utility to perform text searches on files using Boolean
expressions. For example, a search for hello AND world would
return a file containing the phrase Hello, world!. It supports
both AND and OR statements, as well as the NEAR statement to search for
the occurrence of words in close proximity to each other. It handles
context gracefully, accounting for new lines and paragraph changes.
It also has robust support for parsing HTML files.
GNU BPEL2oWFN translates a web service expressed in Web Service Business
Process Execution Language (WS-BPEL) into an open Workflow Net (oWFN).
It may additionally convert a BPEL4Chor choreography to a Petri Net model.
Properties of Petri Nets may be analyzed efficiently, due to the use
of static analysis to make the models compact. Control and data flow
analysis, as well as basic checks for deadlocks and other such properties
GNU C-Graph is a tool for demonstrating the theory of convolution. Thus,
it can serve as an excellent aid to students of signal and systems theory
in visualizing the convolution process. Rather than forcing the student
to write code, the program offers an intuitive interface with interactive
dialogs to guide them.
GNU ccAudio2 is a portable C++ class for working with audio data from
disk. The classes are both endian and content aware; rather than treating
audio as binary data, this library treats it as an sequence of samples.
It can also handle metadata information. ccAudio2 supports sun audio,
raw samples, and RIFF encoded audio data.
GNU ccd2cue is a preprocessor for CD burning software that allows the
conversion of the proprietary CCD format to the CUE format, which is
well-supported by free software. These files are commonly distributed
with CD images and are used to describe how tracks are laid out on
GNU Ccide is a decision table code generator for the C language.
This helps to avoid unmanageable and error-prone chains of nested if-else
statements. Instead, decision tables are entered in an intuitive and
easy-to-read format, which is then expanded into portable C code.
GNU ccRTP is an implementation of RTP, the real-time transport protocol
from the IETF. It is suitable both for high capacity servers and
personal client applications. It is flexible in its design, allowing
it to function as a framework for the framework, rather than just being
a packet-manipulation library.
GNU ccScript3 is a library to add a virtual machine execution system
for use with/as a scripting or assembler language for real-time,
state-transition driven systems.
GNU cflow analyzes C source files and produces a graph charting the
control flow of the program. It can output the graph in several styles
and in either the POSIX format or in an extended GNU format. cflow
also includes a major mode for Emacs for examining the flowcharts that
GNU cgicc is an ANSI-compliant C++ library for writing CGI applications,
featuring support for FastCGI. The library supports several features,
including handling both GET and POST data, handling a variety of form
data types, and on-the-fly HTML generation.
GNU Chess is a chess engine. It allows you to compete against the
computer in a game of chess, either through the default terminal interface
or via an external visual interface such as GNU XBoard.
Cim is the GNU compiler for Simula, the first object-oriented programming
GNU Classpath provides essential libraries for Java virtual machines
and compilers. It is compatible with a large percentage of the language
API specifications and provides a wide array of functionality.
GNU CLISP is an implementation of ANSI Common Lisp. Common Lisp
is a high-level, object-oriented functional programming language.
CLISP includes an interpreter, a compiler, a debugger, and much more.
GNU combine works to merge files based on a common key in a hash table. It
can be seen as similar to, albeit much more powerful than, the standard
join utility. Unlike join, any number of files may
be merged based on the matches found. combine also has other advanced
features, such as date parsing and directory traversal.
GNU Common C++ is an portable, optimized class framework for threaded
applications, supporting concurrent synchronization, inter-process
communications via sockets, and various methods for data handling, such
as serialization and XML parsing. It includes the uCommon C++ library,
a smaller reimplementation.
GNU complexity provides tools for finding procedures that are convoluted,
overly long or otherwise difficult to understand. This may help in
learning or reviewing unfamiliar code or perhaps highlighting your own
code that seemed comprehensible when you wrote it.
The config.guess script tries to guess a canonical system triple,
and config.sub validates and canonicalizes. These are used as
part of configuration in nearly all GNU packages (and many others).
GNU Coreutils includes all of the basic command-line tools that are
expected in a POSIX system. These provide the basic file, shell and
text manipulation functions of the GNU system. Most of these tools
offer extended functionality beyond that which is outlined in the POSIX
GNU cpio copies files into or out of cpio or tar archives. Indeed,
many formats are supported, including legacy formats. The format is
determined automatically by the program and is handled appropriately.
Furthermore, the location of the archive is not important. It can be
another file on the drive, a tape, or data on a pipe.
GNU Cppi processes C source code files to properly indent the
preprocessor directives to reflect their nesting. It also performs
other standardizations, such as correcting the number of spaces between
directives and the text following them.
GNU CSSC provides a replacement for the legacy Unix source code control
system SCCS. This allows old code still under that system to be accessed
and migrated on modern systems.
GNU cursynth is a polyphonic synthesizer that runs graphically in the
terminal. It is built on a full-featured subtractive synthesis engine.
Notes and parameter changes may be entered via MIDI or the computer's
GNU Dap is a statistics and graphics package. It can read programs
written for the proprietary statistics system SAS. Its syntax is similar
to, but simpler than C, making performing most tasks relatively easy
while still providing advanced graphical capabilities.
Perform basic numeric, textual and statistical operations on plain text
files. Designed to work within standard pipelines without additional
GNU DDD, the Data Display Debugger, is a graphical front-end for
command-line debuggers. Many back-end debuggers are supported, notably
the GNU debugger, GDB. In addition to usual debugging features such
as viewing the source files, DDD has additional graphical, interactive
features to aid in debugging.
GNU ddrescue is a fully automated data recovery tool. It copies data
from one file to another, working to rescue data in case of read errors.
The program also includes a tool for manipulating its log files, which
are used to recover data more efficiently by only reading the necessary
DejaGnu is a framework for testing software. In effect, it serves as a
front-end for all tests written for a program. Thus, each program can
have multiple test suites, which are then all managed by a single harness.
GNU Denemo is a music notation editor that provides a convenient interface
to the powerful music engraving program Lilypond. Music can be typed in
using the computer keyboard, played in using a MIDI keyboard, or even
input via a microphone connected to the sound card. The final product
is publication-quality music notation that is continuously generated in
the background while you work.
GNU Dico implements a flexible dictionary server and client according
to RFC 2229 (DICT Server). It is able to access any database available,
regardless of format, thanks to its modular structure. New modules may be
written in C, Guile or Python. Dico also includes a command-line client,
which may be used to query remote dictionary databases.
A package providing two classic Unix commands, style and diction. Diction
is used to identify wordy and commonly misused phrases in a body of text.
Style instead analyzes surface aspects of a written work, such as sentence
length and other readability measures.
GNU Diffutils is a package containing tools for finding the differences
between files. The diff command is used to show how two
files differ, while cmp shows the offsets and line numbers
where they differ. diff3 allows you to compare three files.
Finally, sdiff offers an interactive means to merge two files.
GNU Dionysus is a convenient system for quickly retrieving the values
of mathematical constants used in science and engineering. Values can
be searched using a simple command-line tool, choosing from three
databases: universal constants, atomic numbers, and constants related
A daemon that monitors directories for events, such as creating, deleting
or modifying files. It can monitor different sets of directories for
different events. When an event is detected, direvent calls a specified
external program with information about the event, such as the location
within the file system where it occurred. Thus, direvent
provides an easy way to react immediately if given files undergo changes,
for example, to track changes in important system configuration files.
GNU DMD is a daemon-managing daemon, meaning that it manages the execution
of system services, replacing similar functionality found in typical
init systems. It provides dependency-handling through a convenient
interface and is based on GNU Guile.
GNU Dominion is a multi-player world simulation game. In it, each player
rules a nation and must maintain their nation in the face of competition
from the other players. Players must make political, economical,
military and diplomatic decisions in order for their nations to survive.
This game is intended to be played by players all with access to the
same computer system.
other object-oriented languages.
Ed is a line-oriented text editor: rather than offering an overview of
a document, ed performs editing one line at a time. It can be executed
both interactively and via shell scripts. Its method of command input
allows complex tasks to be performed in an automated way. GNU ed offers
several extensions over the standard utility.
GNU EDMA is a development environment that combines ideas from both
object-oriented programming and component-based systems. It is used to
build modular, evolving applications as well as reusable components.
EDMA provides a convenient means to build object-oriented programs in
C without requiring C++. Also, it has a unique component system, unlike
other free software component-based systems which imitate the design of
proprietary counterparts. It includes a graphical wizard, gidfwizard,
a tool for building GNU EDMA Interface definition files and to create
skeleton files necessary to build EDMA classes, and a graphical class
GNU Electric is a CAD program for designing electrical circuits,
handling custom IC layout, schematic drawing and hardware description
language specifications. Several CAD operations are supported, such as
rule checking and simulation. Many different types of designs can be
produced and input or output in a wide variety of formats.
GNU Emacs is an extensible and highly customizable text editor. It is
based on an Emacs Lisp interpreter with extensions for text editing.
Emacs has been extended in essentially all areas of computing, giving
rise to a vast array of packages supporting, e.g., email, IRC and
XMPP messaging, spreadsheets, remote server editing, and much more.
Emacs includes extensive documentation on all aspects of the system,
from basic editing to writing large Lisp programs. It has full Unicode
support for nearly all human languages.
Muse is an authoring and publishing environment for GNU Emacs. It
supports entering text in a convenient and easy-to-learn format. Later,
your documents may be published in a variety of different formats, such
as HTML, LaTeX or PDF. Muse supports projects consisting of several
documents, which are properly merged according to the output format.
EMMS is the Emacs Multimedia System. It is a small front-end which can
control one of the supported external players. Thus, it supports whatever
formats are supported by your music player. It also supports tagging
and playlist management, all behind a clean and light user interface.
GNU Enscript is a program to convert ASCII text files to PostScript, HTML
or RTF formats, to be stored in files or sent immediately to a printer.
It also includes the capability to perform syntax highlighting for
several different programming languages.
GNU fdisk provides a GNU version of the common disk partitioning tool
fdisk. fdisk is used for the creation and manipulation of disk partition
tables, and it understands a variety of different formats.
GNU Ferret is a graphical data modeler for the Entity/Relationship
paradigm. It can automatically create relational schemas from the
data models and it can be used to generate SQL statements in a variety
Findutils supplies the basic file directory searching utilities of
the GNU system. It consists of two primary searching utilities:
find recursively searches for files in a directory according
to given criteria and locate lists files in a database that
match a query. Two auxiliary tools are included: updatedb
updates the file name database and xargs may be used to apply
commands with arbitrarily long arguments.
GNU FisicaLab is an educational application for solving physics problems.
Its main objective is allow the user to focus on physics concepts,
leaving aside the mathematical details.
GNU Fontutils is a collection of programs for handling fonts. Bitmaps can
be extracted from scanned images of characters, edited, and converted into
outline fonts. In general, Fontutils supports the font formats supported
by the TeX typesetting environment, including PostScript Type 1 fonts.
GNU FreeDink is a free and portable re-implementation of the engine
for the role-playing game Dink Smallwood. It supports not only the
original game data files but it also supports user-produced game mods
or D-Mods. To that extent, it also includes a front-end for
managing all of your D-Mods.
GNU FreeFont is a collection of scalable outline fonts that are suitable
for general computer use and for desktop publishing. A serif, a sans
serif and a monospace font are included, all available in both TrueType
and OpenType formats. The fonts support a broad range of characters
for many different writing systems, and have excellent coverage of
GNU FreeIPMI is a collection of in-band and out-of-band IPMI software in
accordance with the IPMI v1.5/2.0 specification. These programs provide
a set of interfaces for platform management. Common functionality
includes sensor monitoring, system event monitoring, power control and
GNU Freetalk is a command-line Jabber/XMPP chat client. It notably
uses the Readline library to handle input, so it features convenient
navigation of text as well as tab-completion of buddy names, commands
and English words. It is also scriptable and extensible via Guile.
GNU FriBidi is an implementation of the Unicode Bidirectional Algorithm.
This algorithm is used to properly display text in left-to-right or
right-to-left ordering as necessary.
GNU Gama is a program for the adjustment of geodetic networks. It is
useful in measurements where Global Positioning System (GPS) is not
available, such as underground. It features the ability to adjust in
local Cartesian coordinates as well as partial support for adjustments
in global coordinate systems.
GNU garpd broadcasts Gratuitous ARP (Address Resolution Protocol)
requests/replies for a list of MAC address <-> IP address mappings
on specified interfaces at regular intervals. Gratuitous ARP request
packets are those where the source and the destination IPs are both the
IP of the requesting machine. Gratuitous ARP replies are those made
without a corresponding request.
Gawk is the GNU implementation of Awk, a specialized programming language
for the easy manipulation of formatted text, such as tables of data.
Gawk features many extensions beyond the traditional implementation,
including network access, sorting, and large libraries.
Gcal is a program to calculate and print calendars on the command-line.
Calendars can be printed in 1-month, 3-month or whole-year views.
In addition, eternal holiday lists can be generated for many countries,
which can be complemented by user-made lists of fixed dates to make
an agenda. Gcal can also calculate astronomical data, such as the
phases of the moon, and supports alternative calendar formats: Julian,
Gregorian, Islamic, Chinese and more.
GCC is the GNU Compiler Collection. It provides compiler front-ends for
several languages, including C, C++, Objective-C, Fortran, Java, Ada,
and Go. It also includes runtime support libraries for these languages.
GCIDE is a free dictionary based on a combination of sources.
It can be used via the GNU Dico program or accessed online at
GCL is an implementation of the Common Lisp language. It features the
ability to compile to native object code and to load native object code
modules directly into its lisp core. It also features a stratified
garbage collection strategy, a source-level debugger and a built-in
interface to the Tk widget system.
GCompris is a suite of educational software for children. It features a
variety of activities suitable for kids aged 2 to 10 years old. The suite
includes activities to introduce and develop skills in computer use,
algebra, science, reading and more. It also features some games such
as chess and sudoku.
GDB is the GNU debugger. With it, you can monitor what a program is doing
while it runs or what it was doing just before a crash. It allows you
to specify the runtime conditions, to define breakpoints, and to change
how the program is running to try to fix bugs. It can be used to debug
programs written in C, C++, Ada, Objective-C, Pascal and more.
GDBM is a library for manipulating hashed databases. It is used to
store key/value pairs in a file in a manner similar to the Unix dbm
library and provides interfaces to the traditional file format.
GNU Gengen is a program to generate text-generators, i.e., functions
producing text with variable sections. The text is first specified by
the user in a template file containing parameters, then processed by
gengen to create the text-generator. At runtime, the variable text is
defined by the rest of the program and passed to the text-generator, which
then substitutes it into the template parameters and returns the result.
Gengen can be used to generate C and C++ code.
GNU Gengetopt is a program to generate a C/C++ function for parsing
command-line options using the getopt_long function found in GNU libc,
removing some of the tedium of this task for large programs that accept
many options. The options parsed by the generated function may be in both
short (e.g., -h) and long (--help) formats, as specified
by the GNU coding standards. Additionally, the output of the standard
options --help and --version is generated automatically.
GNU Gettext is a package providing a framework for translating the textual
output of programs into multiple languages. It provides translators
with the means to create message catalogs, as well as an Emacs mode to
work with them, and a runtime library to load translated messages from
the catalogs. Nearly all GNU packages use Gettext.
Gforth is a fast and portable implementation of the ANSI Forth language.
It includes an editing mode for Emacs and an interpreter featuring
completion and history. A generic virtual machine environment, vmgen,
is also included.
GNU Gradebook is an application for teachers for tracking student
grades. It supports several grading styles, including American (A, B,
C, D, F) and European numeric scales.
Ghostscript is an interpreter for the PostScript language and the PDF
file format. It also includes a C library that implements the graphics
capabilities of the PostScript language. It supports a wide variety of
output file formats and printers.
The GNU Image-Finding Tool (GIFT) is a Content Based Image Retrieval
System. It uses the content of images to perform queries on a collection,
enabling you to query by example. Also, a tool to index whole directory
trees is included.
GIMP is an application for image manipulation tasks such as photo
retouching, composition and authoring. It supports all common image
formats as well as specialized ones. It features a highly customizable
interface that is extensible via a plugin system.
GNU gleem is a library for Java and C++ offering a set of 3D widgets that
support direct user interaction with a 3D scene. These widgets are used
to translate along a line, translate in a plane, and do three-dimensional
translation and rotation.
This package is looking for a maintainer.
GLOBAL is a source code tagging system that functions in the same way
across a wide array of environments, such as different text editors,
shells and web browsers. The resulting tags are useful for quickly
moving around in a large, deeply nested project.
GLPK is a C library for solving large-scale linear programming (LP),
mixed integer programming (MIP), and other related problems. It supports
the GNU MathProg modeling language, a subset of the AMPL language, and
features a translator for the language. In addition to the C library,
a stand-alone LP/MIP solver is included in the package.
GMediaServer is a UPnP-compatible media server. It serves audio and video
files to network-connected media players via a command-line program that
runs in the background.
GMP is a library for arbitrary precision arithmetic, operating on signed
integers, rational numbers and floating point numbers. The precision is
only limited by the available memory. The library is highly optimized,
with a design focus on execution speed. It is aimed at use in, for
example, cryptography and computational algebra.
Gnash is a free Flash movie player. It supports SWF version v7 and
some of v8 and v9. It is possible to configure Gnash to use several
different audio or video backends, ensuring good performance.
GNATS is a set of tools for tracking bugs and other user-reported software
issues. It is completely open-ended in how its database may be queried,
edited and maintained, featuring interfaces ranging from the command-line
to Emacs, though the main means of interaction is via its web interface.
It is also flexible enough to support user-made utilities.
GNOME is the graphical desktop for GNU. It includes a wide variety of
applications for browsing the web, editing text and images, creating
documents and diagrams, playing media, scanning, and much more.
This is a reference manual for the C programming language, as implemented
by the GNU C Compiler (gcc). As a reference, it is not intended to be
a tutorial of the language. Rather, it outlines all of the constructs
of the language. Library functions are not included.
This program is designed to make it easy to reconstruct difficult
passwords when they are needed while limiting the risk of attack.
The user of this program inputs a self-defined transformation of a web
site URL and obtains the password and user name hint for that web site.
GNUbatch is an advanced batch scheduling system. It executes
computational jobs at specified dates and times or according to
interdependencies. The jobs may be completed on any number of processors
shared across a network. Full access-control of the jobs is supported.
The GNU backgammon application can be used for playing, analyzing
and teaching the game. It has an advanced evaluation engine based on
artificial neural networks suitable for both beginners and advanced
players. In addition to a command-line interface, it also features an
attractive, 3D representation of the playing board.
GNUbiff is a program that checks for mail and notifies you when new
messages arrive. It supports multiple mailboxes which may be accessed
via a variety of methods such as POP3, IMAP, MH and mailfiles. Graphical
notifications are provided with GTK and complete integration with GNOME
GNUbik is a puzzle game in which you must manipulate a cube to make each
of its faces have a uniform color. The game is customizable, allowing you
to set the size of the cube (the default is 3x3) or to change the colors.
You may even apply photos to the faces instead of colors. The game is
scriptable with Guile.
GNUcap is a circuit analysis package. It offers a general purpose circuit
simulator and can perform DC and transient analyses, fourier analysis
and AC analysis. The engine is designed to do true mixed-mode simulation.
GnuCash is personal and professional financial-accounting software.
It can be used to track bank accounts, stocks, income and expenses,
based on the double-entry accounting practice. It includes support for
QIF/OFX/HBCI import and transaction matching. It also automates several
tasks, such as financial calculations or scheduled transactions.
GnuDOS is a set of programs designed to help new users of the GNU system
in growing accustomed to the system, particularly users who might be
coming from a DOS background. It consists of a file manager, a text
editor and a form designer for the console as well as a core library
for building similar utilities.
GNU Enterprise supports enterprise planning. It includes an application
server, common development library, an IDE for designing data forms,
forms interface, navigator and menu system, and data reporting system.
GNU Go is a program that plays the game of Go, in which players place
stones on a grid to form territory or capture other stones. While it can
be played directly from the terminal, rendered in ASCII characters, it is
also possible to play GNU Go with 3rd party graphical interfaces or even
in Emacs. It supports the standard game storage format (SGF, Smart Game
Format) and inter-process communication format (GMP, Go Modem Protocol).
The GNU Interactive Tools are a set of lightweight, interactive
command-line tools. They include an extensible, orthodox (two-pane)
file manager, an ASCII/hex file viewer, and a process viewer/killer. The
package also includes some related utilities and scripts, such as a tool
to decompress any type of archive file. All the tools can be enhanced
and extended through their configuration files to perform new commands.
GNUjump is a simple, yet addictive game in which you must jump from
platform to platform to avoid falling, while the platforms drop at faster
rates the higher you go. The game features multiplayer, unlimited FPS,
smooth floor falling, themeable graphics and sounds, and replays.
Gnulib is a central location for common infrastructure needed by GNU
packages. It provides a wide variety of functionality, e.g., portability
across many systems, working with Unicode strings, cryptographic
computation, and much more. The code is intended to be shared at the
level of source files, rather than being a standalone library that is
distributed, built, and installed. The included gnulib-tool
script helps with using Gnulib code in other packages. Gnulib also
includes copies of licensing and maintenance-related files, for
GNUmed is Electronic Medical Record software, supporting paperless
medical practices. Several interface languages are supported.
GNUmeric is a GNU spreadsheet application, running under GNOME.
It is interoperable with other spreadsheet applications. It has a
vast array of features beyond typical spreadsheet functionality, such
as support for linear and non-linear solvers, statistical analysis,
and telecommunication engineering.
GNUMP3d is a streaming server for MP3s and OGG vorbis audio files, movies,
and other media formats. It is small and self-contained, presenting a
simple, themeable HTML interface. The audio files can then be played
in any player that supports streaming over HTTP.
GNUnited Nations is a build system for translating the web site at
www.gnu.org. It works via template files, which allow changes to be
merged into individual translations of a page, from which the final
HTML is generated. In effect, this helps to keep all translations of
a page up-to-date.
GNUnet is a framework for secure peer-to-peer networking that does not
use any centralized or otherwise trusted services. Our high-level goal
is to provide a strong free software foundation for a global network
that provides security and privacy. GNUnet started with an idea for
anonymous censorship-resistant file-sharing, but has grown to incorporate
other applications as well as many generic building blocks for secure
networking applications. In particular, GNUnet now includes the GNU Name
System, a privacy-preserving, decentralized public key infrastructure.
The GNU Privacy Guard is a complete implementation of the OpenPGP
standard. It is used to encrypt and sign data and communication.
It features powerful key management and the ability to access public
key servers. It includes several libraries: libassuan (IPC between GnuPG
components), libgpg-error (centralized GnuPG error values), and libskba
(working with X.509 certificates and CMS data).
GNUpod is a collection of scripts for using iPods with GNU/Linux and
other operating systems. It can be used for transferring music and cover
art, searching files, removing files, editing tags, creating playlists
GNU Prolog for Java is an implementation of the ISO Prolog standard as a
Java library (gnu.prolog). Thus, with it you can use Prolog from within
GNU Radio is a toolkit for implementing software radios. Its signal
processing blocks can be combined with low-cost external RF hardware
to create software-defined radios. Without hardware, it can be used
for simulation. Radio applications are primarily written in Python,
with C++ support for performance-critical processing tasks.
GNU Robots is a game in which you program a robot to explore a world
full of enemies that can hurt it, obstacles and food to be eaten. The
goal of the game is to stay alive and collect prizes. The robot program
conveniently may be written in a plain text file in the Scheme programming
GNUschool is a web application for students, teachers and school
administrators. With it, teachers can create tests for the students
to take online, give feedback and assign grades. School administrators
can use it to monitor student attendance and edit student information.
GNU Shogi is a program that plays the game Shogi (Japanese Chess). It
also includes a graphical interface to the game. While similar to
standard chess, this variant is far more complicated.
GNUsound is a multitrack sound editor for GNOME 1 and 2. It can read and
write many audio file formats such as WAV, MP3 and FLAC. It can work
with the OSS, ALSA or JACK audio backends. It provides many different
built-in audio processing modules, such as fades in/out, delay, and
filters. GLADSPA plugins may also be used for further processing.
GNUspool is an advanced print spooling system. In addition to the
functionality of the standard printing system, it provides post-processing
capabilities, form type handling, alignment pages and other features.
It functions transparently on a network, sharing jobs on any host
with printers on any other host. Several user different interfaces
GNUstep is a fully-functional object-oriented development environment;
a number of user applications are also included. It closely follows
the Cocoa APIs but is platform-independent.
GnuTLS is a secure communications library implementing the SSL, TLS and
DTLS protocols. It is provided in the form of a C library to support
the protocols, as well as to parse and write X.5009, PKCS 12, OpenPGP
and other required structures.
GNUtrition is a free nutrition analysis software. With it, one can
keep track of the nutritional information of food. The software uses
the Nutrient Database of Standard Reference of the US Department of
Agriculture as a source of food nutrient information.
Goptical is a library for optical design and simulation in C++.
It provides model classes for optical components, surfaces and materials.
With it, one can simulate building an optical system by creating and
placing optical components in a 3d space, and visualize light propagating
through the system.
GNU Paint is a simple, easy-to-use paint program for the GNOME
environment. It supports drawing freehand as well as basic shapes
and text. It features cut-and-paste for irregular regions or polygons.
gperf is a perfect hash function generator. For a given list of strings,
it produces a hash function and hash table in C or C++ code. That the
hash function is perfect means that no collisions can exist and that
look-ups can be made by single string comparisons.
GNU Prolog is a standards-compliant Prolog compiler with constraint
solving over finite domains. It accepts Prolog+ constraint programs and
produces a compiled, native binary which can function in a stand-alone
manner. It also features an interactive interpreter.
phpGrabComics is a program that fetches and saves comic strips from
the web. It features both a server, which can download strips from
different sources, and ports, tiny applications which get the list of
available comics from the server.
GNU Greg is a framework for testing programs and libraries. It provides a
single front-end for all tests of a package as well as a simple framework
for writing the tests. It is loaded as a Guile module into any software
with an embedded Guile interpreter. It also provides a compiled module
that may be dynamically linked into Guile to permit testing external
grep is a tool for finding text inside files. Text is found by matching
a pattern provided by the user in one or many files. The pattern may be
provided as a basic or extended regular expression, or as fixed strings.
By default, the matching text is simply printed to the screen, however the
output can be greatly customized to include, for example, line numbers.
GNU grep offers many extensions over the standard utility, including,
for example, recursive directory searching.
GNU Gretl is a package for performing statistical computations for
econometrics. It consists of both a command-line client and a graphical
client. It features a variety of estimators such as least-squares
and maximum likelihood; several time series methods such as ARIMA and
GARCH; limited dependent variables such as logit, probit and tobit;
and a powerful scripting language. It can output models as LaTeX files.
It also may be linked to GNU R and GNU Octave for further data analysis.
Groff is a typesetting package that reads plain text and produces
formatted output based on formatting commands contained within the text.
It is usually the formatter of man documentation pages.
GRUB is a multiboot bootloader. It is used for initially loading the
kernel of an operating system and then transferring control to it.
The kernel then goes on to load the rest of the operating system. As a
multiboot bootloader, GRUB handles the presence of multiple operating
systems installed on the same computer; upon booting the computer, the
user is presented with a menu to select one of the installed operating
GNU SASL is an implementation of the Simple Authentication and Security
Layer framework. On network servers such as IMAP or SMTP servers, SASL
is used to handle client/server authentication. This package contains
both a library and a command-line tool to access the library.
GSEGrafix is an application which produces high-quality graphical plots
for science and engineering. Plots are specified via simple ASCII
parameter files and data files and are presented in an anti-aliased
GNOME canvas. The program supports rectangular two-dimensional plots,
histograms, polar-axis plots and three-dimensional plots. Plots can be
printed or saved to BMP, JPEG or PNG image formats.
The GNU Scientific Library is a library for numerical analysis in C
and C++. It includes a wide range of mathematical routines, with over
1000 functions in total. Subject areas covered by the library include:
differential equations, linear algebra, Fast Fourier Transforms and
GSRC supports installing the latest releases of GNU packages on an
existing system. New versions are installed in a separate place so
as not to interfere with the system versions. The goal is to make it
easier to work with the original, upstream, GNU sources, and perhaps
help with development and testing.
The GNU Generic Security Service provides a free implementation of the
GSS-API specification. It provides a generic application programming
interface for programs to access security services. Security services
present a generic, GSS interface, with which the calling application
interacts via this library, freeing the application developer from
needing to know about the underlying security implementation.
GTick is a metronome application. It supports different meters, such
as 2/4, 3/4, 4/4, etc. It also supports a wide range of speeds, from
10 to 1000 BPM. It provides a GTK+-based user interface and it can use
both OSS and ALSA as the audio back-end.
GNU Typist is a universal typing tutor. It can be used to learn and
practice touch-typing. Several tutorials are included; in addition to
tutorials for the standard QWERTY layout, there are also tutorials for
the alternative layouts Dvorak and Colemak, as well as for the numpad.
Tutorials are primarily in English, however some in other languages
Guile is the GNU Ubiquitous Intelligent Language for Extensions, the
official extension language of the GNU system. It is an implementation of
the Scheme language which can be easily embedded in other applications
to provide a convenient means of extending the functionality of the
application without requiring the source code to be rewritten.
guile-dbi is a library for Guile that provides a convenient interface to
SQL databases. Database programming with guile-dbi is generic in that
the same programming interface is presented regardless of which database
system is used. It currently supports MySQL, Postgres and SQLite3.
Includes guile-clutter, guile-gnome-gstreamer, guile-gnome-platform
(GNOME developer libraries), and guile-gtksourceview.
guile-ncurses provides Guile language bindings for the ncurses library.
Guile-OpenGL is a library for Guile that provides bindings to the OpenGL
Guile-SDL is a set of bindings to the Simple DirectMedia Layer (SDL). With
them, Guile programmers can have easy access to graphics, sound and
device input (keyboards, joysticks, mice, etc.).
GNU Guix is a functional package manager for the GNU system, and is also
a distribution thereof. It includes a virtual machine image. Besides
the usual package management features, it also supports transactional
upgrades and roll-backs, per-user profiles, and much more. It is based
on the Nix package manager.
GURGLE produces database report listings from record and field information
from a file. It uses the report to produce (La)TeX-formatted output,
plain ASCII text, troff, PostScript, HTML, XML, or any other ASCII-based
output format. It may be used for producing large bodies of text
where small parts of the text are substituted with information from
the database. GURGLE supports GNUSQL, PostgreSQL, MySQL and CA-Ingres
GNU GV is a graphical user interface to the Ghostscript interpreter. With
it, one can view and navigate through PostScript and PDF documents in
The GNU Virtual Private Ethernet creates a virtual network with multiple
nodes using a variety of transport protocols. It works by creating
encrypted host-to-host tunnels between multiple endpoints.
GNU gxmessage is a program that pops up dialog windows, which display a
message to the user and waits for their action. The program then exits
with an exit code corresponding to the response.
GNU Gzip provides data compression and decompression utilities; the
typical extension is .gz. Unlike the zip format, it
compresses a single file; as a result, it is often used in conjunction
with tar, resulting in .tar.gz or .tgz, etc.
HaliFAX supports sending and viewing faxes, including a wrapper around
the lpr command.
This package is looking for a maintainer.
GNU Health is a free medical software system, including support for
electronic medical records (EMR), a hospital information system (HIS),
and health information system. It supports both Spanish and English
interfaces. It has been adopted by the United Nations University for
implementation and training, and several hospitals and health ministries
around the world.
GNU Hello prints the message Hello, world! and then exits.
It serves as an example of standard GNU coding practices. As such,
it supports command-line arguments, multiple languages, and so on.
GNU help2man is a program that converts the output of standard
--help and --version command-line arguments into a
manual page automatically.
GNU hp2xx converts vector graphics specified in the HP-GL plotter language
into a variety of graphical formats, both vector- and raster-based,
including EPS, PCX, IMG, and formats intended for use within TeX
GNU httptunnel creates a bidirectional data path tunneled in HTTP
requests. This allows users behind firewalls to send and receive data
that would otherwise be blocked, such as telnet or ssh connections.
The Hurd is the kernel for the GNU system, a replacement and augmentation
of standard Unix kernels. It is a collection of protocols for system
interaction (file systems, networks, authentication), and servers
implementing them. Subprojects include Mach, the microkernel on which
the Hurd is based, which provides a basic inter-process communication
mechanism, and MIG, an interface generator for Mach.
Hyperbole is a programmable information and hypertext system for
GNU Emacs. It allows hypertext to be embedded within documents, mail
messages and news articles. This permits mouse-based control of the
IceCat is the GNU version of the Firefox browser. It is entirely free
software, which does not recommend non-free plugins and addons. It also
features built-in privacy-protecting features.
The GNU idutils package includes tools to create an index of textual
tokens used in a list of file names and then to query that index. Thus,
it allows the user to, for example, find all the uses of a particular
function in a large programming project. In addition to handling
textual tokens, it can also handle numeric constants and the contents
of character strings.
Ignuit is a tool for aiding in the memorization of new information based
on the Leitner flashcard system. In this system, new cards are studied
with decreasing frequency as they grow older, unless you encounter
difficulty memorizing them, after which you encounter them more often.
Cards can include embedded audio, images and mathematical formulae and
a card collection can be exported to several formats.
Indent is a program that makes source code easier to read by reformatting
it in a consistent style. It can change the style to one of several
different styles such as GNU, BSD or K&R. It has some flexibility
to deal with incomplete or malformed syntax. GNU indent offers several
extensions over the standard utility.
Inetutils is a collection of common network programs, such as an ftp
client and server, a telnet client and server, and an rsh client and
GNU InklingReader is a free software package to support the Wacom Inkling
device, including data conversion to various free formats, basic editing
features, and an Inkscape pluging.
GNU intlfonts contains free X11 fonts in the BDF and TrueType
formats. They notably cover a large number of characters from different
writing systems: European, Asian, Chinese, Japanese, Korean, Ethiopic
GNU JACAL is an interactive symbolic mathematics program based on Scheme.
It manipulate and simplify a range of mathematical expressions such as
equations, scalars, vectors, and matrices.
java-getopt provides a Java port of the GNU getopt function from glibc.
It supports parsing both long and short command-line arguments in a
flexible manner, which is completely compatible with the C version.
GNU JEL is a library that lets a program accept user-defined expressions
to be entered and evaluated at runtime. In fact, the expressions are
compiled by JEL to Java bytecode to avoid the performance penalty of
adding interpreted expressions to an already-interpreted language.
GNU jwhois is a client for the WHOIS protocol, which allows you to query
the owner of a domain name. The program uses an extensible configuration
file to determine the most appropriate server to query and, upon success
displays the result to the user, otherwise it can optionally redirect
the query to another server.
This package is looking for a maintainer.
GNU Kawa is an implementation of the Scheme programming language that is
built on top of the Java platform. It is thus conveniently integrated
with Java and benefits from this by having a compiler, optional static
typing, and so on. Kawa also serves as a framework for implementing
other programming languages on the Java platform. Included in Kawa is
qexo, a partial implementation of XQuery in Java.
GNU Leg is a set of libraries for game engines and game development. In
addition to the libraries, it also includes resource editors designed
to make game creation easier. The package is designed to be generic
and modular, supporting many different styles of games.
GNU less is a pager, a program that allows you to view large amounts of
text in page-sized chunks. Unlike traditional pagers, it allows both
backwards and forwards movement through the document. It also does not
have to read the entire input file before starting, so it starts faster
than most text editors.
The GNU C Library is the standard C library of the GNU system.
It defines the system calls and other basic functionality necessary to
write programs in the C language. It handles low-level functionality
that communicates with the kernel, such as process and file management,
as well as higher-level functionality such as string manipulation or
command-line argument handling.
The GNU Compact Disc Input and Control Library (libcdio) is a library
for CD-ROM and CD image file access. It allows the developer to add
CD access to an application without having to worry about the OS-
and device-dependent properties of CD-ROM or the specific details of
CD image formats. It includes pycdio, a Python interface to libcdio,
and libcdio-paranoia, a library providing jitter-free and error-free
audio extraction from CDs.
libdbh provides disk-based hash tables, providing quick lookup of
key-value pairs. While its usage is similar in general to that of
(G)DBM, it has a different design supporting advanced, atypical usage.
GNU libextractor is a library for extracting metadata from files.
It supports a very large number of file formats, including audio files,
document files, and archive files. Each file format is implemented as
a plugin, so new formats can be added easily. The package also contains
a command-line tool to extract metadata from a file and print the results.
Libgcrypt is a general-purpose cryptographic library. It provides the
standard cryptographic building blocks such as symmetric ciphers, hash
algorithms, public key algorithms, large integer functions and random
libiconv provides an implementation of the iconv function for systems
that lack it. iconv is used to convert between character encodings in
a program. It supports a wide variety of different encodings.
libidn is a library implementing of the Stringprep, Punycode and IDNA
specifications. These are used to encode and decode internationalized
domain names. It includes native C, C# and Java libraries.
GNU libmatheval is a library to parse and evaluate symbolic expressions
input by the user as text. It can be loaded from both C and Fortran.
The interpreter is flexible, supporting any number of variables of
arbitrary names, decimal and symbolic constants, basic unary and binary
operators, and elementary mathematical functions. It can also compute
symbolic derivatives and output expressions to strings.
GNU libmicrohttpd is a small, embeddable HTTP server implemented
as a C library. It makes it easy to run an HTTP server as part of
another application. The library is fully HTTP 1.1 compliant. It can
listen on multiple ports, supports four different threading models,
and supports IPv6. It also features security features such as basic
and digest authentication and support for SSL3 and TLS.
LibreJS is an add-on for GNU Icecat and other Firefox-based browsers. It
free or trivial is allowed to be loaded.
GNU libsigsegv is a library to handle page faults, which occur when a
program tries to access an unavailable region of memory, in user mode.
By catching and handling page faults, the program can implement pageable
virtual memory, stack overflow handlers, and so on.
GNU libtasn1 is a library implementing the ASN.1 notation. It is used
for transmitting machine-neutral encodings of data objects in computer
networking, allowing for formal validation of data according to some
GNU Libtool helps in the creation and use of shared libraries, by
presenting a single consistent, portable interface that hides the usual
complexity of working with shared libraries across platforms.
GNU libunistring is a library providing functions to manipulate Unicode
strings and for manipulating C strings according to the Unicode standard.
GNU libxmi is a library for rasterizing 2D vector graphics for C and
C++. It supports drawing 2D primitives into a user-supplied matrix
of pixels. It also supports the specification of sophisticated line
styles such as multi-colored dashed patterns. Filling and texturing
polygons is also supported.
GNU Lightning is a library that generates assembly language code
at run-time. Thus, it is useful in creating Just-In-Time compilers.
It abstracts over the target CPU by exposing a standardized RISC
instruction set to the clients.
GNU LilyPond is a music typesetter, which produces high-quality sheet
music. Music is input in a text file containing control sequences
which are interpreted by LilyPond to produce the final document. It is
extendable with Guile.
GNU LIMS is a laboratory information management system. It is used
for managing a scientific laboratory of any field. It consists of a
set of modules for the Tryton enterprise management framework, so it
is flexible to the specific needs of the laboratory. For example, the
system includes modules for sample management, lab equipment integration,
accounting and stock management.
GNU Linux-Libre is a free (as in freedom) variant of the Linux kernel. It
has been modified to remove all non-free binary blobs.
GNU Liquid War 6 is a fast-paced, unique action game. Each player
controls a blob of liquid with the goal of conquering the entire map. It
has 13 levels by default and over 100 more with a bonus pack; new levels
can be easily created using simple image files.
GNU lrzsz is a communication package supporting the XMODEM, YMODEM and
ZMODEM file transfer protocols.
GNU lsh is a free implementation of the SSH version 2 protocol. It is
used to create a secure line of communication between two computers,
providing shell access to the server system from the client. It provides
both the server daemon and the client application, as well as tools for
manipulating key files.
GNU M4 is an implementation of the M4 macro language, which features
some extensions over other implementations, some of which are required by
GNU Autoconf. It is used as a macro processor, which means it processes
text, expanding macros as it encounters them. It also has some built-in
functions, for example to run shell commands or to do arithmetic.
GNU MAC Changer is a utility for viewing and changing MAC addresses of
networking devices. New addresses may be set explicitly or randomly.
They can include MAC addresses of the same or other hardware vendors or,
more generally, MAC addresses of the same category of hardware.
GNU Mailman is software for managing email discussion and mailing lists.
Both users and administrators generally perform their actions in a web
interface, although email and command-line interfaces are also provided.
The system features built-in archiving, automatic bounce processing,
content filtering, digest delivery, and more.
GNU Mailutils is a collection of programs for managing, viewing and
processing electronic mail. It contains both utilities and server daemons
and all operate in a protocol-agnostic way. The underlying libraries
are also available, simplifying the addition of mail capabilities to
Make is a program that is used to control the production of executables
or other files from their source files. The process is controlled from
a Makefile, in which the developer specifies how each file is generated
from its source. It has powerful dependency resolution and the ability
to determine when files have to be regenerated after their sources change.
GNU make offers many powerful extensions over the standard utility.
GNU MARST is an Algol-to-C translator. The package consists of the
translator itself, a library that contains the necessary Algol 60
procedures, and a converter that converts existing Algol 60 programs
from other representations to the MARST representation.
GNU MAVERIK is a development toolkit that supports 3D virtual environments
and interaction with those environments. It sits on top of a low-level
rendering engine that uses OpenGL or Mesa, and provides mechanisms to
render different kinds of objects, to manage environments and to provide
support for 3D interaction.
GNU Midnight Commander is a command-line file manager laid out in a
common two-pane format. In addition to standard file management tasks
such as copying and moving, Midnight Commander also supports viewing
the contents of RPM package files and other archives and managing files
on other computers via FTP or FISH. It also includes a powerful text
editor for opening text files.
GNU Mcron is a complete replacement for Vixie cron. It is used to
run tasks on a schedule, such as every hour or every Monday. Mcron is
written in Guile, so its configuration can be written in Scheme; the
original cron format is also supported.
GNU MCSim is a package to perform simulations. It supports statistical
or deterministic simulation models via Monte Carlo stochastic simulations
or dynamic, ODE-based simulations. It also can do Bayesian inference
through Markov Chain Monte Carlo simulations.
GNU MDK is the Mix Development Kit, an emulation of the pedagogical
computer MIX and its assembly language MIXAL. MIX has a virtual CPU with
standard features such as registers, memory cells, an overflow toggle,
comparison flags, input-output devices, and a set of binary instructions.
The package includes a compiler, a virtual machine, a GUI for the virtual
machine, and more.
GNU MediaGoblin is a free media publishing platform. It runs in a
federalized manner, freeing the user from centralized web services. It
supports pictures, videos and audio.
GNU MELTING computes the enthalpy, entropy and melting temperature of
helix-coil transitions of a nucleic acid duplex.
GNU MetaHTML is a server-side programming language designed for the
World Wide Web. It has a syntax that is similar to HTML and Lisp. It
provides a large function library, including support for sockets, image
creation and connections to other programs.
This package is looking for a maintainer.
GNU mifluz is a C++ library to store a full-text inverted index.
It stores the occurrences of words in a set of texts in such a way that
they can later be searched. Upon searching for a word, the index returns
the list of documents which contain that word.
GNU Miscfiles is a collection of common data files. They include,
for example, country abbreviations, names and capital cities; currency
abbreviations and names; a Best Current Practices index; a map of the
ASCII character set; a list of three-letter airport codes; and an English
GNU/MIT Scheme is an implementation of the Scheme programming language.
It provides an interpreter, a compiler and a debugger. It also features
an integrated Emacs-like editor and a large runtime library.
GNU Moe is a powerful-but-simple-to-use text editor. It works in a
modeless manner, and features an intuitive set of key-bindings that
assign a degree of severity to each key; for example, key combinations
with the Alt key are for harmless commands like cursor movements while
combinations with the Control key are for commands that will modify
the text. Moe features multiple windows, unlimited undo/redo, unlimited
line length, global search and replace, and more.
GNU Motti is a simple multiplayer strategy game played in a terminal. The
objective of the game is to conquer enemy capitals by occupying and
GNU MPC is a C library for performing arithmetic on complex numbers. It
supports arbitrarily high precision and it correctly rounds the results.
GNU MPFR is a C library for performing multiple-precision, floating-point
computations with correct rounding.
GNU MPRIA is a C library for performing rational arithmetic computations
with arbitrarily high precision. It builds on the GMP library.
GNU Mtools is a set of utilities for accessing MS-DOS disks from a GNU
or Unix system. It supports long file names and multiple disk formats.
It also supports some FAT-specific features such as volume labels and
FAT-specific file attributes.
GNU Nana is a framework for adding assertion checking, logging and
performance measurement to C and C++ programs. Operations can either be
implemented directly in C or by generating debugger commands. Checking
and logging features can be enabled or disabled at compile or runtime.
GNU Nano is a small and simple text editor. In addition to basic editing,
it supports interactive search and replace, go to line and column number,
auto-indentation and more.
nano-archimedes is a free package for the simulation of quantum systems.
It is based on the Wigner equation, a formulation of quantum mechanics
in terms of a phase-space which is mathematically equivalent to the
Schroedinger equation. nano-archimedes implements the Wigner Monte
Carlo method. The code can be easily extended to density functional
theory (DFT) and time-dependent ab-initio simulations.
GNU Ncurses is a library which provides capabilities to write text to a
terminal in a terminal-independent manner. It supports pads and color
as well as multiple highlights and forms characters. It is typically
used to implement user interfaces for command-line applications.
The accompanying ncursesw library provides wide character support.
GNU Nettle is a low-level cryptographic library. It is designed to fit in
easily in almost any context. It can be easily included in cryptographic
toolkits for object-oriented languages or in applications themselves.
GNU Ocrad is an optical character recognition program based on a feature
extraction method. It can read images in PBM, PGM or PPM formats and
it produces text in 8-bit or UTF-8 formats.
GNU Octave is a high-level interpreted language that is specialized for
numerical computations. It can be used for both linear and non-linear
applications and it provides great support for visualizing results.
Work may be performed both at the interactive command-line as well as
via script files.
GNU Oleo is a spreadsheet program. It offers both a terminal interface
and a LessTif-based graphical user interface. It features familiar,
Emacs-like keybindings. It supports many standard spreadsheet features
such as macros and functions.
GNU OrgaDoc is a system for easily maintaining a pool of documents
between computers. Documents are synchronized by rsync or unison;
no database or HTTP server is required.
This package is looking for a maintainer.
GNU oSIP is an implementation of the SIP protocol. It is used to provide
multimedia and telecom software developers with an interface to initiate
and control SIP sessions.
GNU Panorama is a framework for producing 3D graphics. It can perform
various effects, such as focal blur, arbitrary light sources, bump
mapping, and several lighting effects.
GNU Parallel is a tool for executing shell jobs in parallel using one
or more computers. Jobs can consist of single commands or of scripts
and they are executed on lists of files, hosts, users or other items.
GNU Parted is a package for creating and manipulating disk partition
tables. It includes a library and command-line utility.
Patch is a program that applies changes to files based on differences
laid out as by the program diff. The changes may be applied to
one or more files depending on the contents of the diff file. It accepts
several different diff formats. It may also be used to revert previously
GNU paxutils is a suite of archive utilities. It contains versions of
the cpio, tar and pax archivers.
GNU PCB is an interactive tool for editing printed circuit board
layouts. It features a rats-nest implementation, schematic/netlist import,
and design rule checking. It also includes an autorouter and a trace
optimizer; and it can produce photorealistic and design review images.
GNU Pem is a simple tool for tracking personal income and expenses.
It operates from the command line and it stores its data in a basic
text format in your home directory. It can easily print reports of your
spending on different expenses via a basic search feature.
GNU pexec is a program for executing commands or shell scripts in parallel
on one or many computers. As it works, execution parameters such as the
environment variables or standard input, output and error can be varied.
GNU pies is a program that supervises the invocation and execution of
other programs. It reads the list of programs to be started from its
configuration file, executes them, and then monitors their status,
re-executing them as necessary.
GNU Plotutils is a package for plotting and working with 2D graphics.
It includes a library, libplot, for C and C++ for exporting 2D
vector graphics in many file formats. It also has support for 2D vector
graphics animations. The package also contains command-line programs
for plotting scientific data.
GNU proxyknife is a tool to validate free proxies from behind a firewall.
The validation process is fully customizable to meet your needs.
GNU PSPP is a statistical analysis program. It can perform descriptive
statistics, T-tests, linear regression and non-parametric tests.
It features both a graphical interface as well as command-line input. PSPP
is designed to interoperate with Gnumeric, LibreOffice and OpenOffice.
Data can be imported from spreadsheets, text files and database sources
and it can be output in text, PostScript, PDF or HTML.
GNU Psychosynth is an interactive, modular soft-synth. It emulates a
3D surface on which modules are placed and manipulated, generating and
altering music. Psychosynth consists of a C++ library, a 3D interface
and a command-line interface.
GNU Pth is a portable library providing non-preemptive, priority-based
scheduling for multiple execution threads. Each thread has its own
program-counter, run-time stack, signal mask and errno variable. Threads
are scheduled in a cooperative way, rather than in the standard
preemptive way, such that they are managed according to priority
and events. However, Pth also features emulation of POSIX.1c threads
(pthreads) for backwards compatibility.
GNU pyconfigure provides template files for easily implementing
standards-compliant configure scripts and Makefiles for Python-based
packages. It is designed to work alongside existing Python setup
scripts, making it easy to integrate into existing projects. Powerful
and flexible Autoconf macros are available, allowing you to easily make
adjustments to the installation procedure based on the capabilities of
the target computer.
R is a language and environment for statistical computing and graphics.
It provides a variety of statistical techniques, such as linear and
nonlinear modeling, classical statistical tests, time-series analysis,
classification and clustering. It also provides robust support for
producing publication-quality data plots. A large amount of 3rd-party
packages are available, greatly increasing its breadth and scope.
Radius is a server for remote user authentication and accounting. It is
generally useful for networks that require a centralized authentication
and accounting services for its workstations. Authentication can be
performed in a variety of ways, such as via /etc/passwd or
credentials stored in an SQL database.
RCS is the original Revision Control System. It works on a file-by-file
basis, in contrast to subsequent version control systems such as CVS,
Subversion, and Git. This can make it suitable for system administration
files, for example, which are often inherently local to one machine.
The GNU readline library allows users to edit command lines as they are
typed in. It can maintain a searchable history of previously entered
commands, letting you easily recall, edit and re-enter past commands.
It features both Emacs-like and vi-like keybindings, making its usage
comfortable for anyone.
GNU Recutils is a set of tools and libraries for creating and manipulating
text-based, human-editable databases. Despite being text-based, databases
created with Recutils carry all of the expected features such as unique
fields, primary keys, time stamps and more. Many different field types
are supported, as is encryption.
GNU RefTex is a package for implementing labels, references, citations
and indices in LaTeX documents. It works by wrapping around four LaTeX
macros: label, ref, cite and index. It automates the common tasks that
normally are required when using these macros.
GNU Remotecontrol is a web application for managing IP-enabled HVAC
thermostats and other building automation devices. The application can
read data from and write data to multiple such devices.
GNU Rot[t]log is a program for managing log files. It is used to
automatically rotate out log files when they have reached a given size
or according to a given schedule. It can also be used to automatically
compress and archive such logs. Rot[t]log will mail reports of its
activity to the system administrator.
The GNU Role Playing Game Engine provides an engine for creating
two-dimensional, graphical role-playing games, providing, for example,
a sprite-tiling grid, sprite rendering, and event handling.
GNU Rush is a restricted user shell, for systems on which users are to
be provided with only limited functionality or resources. Administrators
set user rights via a configuration file which can be used to limit,
for example, the commands that can be executed, CPU time, or virtual
GNU Sather is an object-oriented programming language similar
to Eiffel. It is designed to be simple, efficient, safe, and
non-proprietary. It features garbage collection, statically-checked
strong typing, multiple inheritance, parameterized classes and more.
This package consists of a compiler, a class library, the language
specification and programming manual, and a browser for displaying
sources and directed graphs of class inheritance.
GNU SCM is an implementation of Scheme. This implementation includes
Hobbit, a Scheme-to-C compiler, which can generate C files whose binaries
can be dynamically or statically linked with a SCM executable.
GNU Screen is a terminal window manager that multiplexes a single
terminal between several processes. The virtual terminals each provide
features such as a scroll-back buffer and a copy-and-paste mechanism.
Screen then manages the different virtual terminals, allowing you to
easily switch between them, to detach them from the current session,
or even splitting the view to show two terminals at once.
Sed is a non-interactive, text stream editor. It receives a text input
from a file or from standard input and it then applies a series of text
editing commands to the stream and prints its output to standard output.
It is often used for substituting text patterns in a stream. The GNU
implementation offers several extensions over the standard utility.
GNU Serveez is a server framework providing the routines necessary to
easily implement IP-based servers in your application. It demonstrates
aspects of network programming in a portable manner, making it convenient
for both simplifying the process of adding a server to your application
or for learning about how network services work. Several example servers
are provided already, such as an HTTP server and an IRC server.
GNU sharutils is a package for creating and manipulating shell archives
that can be readily emailed. A shell archive is a file that can be
processed by a Bourne-type shell to unpack the original collection of
files. This package is mostly for compatibility and historical interest.
GNU Shishi is a free implementation of the Kerberos 5 network security
system. It is used to allow non-secure network nodes to communicate in
a secure manner through client-server mutual authentication via tickets.
GNU SHMM is a shared memory manager. It can read or write to shared
memory. It also supports other commands such as locking or unlocking
a block of shared memory identified by key and size.
GNU shtool is a multipurpose shell tool. It can perform the functions
of many different commands, in order to provide a single tool to
distribute with a source distribution in order to ensure portability of
shell scripts. For example, shtool can perform the jobs of the common
commands install, mkdir or echo on systems
that lack them.
GNU SIP Witch is a peer-to-peer Voice-over-IP server that uses the
SIP protocol. Calls can be made from behind NAT firewalls and without
the need for a service provider. Its peer-to-peer design ensures that
there is no central point for media intercept or capture and thus it
can be used to construct a secure telephone system that operates over
the public internet.
GNU SLIB is a portable common library for the Scheme programming language.
It supports a large variety of different Scheme implementations, offering
them a framework for using packages of Scheme procedures and syntax.
GNU Smalltalk is a free implementation of the Smalltalk language.
It implements the ANSI standard for the language and also includes extra
classes such as ones for networking and GUI programming.
GNU Solfege is a program for practicing musical ear-training. With it,
you can practice your recognition of various musical intervals and chords.
It features a statistics overview so you can monitor your progress across
several sessions. Solfege is also designed to be extensible so you can
easily write your own lessons.
GNU SpaceChart lets you view how the stars are distributed in
three-dimensional space. It allows you, for example, to determine the
distances between stars, to view them from any point of view, or to
filter your view by spectral class and luminosity.
GNU Speex is a patent-free audio compression codec specially designed
for speech. It is well-adapted to internet applications, such as VoIP.
It features compression of different bands in the same bitstream,
intensity stereo encoding, and voice activity detection.
Spell is a command-line spell-checking program. It reads through
a text input and prints each misspelled word on a line of its own.
It is implemented as a wrapper for GNU aspell or ispell.
GNU Sqltutor is a web-based, interactive SQL tutorial. It features
multiple tutorials available in different languages. The tutorials
present a series of questions in a dialog and, when complete, they
display a final evaluation including correct answers for wrong solutions.
GNU source-highlight reads in a source code file and produces an
output file in which the keywords are highlighted in different colors to
designate their syntactic role. It supports over 150 different languages
and it can output to 8 different formats, including HTML, LaTeX and ODF.
It can also output to ANSI color escape sequences, so that highlighted
source code can be seen in a terminal.
GNU Stow is a symlink manager. It generates symlinks to directories of
data and makes them appear to be merged into the same directory. It is
typically used for managing software packages installed from source, by
letting you install them apart in distinct directories and then create
symlinks to the files in a common directory such as /usr/local.
GNU STUMP is a robomoderator program for USENET newsgroups and mailing
lists, featuring web-based moderation. It supports group moderation
via multiple human moderators. It can also automatically reject
non-conforming messages without human intervention. It includes a
GNU Superopt is a function sequence generator for superoptimization.
It uses an exhaustive generate-and-test approach to find the shortest
instruction sequence for a given function.
This package is looking for a maintainer.
Swbis is a software administration system specified by POSIX.
It features network-transparent management of software packages for
system administrators. For example, entire file system directories can
be copied host-to-host across a network in a transparent manner. The
package also features advanced tarball creation methods and integrity
The GNU Talk Filters are programs that convert English text into
stereotyped or otherwise humorous dialects. The filters are provided
as a C library, so they can easily be integrated into other programs.
Tar provides the ability to create tar archives, as well as the ability
to extract, update or list files in an existing archive. It is useful
for combining many files into one larger file, while maintaining
directory structure and file information such as permissions and
creation/modification dates. GNU tar offers many extensions over the
GNU termcap is a library and a database that are used to enable the use
of display terminals in a terminal-independent manner. The database
describes the capabilities of many different display terminals. The
library can then adapt generalized instructions given by a program to the
specific capabilities of the display terminal as found in the database.
The GNU Termutils package contains two programs, tput and
tabs. tput is used in shell scripts to manipulate the
terminal display, for example by clearing it or moving the cursor to a
specific point, centering text or underlining text. tabs is
used to specify and set hardware tab stops on terminals that support it.
GNU Teseq is a program that analyzes files that contain control sequences.
It converts the sequences that it encounters into a human-readable
description of what actions those sequences perform. It can also translate
its output back into machine-readable control sequences.
TeX for the Impatient is a ~350 page book on TeX, plain TeX and Eplain,
written by Paul Abrahams, Kathryn Hargreaves and Karl Berry.
This package is looking for a maintainer.
Texinfo is the official documentation format of the GNU project.
It uses a single source file using explicit commands to produce a final
document in any of several supported output formats, such as HTML or PDF.
This package includes both the tools necessary to produce Info documents
from their source and the command-line Info reader. The emphasis of the
language is on expressing the content semantically, avoiding physical
GNU TeXmacs is a text editing platform which is specialized for
scientists. It is ideal for editing structured documents with different
types of content. It has robust support for mathematical formulas and
plots. It can also act as an interface to external mathematical programs
such as R and Octave. TeXmacs is completely extensible via Guile.
GNU Thales provides macros for performing unit testing in Guile and for
checking the stability of the public interface of your modules.
Time is a command that displays information about the resources that a
program uses. The display output of the program can be customized or
saved to a file.
TRAMP is a GNU Emacs package that allows you to access files on remote
machines as though they were local files. This includes editing files,
performing version control tasks and modifying directory contents
with dired. Access is performed via ssh, rsh, rlogin, telnet or other
GNU Trueprint translates C source code files as PostScript files. In
addition to the basic source code output, it can also perform
diff-marking, indentation counting, function and file indices and more.
GNU Unifont is a bitmap font covering essentially all of Unicode's
Basic Multilingual Plane. The package also includes utilities to ease
adding new glyphs to the font.
GNU Units converts numeric quantities between units of measure. It can
handle scale changes through adaptive usage of standard scale prefixes
(micro-, kilo-, etc.). It can also handle nonlinear conversions such
as Fahrenheit to Celsius. Its interpreter is powerful enough to be used
effectively as a scientific calculator.
GNU UnRTF converts text documents from RTF to HTML, LaTeX, or troff. It
supports changes in font characteristics, underlines and strikethroughs,
superscripts and subscripts, and more.
GNU Userv is a utility that allows one program to invoke another even
when only limited trust exists between them. This prevents the need
from having to first switch to a different user account to perform
Taylor UUCP is the GNU implementation of UUCP (Unix-to-Unix Copy),
a set of utilities for remotely transferring files, email and net news
The vc-dwim package contains two tools, vc-dwim and
vc-chlog. vc-dwim is a tool that simplifies the task of
maintaining a ChangeLog and using version control at the same time, for
example by printing a reminder when a file change has been described in
the ChangeLog but the file has not been added to the VC. vc-chlog scans
changed files and generates standards-compliant ChangeLog entries based
on the changes that it detects.
GNU VCDImager is a suite of programs for working with Video CDs and
Super Video CDs. It can be used for authoring, disassembling and
analyzing discs. It supports full playback control, segment play items,
automatic padding of MPEG streams on the fly, and extraction of Video
CDs into files.
V.E.R.A. (Virtual Entity of Relevant Acronyms) is a list of computing
acronyms distributed as an info document.
GNU WB is a disk-based, sorted, associative-array database package for
C, Scheme, Java and C#. Rather than being implemented via hashing,
WB uses B-trees, which are optimized for using the minimum number of
GNU Wdiff is a front-end to the diff program from Diffutils that allows
you to compare files on a word-by-word basis, where a word is anything
GNU Websocket4j is a Java library implementing the WebSocket
protocol. With it, you can build web applications that interact with
Java applications. The library includes both server- and client-side
GNU Wget is a non-interactive tool for fetching files using the HTTP,
HTTPS and FTP protocols. It can resume interrupted downloads, use
filename wild cards, supports proxies and cookies, and it can convert
absolute links in downloaded documents to relative links.
The which program finds the location of executables in PATH, with a
variety of options. It is an alternative to the shell type
GNU XaoS is a graphical program that generates fractal patterns and allows
you to zoom in and out of them infinitely in a fluid, continuous manner.
It also includes tutorials that help to explain how fractals are built.
It can generate many different fractal types such as the Mandelbrot set.
GNU XBoard is a graphical board for all varieties of chess, including
international chess, xiangqi (Chinese chess), shogi (Japanese chess) and
Makruk. Several lesser-known variants are also supported. It presents
a fully interactive graphical interface and it can load and save games
in the Portable Game Notation.
GNU Xlogmaster is a program with a graphical user interface that lets you
monitor your system logs in a convenient way. The logs can be displayed
with filters for highlighting or hiding lines. The program can also be
used to automate taking actions upon user-defined events.
GNU Xnee is a program that can record, replay and distribute user actions
in X11. It can be used to automate user interactions for testing or
GNU Xorriso is a tool for copying files to and from ISO 9660 Rock Ridge,
a.k.a. Compact Disc File System, filesystems and it allows session-wise
manipulation of them. It features a formatter and burner for CD, DVD
and BD. It can operate on existing ISO images or it can create new ones.
xorriso can then be used to copy files directly into or out of ISO files.
GNU Zile is a lightweight Emacs clone. It usage is similar to the
default Emacs configuration, but it carries a much lighter feature set.
See info about this list at top.