List of GNU packages

Last updated

A number of notable software packages were developed for, or are maintained by, the Free Software Foundation as part of the GNU Project.

Contents

General aspects of GNU packages

Summarising the situation in 2013, Richard Stallman identified nine aspects which generally apply to being a GNU package, [1] but he noted that exceptions and flexibility are possible when there are good reasons: [2]

  1. The package should say that it is a GNU package.
  2. It should be distributed via ftp.gnu.org, or another site offering access to everyone.
  3. The package's homepage should be on the GNU website.
  4. The developers must pay attention to making their software work well with other GNU packages.
  5. Documentation should be in Texinfo format, or in a format easily convertible to Texinfo.
  6. Should use GNU Guile for its extension language, but exceptions are explicitly possible in this regard.
  7. Should not recommend any non-free program, nor refer the user to any non-free documentation or non-free software.
  8. Use GNU terminology, including referring to GNU/Linux systems and free software in situations where other observers would write Linux and open source.
  9. The maintainer should be contactable, at least infrequently, to discuss problems in the software or fixing compatibility issues.

Base system

There is no official "base system" of the GNU operating system. GNU was designed to be a replacement for Unix operating systems of the 1980s and used the POSIX standards as a guide, but either definition would give a much larger "base system". The following list is instead a small set of GNU packages which seem closer to being "core" packages than being in any of the further down sections. Inclusions (such as plotutils) and exclusions (such as the C standard library) are of course debatable.

NameDescriptionProvidesLatest release [Note 1]
VersionDate
bash GNU's UNIX compatible shellbash5.2.32 [3]   OOjs UI icon edit-ltr-progressive.svg 2024-08-02
coreutils base commands9.5 [4]   OOjs UI icon edit-ltr-progressive.svg 2024-03-28
cpio archiving programcpio2.15 [5]   OOjs UI icon edit-ltr-progressive.svg 2024-01-14
diffutils contains utilities to compare files diff, cmp, diff3, sdiff 3.10 [6]   OOjs UI icon edit-ltr-progressive.svg 2023-05-21
findutils contains search utilities find, locate, updatedb, xargs [7] 4.10.0 [8] [9]   OOjs UI icon edit-ltr-progressive.svg 2024-06-01
finger user information1.371992-10-28
grep search for strings in filesgrep3.11 [10]   OOjs UI icon edit-ltr-progressive.svg 2023-05-13
groff document processing system (groff)groff1.23.0 [11]   OOjs UI icon edit-ltr-progressive.svg 2023-07-07
GRUB GRand Unified Bootloadergrub2.12 [12]   OOjs UI icon edit-ltr-progressive.svg 2023-12-20
gzip compression program (gzip)gzip1.13 [13]   OOjs UI icon edit-ltr-progressive.svg 2023-08-19
hurd [Note 2] microkernel-based set of servers that perform the same function as a UNIX kernel0.9 [14]   OOjs UI icon edit-ltr-progressive.svg 2016-12-18
inetutils useful utils for networking ftp, telnet, rsh, rlogin, tftp 2.5 [15]   OOjs UI icon edit-ltr-progressive.svg 2023-12-29
linux-libre kernel that is maintained from modified versions of Linux to remove any software that does not include its source code, has its source code obfuscated, or is released under proprietary licenses 6.11-gnu [16]   OOjs UI icon edit-ltr-progressive.svg 2024-09-15
plotutils useful utils for plotting to different devices graph, libplot, libplotter 2.6  OOjs UI icon edit-ltr-progressive.svg 2009-09-27
readline useful library for reading command linesreadline8.2 [17]   OOjs UI icon edit-ltr-progressive.svg 2022-09-26
screen a terminal multiplexerscreen5.0.0 [18]   OOjs UI icon edit-ltr-progressive.svg 2024-08-28
sysutils [Note 3] system utilities to manage users, groups, passwords, shellsadd-shell, chage, chfn, chgroup, chgrpmem, chpasswd, chsh, chuser, cppw, expiry, gpasswd, grpck, gshadow, hwclock, isosize, last, lastlog, login, lsage, lsgroup, lsuser, mkgroup, mkuser, nologin, passwd, pwck, remove-shell, rmgroup, rmuser, setpwnam, vipw, wall, write0.1.6 [19] 2009
tar archiver able to create and handle file archives in various formatstar1.35 [20]   OOjs UI icon edit-ltr-progressive.svg 2023-07-18
texinfo documentation system for producing online and printed manuals7.1.1 [21]   OOjs UI icon edit-ltr-progressive.svg 2024-09-07
time program to determine the duration of execution of a particular commandtime1.9 [22]   OOjs UI icon edit-ltr-progressive.svg 2018-03-12

