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

What it means to be a GNU package

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.21 [3]   OOjs UI icon edit-ltr-progressive.svg 2023-11-09
coreutils base commands9.4 [4]   OOjs UI icon edit-ltr-progressive.svg 2023-08-29
cpio archiving programcpio2.14 [5]   OOjs UI icon edit-ltr-progressive.svg 2023-05-01
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.9.0 [8]   OOjs UI icon edit-ltr-progressive.svg 2022-02-02
finger user information1.371992-10-28
grep search for strings in filesgrep3.11 [9]   OOjs UI icon edit-ltr-progressive.svg 2023-05-13
groff document processing system (groff)groff1.23.0 [10]   OOjs UI icon edit-ltr-progressive.svg 2023-07-07
GRUB GRand Unified Bootloadergrub2.12 [11]   OOjs UI icon edit-ltr-progressive.svg 2023-12-20
gzip compression program (gzip)gzip1.13 [12]   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 [13]   OOjs UI icon edit-ltr-progressive.svg 2016-12-18
inetutils useful utils for networking ftp, telnet, rsh, rlogin, tftp 2.4 [14]   OOjs UI icon edit-ltr-progressive.svg 2022-10-25
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.6.8-gnu [15]   OOjs UI icon edit-ltr-progressive.svg 2023-12-20
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 [16]   OOjs UI icon edit-ltr-progressive.svg 2022-09-26
screen a terminal multiplexerscreen4.9.1 [17]   OOjs UI icon edit-ltr-progressive.svg 2023-08-17
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 [18] 2009
tar archiver able to create and handle file archives in various formatstar1.35 [19]   OOjs UI icon edit-ltr-progressive.svg 2023-07-18
texinfo documentation system for producing online and printed manuals7.1 [20]   OOjs UI icon edit-ltr-progressive.svg 2023-10-18
time program to determine the duration of execution of a particular commandtime1.9 [21]   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 subsystem for Windows machines

Cygwin is a Unix-like environment and command-line interface for Microsoft Windows. Cygwin's purpose is expressed in its motto: "Get that Linux feeling – on Windows".

<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, 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">Automake</span> Programming tool to automate parts of the compilation process

In software development, GNU Automake is a programming tool to automate parts of the compilation process. It eases usual compilation problems. For example, it points to needed dependencies.

<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.

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 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.

This article provides basic comparisons for notable text editors. More feature details for text editors are available from the Category of text editor features and from the individual products' articles. This article may not be up-to-date or necessarily all-inclusive.

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

JED is a text editor that makes extensive use of the S-Lang library. 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 free software text editor. It was created 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. Its tag line is "the extensible self-documenting text editor."

<span class="mw-page-title-main">GNOME</span> Desktop environment for Linux and other Unix-like systems

GNOME, originally an acronym for GNU Network Object Model Environment, is a free and open-source desktop environment for Linux and other Unix-like operating systems.

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.

<span class="mw-page-title-main">ROCm</span> Parallel computing platform: GPGPU libraries and application programming interface

ROCm is an Advanced Micro Devices (AMD) software stack for graphics processing unit (GPU) programming. ROCm spans several domains: general-purpose computing on graphics processing units (GPGPU), high performance computing (HPC), heterogeneous computing. It offers several programming models: HIP, OpenMP/Message Passing Interface (MPI), OpenCL.

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. "bash-5.2.21.tar.gz". 9 November 2023. Retrieved 9 November 2023.
  4. Pádraig Brady (29 August 2023). "coreutils-9.4 released [stable]" . Retrieved 29 August 2023.
  5. Sergey Poznyakoff (1 May 2023). "cpio-2.14 released [stable]" . Retrieved 9 May 2023.
  6. Jim Meyering (21 May 2023). "diffutils-3.10 released" . Retrieved 22 May 2023.
  7. "Findutils". www.gnu.org. Retrieved 2019-04-15.
  8. "GNU findutils 4.9.0 released". 2 February 2022. Retrieved 2 February 2022.
  9. Jim Meyering (13 May 2023). "grep-3.11 released" . Retrieved 13 May 2023.
  10. Bertrand Garrigues (7 July 2023). "Groff version 1.23.0" . Retrieved 2 August 2023.
  11. Daniel Kiper (20 December 2023). "GRUB 2.12 released" . Retrieved 20 December 2023.
  12. Jim Meyering (19 August 2023). "gzip-1.13 released [stable]" . Retrieved 20 August 2023.
  13. "GNU Hurd 0.9, GNU Mach 1.8, GNU MIG 1.8 released" . Retrieved 11 May 2018.
  14. Simon Josefsson (25 October 2022). "inetutils-2.4 released" . Retrieved 26 October 2022.
  15. "6.6.8-gnu". 20 December 2023. Retrieved 21 December 2023.
  16. Chet Ramey (26 September 2022). "Readline-8.2 Release available" . Retrieved 26 September 2022.
  17. Alex Naumov (17 August 2023). "GNU Screen v.4.9.1" . Retrieved 18 August 2023.
  18. subversion repository NEWS file of sysutils retrieved 2013-07-23
  19. Sergey Poznyakoff (18 July 2023). "tar-1.35 released [stable]" . Retrieved 26 July 2023.
  20. Gavin Smith (18 October 2023). "Texinfo 7.1 released" . Retrieved 18 October 2023.
  21. Assaf Gordon (12 March 2018). "GNU Time 1.9 released" . Retrieved 27 September 2019.
  22. "Release of version 1.5 of complexity". 29 February 2016. Retrieved 2 March 2016.
  23. "GNUnited Nations". GNU.org. Free Software Foundation, Inc. Retrieved 19 December 2018.
  24. "Midnight Commander".
  25. "GNU Mailutils" . Retrieved 7 January 2024.
  26. "GNU LibreJS". The Free Software Foundation . Retrieved December 8, 2014.
  27. "GNU Software". GNU.org. Retrieved September 24, 2015.
  28. "GNU Taler - Taxable Anonymous Libre Electronic Reserve" . Retrieved September 24, 2015.
  29. 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.
  30. Marston, Tim (2013-06-07). "GNU Typist 2.9.3 released" (Mailing list). info-gnu. Retrieved 2013-06-09.
  31. "GNU remotecontrol". directory.fsf.org . FSF. 30 September 2013.
  32. "Foliot is now part of GNU and becomes GNU Foliot". Savannah. 27 February 2016. Retrieved 2 March 2016.
  33. "GNU Taler 0.0.0 Released: GNU Tries to Get into Electronic Payments".
  34. "GNU FreeFont". GNU.org.