GNU Project - ArchWiki

# GNU Project

Related articles

- Arch Linux
- Core Utilities

This article or section needs language, wiki syntax or style improvements.

Reason: Add Template:App (Discuss in Talk:GNU Project#)

From https://www.gnu.org/:

  The GNU Project was launched in 1984 to develop the GNU operating system, a complete Unix-like operating system which is free software—software which respects your freedom. Unix-like operating systems are built from a software collection of applications, libraries, and developer tools—plus a program to allocate resources and talk to the hardware, known as a kernel. [...] The combination of GNU and Linux is the GNU/Linux operating system, now used by millions and sometimes incorrectly called simply “Linux”. The name “GNU” is a recursive acronym for “GNU's Not Unix!”

The aim of the GNU Project is to produce a totally free operating system. While the GNU kernel has not reached a stable version, the project has resulted in the creation of many tools that power most Unix-like operating systems. Arch Linux is such a system, using GNU software like the GRUB bootloader, Bash shell, and numerous other utilities and libraries.

## The Base System

At the end of the installation process, an Arch system is nothing more than the Linux Kernel, the GNU toolchain, and a few command line tools. The minimal install normally contains the entire base group.

### Kernel

While Hurd, the GNU Kernel, is under active development, there is not yet a stable version. For this reason Arch and most other GNU based systems use the Linux Kernel. The Arch Hurd Project aims to port Arch Linux to the Hurd kernel.

### Software Collection

- GRUB — GRUB is the bootloader from the GNU project.

  https://www.gnu.org/software/grub/ || grub

- glibc — glibc is GNU's implementation of the C library. Despite its name, it also supports C++ and indirectly other languages. It defines the system calls and other basic facilities such as open, malloc, printf, exit.

  https://www.gnu.org/software/libc/ || glibc

- binutils — It is a collection of binary tools.

  https://www.gnu.org/software/binutils/ || binutils

- bash — It is an sh-compatible shell that incorporates useful features from the Korn shell (ksh) and C shell (csh).

  https://www.gnu.org/software/bash/ || bash

- coreutils — coreutils provides the basic file, shell and text manipulation utilities of the GNU operating system.

  https://www.gnu.org/software/coreutils/ || coreutils

- gzip — gzip is both a file format and a software for compression and decompression.

  https://www.gnu.org/software/gzip/ || gzip

- tar — It provides the ability to create or decompress tar archives, as well as various other kinds of manipulation.

  https://www.gnu.org/software/tar/ || tar

## Development Tools

Though not necessary, users have the option of installing the base-devel group for some software development tools. This group is a requirement for building packages from the Arch User Repository.

Among base-devel are several members of the GNU toolchain, a "suite of tools used in a serial manner [...] for developing applications and operating systems". The key components of this toolchain are:

compilation and build: make

compiler collection: gcc

linker, assembler and other tools: binutils

  w:gold (linker), w:GNU Binutils, w:GNU linker

parser generator: bison

macro processor: m4

GNU Build System (autotools):

  automatically configure source code: autoconf

  automatically create Makefiles: automake

  library support script: libtool

## Other Tools

Many other optional GNU tools are available in the official repositories:

Desktop environment: GNOME

Full-screen window manager: GNU Screen

Partition Manager: GNU Parted

Image editor: GIMP

Spreadsheet: Gnumeric

Widget toolkit: GTK+

## See also

For a list of all current GNU projects, see All GNU Packages.

Categories:

- Development
- System administration

Hidden category:

- Pages or sections flagged with Template:Style