Notes

  1. Stable versions. Note that some distros (e.g., Gentoo) use some development versions in case the stable versions are a bit old.
  2. Note that because GNU Hurd is under active development, there is no stable version. The Hurd is distributed through version control systems.
  3. No stable version yet. Current version is alpha and is not suitable for use in production systems.

Software development

The software listed below is generally useful to software developers and other computer programmers.

GNU toolchain

Other libraries and frameworks

The following libraries and software frameworks are often used in combination with the basic toolchain tools above to build software. (For libraries specifically designed to implement GUI desktops, see Graphical desktop.)

Other compilers and interpreters

The following packages provide compilers and interpreters for programming languages beyond those included in the GNU Compiler Collection.

Other developer tools

User applications

The software listed below is generally useful to users not specifically engaged in software development.

Graphical desktop

The following packages provide GUI desktop environments, window managers, and associated graphics libraries.

General system administration

Database

Scientific software

Internet

A user page at a GNU MediaGoblin 0.2.0-based website Firefox.9.0.1.shikidust.gmgup.en.png
A user page at a GNU MediaGoblin 0.2.0–based website

Office

Multimedia

Games

Business applications

Fonts

See also

Related Research Articles

<span class="mw-page-title-main">Cygwin</span> Unix-like environment for Windows

Cygwin is a free and open-source Unix-like environment and command-line interface (CLI) for Microsoft Windows. The project also provides a software repository containing many open-source packages. Cygwin allows source code for Unix-like operating systems to be compiled and run on Windows. Cygwin provides native integration of Windows-based applications.

<span class="mw-page-title-main">Emacs Lisp</span> Dialect of Lisp in the Emacs text editor

Emacs Lisp is a Lisp dialect made for Emacs. It is used for implementing most of the editing functionality built into Emacs, the remainder being written in C, as is the Lisp interpreter.

<span class="mw-page-title-main">GNU</span> Free software collection

GNU is an extensive collection of free software, which can be used as an operating system or can be used in parts with other operating systems. The use of the completed GNU tools led to the family of operating systems popularly known as Linux. Most of GNU is licensed under the GNU Project's own General Public License (GPL).

<span class="mw-page-title-main">GNU Debugger</span> Source-level debugger

The GNU Debugger (GDB) is a portable debugger that runs on many Unix-like systems and works for many programming languages, including Ada, Assembly, C, C++, D, Fortran, Haskell, Go, Objective-C, OpenCL C, Modula-2, Pascal, Rust, and partially others.

An integrated development environment (IDE) is a software application that provides comprehensive facilities for software development. An IDE normally consists of at least a source-code editor, build automation tools, and a debugger. Some IDEs, such as IntelliJ IDEA, Eclipse and Lazarus contain the necessary compiler, interpreter or both; others, such as SharpDevelop and NetBeans, do not.

<span class="mw-page-title-main">XEmacs</span>

XEmacs is a graphical- and console-based text editor which runs on almost any Unix-like operating system as well as Microsoft Windows. XEmacs is a fork, based on a version of GNU Emacs from the late 1980s. Any user can download, use, and modify XEmacs as free software available under the GNU General Public License version 2 or any later version.

man page Unix software documentation

A man page is a form of software documentation usually found on a Unix or Unix-like operating system. Topics covered include computer programs, formal standards and conventions, and even abstract concepts. A user may invoke a man page by issuing the man command.

