Difference between revisions of "GNU Project"

From ArchWiki
Jump to: navigation, search
m (Kernel: edit for readability)
(Other Tools: fix package)
(12 intermediate revisions by 4 users not shown)
Line 1: Line 1:
[[Category: Development (English)]] [[Category: Software (English)]]
+
[[Category:Development]] [[Category:System administration]]
{{i18n|GNU Project}}
+
[[es:GNU Project]]
{{expansion}}
+
 
+
 
{{Article summary start}}
 
{{Article summary start}}
 
{{Article summary text|This article describes the GNU Project and lists some of the essential tools that qualify Arch Linux as a GNU/Linux distribution.}}
 
{{Article summary text|This article describes the GNU Project and lists some of the essential tools that qualify Arch Linux as a GNU/Linux distribution.}}
 
{{Article summary heading|Overview}}
 
{{Article summary heading|Overview}}
{{Article summary text|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.}}
+
{{Article summary text|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.}}
 
{{Article summary heading|Related}}
 
{{Article summary heading|Related}}
 
{{Article summary wiki|Arch Linux}}
 
{{Article summary wiki|Arch Linux}}
{{Article summary wiki|Beginners' Guide}}
 
{{Article summary wiki|Arch User Repository}}
 
{{Article summary wiki|Arch Compared to Other Distributions}}
 
 
{{Article summary wiki|Core Utilities}}
 
{{Article summary wiki|Core Utilities}}
 
{{Article summary end}}
 
{{Article summary end}}
Line 25: Line 20:
 
== The Base System ==
 
== 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 other useful command line tools. The minimal install normally contains the entire [http://www.archlinux.org/groups/i686/base/ base group].
+
At the end of the installation process, an Arch system is nothing more than the Linux Kernel, the GNU toolchain, and a few other useful command line tools. The minimal install normally contains the entire {{Grp|base}} group.
  
 
=== Kernel ===
 
=== Kernel ===
Line 34: Line 29:
 
'''bootloader:''' [[GRUB]] is the standard bootloader for Arch Linux, which is now maintained by [http://www.gnu.org/software/grub/ GNU].
 
'''bootloader:''' [[GRUB]] is the standard bootloader for Arch Linux, which is now maintained by [http://www.gnu.org/software/grub/ GNU].
  
'''C library:''' {{Package Official|glibc}} is ''"the library which defines the `system calls' and other basic facilities such as open, malloc, printf, exit..."''[http://www.gnu.org/software/libc/  ]
+
'''C library:''' {{Pkg|glibc}} is ''"the library which defines the `system calls' and other basic facilities such as open, malloc, printf, exit..."''[http://www.gnu.org/software/libc/  ]
  
'''binary utilities:''' {{Package Official|binutils}} provides the ''"collection of programming tools for the manipulation of object code in various object file formats"''[http://en.wikipedia.org/wiki/GNU_Binutils  ].  
+
'''binary utilities:''' {{Pkg|binutils}} provides the ''"collection of programming tools for the manipulation of object code in various object file formats"''[http://en.wikipedia.org/wiki/GNU_Binutils  ].  
  
 
'''shell:''' [[Bash]], another GNU based application[http://www.gnu.org/software/bash/  ], is the default shell.
 
'''shell:''' [[Bash]], another GNU based application[http://www.gnu.org/software/bash/  ], is the default shell.
  
'''core utilities:''' The {{Package Official|coreutils}} package contains ''"the basic file, shell and text manipulation utilities"''[http://www.gnu.org/software/coreutils/  ].
+
'''core utilities:''' The {{Pkg|coreutils}} package contains ''"the basic file, shell and text manipulation utilities"''[http://www.gnu.org/software/coreutils/  ].
  
'''compression:''' {{Package Official|Gzip}} and [[Tar]] handle many packages for GNU/Linux systems. For example, those from the [[Arch User Repository]] come as [http://www.gnu.org/software/gzip/ Gzipped] [http://www.gnu.org/software/tar/ tarballs].
+
'''compression:''' {{Pkg|gzip}} and [[Tar]] handle many packages for GNU/Linux systems. For example, those from the [[Arch User Repository]] come as [http://www.gnu.org/software/gzip/ Gzipped] [http://www.gnu.org/software/tar/ tarballs].
  
 
== Development Tools ==
 
== Development Tools ==
  
Though not necessary, users have the option of installing the [http://www.archlinux.org/groups/i686/base-devel/ base-devel] group for some software development tools. This group is a requirement for building packages from the AUR.
+
Though not necessary, users have the option of installing the {{grp|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 [[Wikipedia:GNU toolchain|GNU toolchain]], a ''"suite of tools used in a serial manner [...] for developing applications and operating systems"''. The key components of this toolchain are:
 
Among '''base-devel''' are several members of the [[Wikipedia:GNU toolchain|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:''' {{Package Official|make}}
+
'''compilation and build:''' {{Pkg|make}}
  
'''compiler collection:''' {{Package Official|gcc}}
+
'''compiler collection:''' {{Pkg|gcc}}
  
'''linker, assembler and other tools:''' {{Package Official|binutils}}
+
'''linker, assembler and other tools:''' {{Pkg|binutils}}
  
'''parser generator:''' {{Package Official|bison}}
+
'''parser generator:''' {{Pkg|bison}}
  
'''macro processor:''' {{Package Official|m4}}
+
'''macro processor:''' {{Pkg|m4}}
  
 
[[Wikipedia:GNU build system|GNU Build System]] (autotools):  
 
[[Wikipedia:GNU build system|GNU Build System]] (autotools):  
  
:'''automatically configure source code:''' {{Package Official|autoconf}}
+
:'''automatically configure source code:''' {{Pkg|autoconf}}
  
:'''automatically create Makefiles:''' {{Package Official|automake}}
+
:'''automatically create Makefiles:''' {{Pkg|automake}}
  
:'''library support script:''' {{Package Official|libtool}}
+
:'''library support script:''' {{Pkg|libtool}}
  
 
== Other Tools ==
 
== Other Tools ==
  
Many other optional GNU tools are available in the repositories:
+
Many other optional GNU tools are available in the [[Official Repositories|official repositories]]:
  
 
'''widget toolkit:''' [[GTK+]]
 
'''widget toolkit:''' [[GTK+]]
 +
 +
'''desktop environment:''' [[GNOME]]
 +
 +
'''flash player:''' {{Pkg|gnash-gtk}}
 +
 +
'''spreadsheet:''' [[Gnumeric]]
  
 
'''image editor:''' [[Multimedia#GIMP|GIMP]]
 
'''image editor:''' [[Multimedia#GIMP|GIMP]]

Revision as of 11:43, 3 November 2013

Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary text Template:Article summary heading Template:Article summary wiki Template:Article summary wiki Template:Article summary end

From http://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!”

Since Arch Linux is a GNU/Linux based distribution, many of its basic tools are from the GNU Project. This article will give a brief description of the core components, as well as some other useful applications.

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 other useful 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

bootloader: GRUB is the standard bootloader for Arch Linux, which is now maintained by GNU.

C library: glibc is "the library which defines the `system calls' and other basic facilities such as open, malloc, printf, exit..."[1]

binary utilities: binutils provides the "collection of programming tools for the manipulation of object code in various object file formats"[2].

shell: Bash, another GNU based application[3], is the default shell.

core utilities: The coreutils package contains "the basic file, shell and text manipulation utilities"[4].

compression: gzip and Tar handle many packages for GNU/Linux systems. For example, those from the Arch User Repository come as Gzipped tarballs.

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

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:

widget toolkit: GTK+

desktop environment: GNOME

flash player: gnash-gtk

spreadsheet: Gnumeric

image editor: GIMP

full-screen window manager: GNU Screen

Links

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