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

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.

Name Description Provides Latest release[Note 1]
Version Date
bash GNU's UNIX compatible shell bash 5.2.21[3] Edit this on Wikidata 2023-11-09
coreutils base commands 9.5[4] Edit this on Wikidata 2024-03-28
cpio archiving program cpio 2.15[5] Edit this on Wikidata 2024-01-14
diffutils contains utilities to compare files diff, cmp, diff3, sdiff 3.10[6] Edit this on Wikidata 2023-05-21
findutils contains search utilities find, locate, updatedb, xargs[7] 4.10.0[8] Edit this on Wikidata 2024-06-01
finger user information 1.37 1992-10-28
grep search for strings in files grep 3.11[9] Edit this on Wikidata 2023-05-13
groff document processing system (groff) groff 1.23.0[10] Edit this on Wikidata 2023-07-07
GRUB GRand Unified Bootloader grub 2.12[11] Edit this on Wikidata 2023-12-20
gzip compression program (gzip) gzip 1.13[12] Edit this on Wikidata 2023-08-19
hurd[Note 2] microkernel-based set of servers that perform the same function as a UNIX kernel 0.9[13] Edit this on Wikidata 2016-12-18
inetutils useful utils for networking ftp, telnet, rsh, rlogin, tftp 2.5[14] Edit this on Wikidata 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.9.4-gnu[15] Edit this on Wikidata 2024-06-12
plotutils useful utils for plotting to different devices graph, libplot, libplotter 2.6 Edit this on Wikidata 2009-09-27
readline useful library for reading command lines readline 8.2[16] Edit this on Wikidata 2022-09-26
screen a terminal multiplexer screen 4.9.1[17] Edit this on Wikidata 2023-08-17
sysutils[Note 3] system utilities to manage users, groups, passwords, shells add-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, write 0.1.6[18] 2009
tar archiver able to create and handle file archives in various formats tar 1.35[19] Edit this on Wikidata 2023-07-18
texinfo documentation system for producing online and printed manuals 7.1[20] Edit this on Wikidata 2023-10-18
time program to determine the duration of execution of a particular command time 1.9[21] Edit this on Wikidata 2018-03-12


  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

Main article: 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


Scientific software


A user page at a GNU MediaGoblin 0.2.0–based website




Business applications


See also


  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 (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. ^ 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 (29 December 2023). "inetutils-2.5 released". Retrieved 22 January 2024.
  15. ^ "6.9.4-gnu". 12 June 2024. Retrieved 13 June 2024.
  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.