<span class="mw-page-title-main">GNU Project</span> Free software project

The GNU Project is a free software, mass collaboration project announced by Richard Stallman on September 27, 1983. Its goal is to give computer users freedom and control in their use of their computers and computing devices by collaboratively developing and publishing software that gives everyone the rights to freely run the software, copy and distribute it, study it, and modify it. GNU software grants these rights in its license.

<span class="mw-page-title-main">MinGW</span> Free and open-source software for developing applications in Microsoft Windows

MinGW, formerly mingw32, is a free and open source software development environment to create Microsoft Windows applications.

<span class="mw-page-title-main">Texinfo</span> Markup language for documentation

Texinfo is a typesetting syntax used for generating documentation in both on-line and printed form with a single source file. It is implemented by a computer program released as free software of the same name, created and made available by the GNU Project from the Free Software Foundation.

<span class="mw-page-title-main">Macintosh Programmer's Workshop</span> Software development package for the Classic Mac OS

Macintosh Programmer's Workshop (MPW) is a software development environment for the Classic Mac OS operating system, written by Apple Computer. For Macintosh developers, it was one of the primary tools for building applications for System 7.x and Mac OS 8.x and 9.x. Initially MPW was available for purchase as part of Apple's professional developers program, but Apple made it a free download after it was superseded by CodeWarrior. On Mac OS X it was replaced by the Project Builder IDE, which eventually became Xcode.

The GNU toolchain is a broad collection of programming tools produced by the GNU Project. These tools form a toolchain used for developing software applications and operating systems.

The GNU Core Utilities or coreutils is a package of GNU software containing implementations for many of the basic tools, such as cat, ls, and rm, which are used on Unix-like operating systems.

<span class="mw-page-title-main">GNU Guile</span> Extension language

GNU Ubiquitous Intelligent Language for Extensions is the preferred extension language system for the GNU Project and features an implementation of the programming language Scheme. Its first version was released in 1993. In addition to large parts of Scheme standards, Guile Scheme includes modularized extensions for many different programming tasks.

<span class="mw-page-title-main">GNU Binutils</span> GNU software development tools for executable code

The GNU Binary Utilities, or binutils, is a collection of programming tools maintained by the GNU Project for working with executable code including assembly, linking and many other development operations.

<span class="mw-page-title-main">JED (text editor)</span>

JED is a text editor that makes extensive use of the S-Lang programming library and language. It is highly cross-platform compatible; JED runs on Windows and all flavors of Linux and Unix. Older versions are available for DOS. It is also very lightweight, which makes it an ideal editor for older systems, embedded systems, etc. JED's Emacs mode is one of the most faithful emulations available.

<span class="mw-page-title-main">Vala (programming language)</span> Programming language

Vala is an object-oriented programming language with a self-hosting compiler that generates C code and uses the GObject system.

<span class="mw-page-title-main">GNU Emacs</span> GNU version of the Emacs text editor

GNU Emacs is a text editor and suite of free software tools. Its development began in 1984 by GNU Project founder Richard Stallman, based on the Emacs editor developed for Unix operating systems. GNU Emacs has been a central component of the GNU project and a flagship project of the free software movement.

The Java Development Kit (JDK) is a distribution of Java technology by Oracle Corporation. It implements the Java Language Specification (JLS) and the Java Virtual Machine Specification (JVMS) and provides the Standard Edition (SE) of the Java Application Programming Interface (API). It is derivative of the community driven OpenJDK which Oracle stewards. It provides software for working with Java applications. Examples of included software are the Java virtual machine, a compiler, performance monitoring tools, a debugger, and other utilities that Oracle considers useful for Java programmers.

