# List of GNU packages

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

## General aspects of GNU packages

Summarising the situation in 2013, Richard Stallman identified nine aspects which generally apply to being a GNU package, but he noted that exceptions and flexibility are possible when there are good reasons:
* The package should say that it is a GNU package.
* It should be distributed via ftp.gnu.org, or another site offering access to everyone.
* The package's homepage should be on the GNU website.
* The developers must pay attention to making their software work well with other GNU packages.
* Documentation should be in Texinfo format, or in a format easily convertible to Texinfo.
* Should use GNU Guile for its extension language, but exceptions are explicitly possible in this regard.
* Should not recommend any non-free program, nor refer the user to any non-free documentation or non-free software.
* Use GNU terminology, including referring to GNU/Linux systems and free software in situations where other observers would write Linux and open source.
* 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 | Latest release |
| Name | Description | Provides | Version | Date |
| bash | GNU's UNIX compatible shell | bash | 5.2.37 | 2024-09-23 |
| coreutils | base commands | fileutils: chgrp, chown, chmod, cp, dd, df, dir, du, ln, ls, mkdir, mkfifo, mknod, mv, rm, etc. textutils: cat, cksum, head, tail, md5sum, nl, od, pr, tsort, join, wc, tac, paste, etc. shellutils: basename, chroot, date, dirname, echo, env, groups, hostname, nice, nohup, printf, sleep, etc. | 9.6 | 2025-01-17 |
| cpio | archiving program | cpio | 2.15 | 2024-01-14 |
| diffutils | contains utilities to compare files | diff, cmp, diff3, sdiff | 3.11 | 2025-02-02 |
| findutils | contains search utilities | find, locate, updatedb, xargs | 4.10.0 | 2024-06-01 |
| finger | user information | — | 1.37 | 1992-10-28 |
| grep | search for strings in files | grep | 3.11 | 2023-05-13 |
| groff | document processing system (groff) | groff | 1.23.0 | 2023-07-07 |
| GRUB | GRand Unified Bootloader | grub | 2.12 | 2023-12-20 |
| gzip | compression program (gzip) | gzip | 1.13 | 2023-08-19 |
| hurd | microkernel-based set of servers that perform the same function as a UNIX kernel | — | 0.9 | 2016-12-18 |
| inetutils | useful utils for networking | ftp, telnet, rsh, rlogin, tftp | 2.6 | 2025-02-21 |
| 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.13.5-gnu | 2025-03-01 |
| plotutils | useful utils for plotting to different devices | graph, libplot, libplotter | 2.6 | 2009-09-27 |
| readline | useful library for reading command lines | readline | 8.2 | 2022-09-26 |
| screen | a terminal multiplexer | screen | 5.0.0 | 2024-08-28 |
| sysutils | 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 | 2009 |
| tar | archiver able to create and handle file archives in various formats | tar | 1.35 | 2023-07-18 |
| texinfo | documentation system for producing online and printed manuals | — | 7.2 | 2024-12-28 |
| time | program to determine the duration of execution of a particular command | time | 1.9 | 2018-03-12 |