References

  1. Stallman, Richard (April 3, 2013). "Re: On the subject of Git, Bazaar, and the future of Emacs development". emacs-devel (Mailing list). Retrieved 25 August 2014.
  2. Stallman, Richard (April 3, 2013). "Re: On the subject of Git, Bazaar, and the future of Emacs development". emacs-devel (Mailing list). Retrieved 25 August 2014.
  3. "Index of /gnu/bash" . Retrieved 11 August 2024.
  4. Pádraig Brady (28 March 2024). "coreutils-9.5 released [stable]" . Retrieved 28 March 2024.
  5. Sergey Poznyakoff (14 January 2024). "cpio-2.15 released" . Retrieved 14 January 2024.
  6. Jim Meyering (21 May 2023). "diffutils-3.10 released" . Retrieved 22 May 2023.
  7. "Findutils". www.gnu.org. Retrieved 2019-04-15.
  8. Bernhard Voelker (1 June 2024). "GNU findutils 4.10.0 released" . Retrieved 2 June 2024.
  9. Bernhard Voelker (2 July 2024). "GNU findutils 4.10.0 released" . Retrieved 3 July 2024.
  10. Jim Meyering (13 May 2023). "grep-3.11 released" . Retrieved 13 May 2023.
  11. Bertrand Garrigues (7 July 2023). "Groff version 1.23.0" . Retrieved 2 August 2023.
  12. Daniel Kiper (20 December 2023). "GRUB 2.12 released" . Retrieved 20 December 2023.
  13. Jim Meyering (19 August 2023). "gzip-1.13 released [stable]" . Retrieved 20 August 2023.
  14. "GNU Hurd 0.9, GNU Mach 1.8, GNU MIG 1.8 released" . Retrieved 11 May 2018.
  15. Simon Josefsson (29 December 2023). "inetutils-2.5 released" . Retrieved 22 January 2024.
  16. "GNU Linux-libre 6.11-gnu". 16 September 2024. Retrieved 16 September 2024.
  17. Chet Ramey (26 September 2022). "Readline-8.2 Release available" . Retrieved 26 September 2022.
  18. Alexander Naumov (29 August 2024). "GNU Screen v.5.0.0 is released" . Retrieved 29 August 2024.
  19. subversion repository NEWS file of sysutils retrieved 2013-07-23
  20. Sergey Poznyakoff (18 July 2023). "tar-1.35 released [stable]" . Retrieved 26 July 2023.
  21. Gavin Smith (7 September 2024). "Texinfo 7.1.1 released" . Retrieved 7 September 2024.
  22. Assaf Gordon (12 March 2018). "GNU Time 1.9 released" . Retrieved 27 September 2019.
  23. "Release of version 1.5 of complexity". 29 February 2016. Retrieved 2 March 2016.
  24. "GNUnited Nations". GNU.org. Free Software Foundation, Inc. Retrieved 19 December 2018.
  25. "Midnight Commander".
  26. "GNU Mailutils" . Retrieved 7 January 2024.
  27. "GNU LibreJS". The Free Software Foundation . Retrieved December 8, 2014.
  28. "GNU Software". GNU.org. Retrieved September 24, 2015.
  29. "GNU Taler - Taxable Anonymous Libre Electronic Reserve" . Retrieved September 24, 2015.
  30. Greve, Georg C. F. (2001). "Brave GNU World - Issue #26". gnu.org. Retrieved 2022-08-14. The ancestry-line of the GNU Pipo BBS reaches over YAWK ("Yet Another Wersion of Citadel") back to Citadel, although it is completely independent code-wise. In fact it was a disagreement with Kenneth Haglund, author of YAWK, because of copyright-problems that triggered the development of the GNU Pipo BBS. The original development-team were Grégory Vandenbrouck and Sébastien Aperghis-Tramoni who worked on the GNU Pipo BBS with help from volunteers like Sébastien Bonnefoy.
  31. Marston, Tim (2013-06-07). "GNU Typist 2.9.3 released" (Mailing list). info-gnu. Retrieved 2013-06-09.
  32. "GNU remotecontrol". directory.fsf.org . FSF. 30 September 2013.
  33. "Foliot is now part of GNU and becomes GNU Foliot". Savannah. 27 February 2016. Retrieved 2 March 2016.
  34. "GNU Taler 0.0.0 Released: GNU Tries to Get into Electronic Payments".
  35. "GNU FreeFont". GNU.org.