Menu
Home Explore People Places Arts History Plants & Animals Science Life & Culture Technology
On this page
GNU Project
Free software project

The GNU Project, announced by Richard Stallman in 1983, is a free software and mass collaboration initiative aimed at giving users control over their computing devices. Its goal is to develop software granting freedom to run, modify, and distribute it, enforced through its license. The project focused on creating a free operating system called GNU— a recursive acronym meaning “GNU's not Unix!”—based on Unix. In 1991, the external development of the Linux kernel by Linus Torvalds combined with GNU tools enabled the first fully free software OS, commonly referred to as Linux. The project continues with software development, promotion, and activism.

Related Image Collections Add Image
We don't have any YouTube videos related to GNU Project yet.
We don't have any PDF documents related to GNU Project yet.
We don't have any Books related to GNU Project yet.
We don't have any archived web articles related to GNU Project yet.

Origins

Richard Stallman announced his intent to start coding the GNU Project in a Usenet message in September 1983.7 Despite never having used Unix prior, Stallman felt that it was the most appropriate system design to use as a basis for the GNU Project, as it was portable and "fairly clean".8

When the GNU Project first started they had an Emacs text editor with Lisp for writing editor commands, a source level debugger, a yacc-compatible parser generator, and a linker.9 The GNU system required its own C compiler and tools to be free software, so these also had to be developed. By June 1987, the project had accumulated and developed free software for an assembler, an almost finished portable optimizing C compiler (GCC), an editor (GNU Emacs), and various Unix utilities (such as ls, grep, awk, make and ld).10 They had an initial kernel that needed more updates.

Once the kernel and the compiler were finished, GNU was able to be used for program development. The main goal was to create many other applications to be like the Unix system. GNU was able to run Unix programs but was not identical to it. GNU incorporated longer file names, file version numbers, and a crash-proof file system. The GNU Manifesto was written to gain support and participation from others for the project. Programmers were encouraged to take part in any aspect of the project that interested them. People could donate funds, computer parts, or even their own time to write code and programs for the project.11

The origins and development of most aspects of the GNU Project (and free software in general) are shared in a detailed narrative in the Emacs help system. (C-h g runs the Emacs editor command describe-gnu-project.) It is the same detailed history as at their web site.

GNU Manifesto

Main article: GNU Manifesto

The GNU Manifesto was written by Richard Stallman to gain support and participation in the GNU Project. In the GNU Manifesto, Stallman listed four freedoms essential to software users: freedom to run a program for any purpose, freedom to study the mechanics of the program and modify it, freedom to redistribute copies, and freedom to improve and change modified versions for public use.1213 To implement these freedoms, users needed full access to the source code. To ensure code remained free and provide it to the public, Stallman created the GNU General Public License (GPL), which allowed software and the future generations of code derived from it to remain free for public use.

Philosophy and activism

Main article: Free software movement

Although most of the GNU Project's output is technical in nature, it was launched as a social, ethical, and political initiative. As well as producing software and licenses, the GNU Project has published a number of writings, the majority of which were authored by Richard Stallman.

Free software

The GNU Project uses software that is free for users to copy, edit, and distribute. It is free in the sense that users can change the software to fit individual needs. The way programmers obtain the free software depends on where they get it. The software could be provided to the programmer from friends or over the Internet, or the company a programmer works for may purchase the software.

Funding

Proceeds from Free Software Foundation associate members, purchases, and donations support the GNU Project.14

Copyleft

Main article: Copyleft

Copyleft is what helps maintain free use of this software among other programmers. Copyleft gives the legal right to everyone to use, edit, and redistribute programs or programs' code as long as the distribution terms do not change. As a result, any user who obtains the software legally has the same freedoms as the rest of its users do.

The GNU Project and the Free Software Foundation sometimes differentiate between "strong" and "weak" copyleft. "Weak" copyleft programs typically allow distributors to link them together with non-free programs, while "strong" copyleft strictly forbids this practice. Most of the GNU Project's output is released under a strong copyleft, although some is released under a weak copyleft or a lax, push-over free software license.1516

Operating system development

Main article: GNU

The first goal of the GNU Project was to create a whole free-software operating system. Because UNIX was already widespread and ran on more powerful machines, compared to contemporary CP/M or MS-DOS machines of time,17 it was decided it would be a Unix-like operating system. Richard Stallman later commented that he considered MS-DOS "a toy".18

By 1992, the GNU Project had completed all of the major operating system utilities, but had not completed their proposed operating system kernel, GNU Hurd. With the release of the Linux kernel, started independently by Linus Torvalds in 1991, and released under the GPLv2 with version 0.12 in 1992, for the first time it was possible to run an operating system composed completely of free software. Though the Linux kernel is not part of the GNU Project, it was developed using GCC and other GNU programming tools and was released as free software under the GNU General Public License.19 Most compilation of the Linux kernel is still done with GNU toolchains, but it is currently possible to use the Clang compiler and the LLVM toolchain for compilation.20

As of present, the GNU Project has not released a version of GNU/Hurd that is suitable for production environments since the commencement of the GNU/Hurd project over 34 years ago.21

GNU/Linux

A stable version (or variant) of GNU can be run by combining the GNU packages with the Linux kernel, making a functional Unix-like system. The GNU Project calls this GNU/Linux, and the defining features are the combination of:

Within the GNU website, a list of projects is laid out and each project has specifics for what type of developer is able to perform the task needed for a certain piece of the GNU Project. The skill level ranges from project to project but anyone with background knowledge in programming is encouraged to support the project.

The packaging of GNU tools, together with the Linux kernel and other programs, is usually called a Linux distribution (distro). The GNU Project calls the combination of GNU and the Linux kernel "GNU/Linux", and asks others to do the same,35 resulting in the GNU/Linux naming controversy.

Most Linux distros combine GNU packages with a Linux kernel which contains proprietary binary blobs.36

GNU Free System Distribution Guidelines

The GNU Free System Distribution Guidelines (GNU FSDG) is a system distribution commitment that explains how an installable system distribution (such as a Linux distribution) qualifies as free (libre), and helps distribution developers make their distributions qualify.

The list mostly describes distributions that are a combination of GNU packages with a Linux-libre kernel (a modified Linux kernel that removes binary blobs, obfuscated code, and portions of code under proprietary licenses) and consist only of free software (eschewing proprietary software entirely).373839 Distributions that have adopted the GNU FSDG include Dragora GNU/Linux-Libre, GNU Guix System, Hyperbola GNU/Linux-libre, Parabola GNU/Linux-libre, Trisquel GNU/Linux, PureOS, and a few others.40

The Fedora Project's distribution license guidelines were used as a basis for the FSDG.41 The Fedora Project's own guidelines, however, currently do not follow the FSDG, and thus the GNU Project does not consider Fedora to be a fully free (libre) GNU/Linux distribution.42

Strategic projects

See also: Free Software Foundation § High priority projects, and GNU toolchain

From the mid-1990s onward, with many companies investing in free software development, the Free Software Foundation redirected its funds toward the legal and political support of free software development. Software development from that point on focused on maintaining existing projects, and starting new projects only when there was an acute threat to the free software community. One of the most notable projects of the GNU Project is the GNU Compiler Collection, whose components have been adopted as the standard compiler system on many Unix-like systems.

The copyright of most works by the GNU Project is owned by the Free Software Foundation.43

GNOME

The GNOME desktop effort was launched by the GNU Project because another desktop system, KDE, was becoming popular but required users to install Qt, which was then proprietary software. To prevent people from being tempted to install KDE and Qt, the GNU Project simultaneously launched two projects. One was the Harmony toolkit. This was an attempt to make a free software replacement for Qt. Had this project been successful, the perceived problem with the KDE would have been solved. The second project was GNOME, which tackled the same issue from a different angle. It aimed to make a replacement for KDE that had no dependencies on proprietary software. The Harmony project did not make much progress, but GNOME developed very well. Eventually, the proprietary component that KDE depended on (Qt) was released as free software.44 GNOME has since dissociated itself from the GNU Project and the Free Software Foundation, and is now independently managed by the GNOME Project.

GNU Enterprise

GNU Enterprise (GNUe) was a meta-project started in 1996,45 and can be regarded as a sub-project of the GNU Project. GNUe's goal is to create free "enterprise-class data-aware applications" (enterprise resource planners, etc.). GNUe is designed to collect Enterprise software for the GNU system in a single location (much like the GNOME project collects Desktop software),it was later Decommissioned.46

Recognition

In 2001, the GNU Project received the USENIX Lifetime Achievement Award for "the ubiquity, breadth, and quality of its freely available redistributable and modifiable software, which has enabled a generation of research and commercial development".47

See also

  • Free and open-source software portal

References

  1. "What is GNU?". The GNU Operating System. Free Software Foundation. September 4, 2009. Archived from the original on 2004-04-02. Retrieved 2009-10-09. The name "GNU" is a recursive acronym for "GNU's Not Unix!"; it is pronounced g-noo, as one syllable with no vowel sound between the g and the n. https://gnu.org/

  2. "The GNU Manifesto". Free Software Foundation. July 21, 2007. Archived from the original on 2018-07-14. Retrieved 2015-10-08. https://www.gnu.org/gnu/manifesto.html

  3. Torvalds, Linus Benedict (August 1991). "comp.os.minix". Archived from the original on 2013-05-09. Retrieved 2009-09-06. https://groups.google.com/group/comp.os.minix/msg/b813d52cbc5a044b

  4. "z-archive of Linux version 0.99". The Linux Kernel Archives. December 1992. Archived from the original on 2017-01-30. https://web.archive.org/web/20170130050958/ftp://ftp.kernel.org/pub/linux/kernel/Historic/v0.99/linux-0.99.tar.Z

  5. Balsa, Andrew D. "The linux-kernel mailing list FAQ". The Linux Kernel Archives. Kernel.org. Archived from the original on 2012-10-01. Retrieved 2013-06-13. ...we have tried to use the word "Linux" or the expression "Linux kernel" to designate the kernel, and GNU/Linux to designate the entire body of GNU/GPL'ed OS software,... ...many people forget that the linux kernel mailing list is a forum for discussion of kernel-related matters, not GNU/Linux in general... https://web.archive.org/web/20121001231709/http://vger.kernel.org/lkml/#s1-1

  6. Mark Shuttleworth (14 February 2014). "Losing graciously". Archived from the original on 22 March 2014. Retrieved 27 April 2014. today our focus is on the cloud and on mobile, and we are quite clearly leading GNU/Linux on both fronts /wiki/Mark_Shuttleworth

  7. Richard Stallman. "new Unix implementation". Archived from the original on 2011-01-22. Retrieved 2013-09-27. https://groups.google.com/forum/#!msg/net.unix-wizards/8twfRPM79u0/1xlglzrWrU0J

  8. Stallman, Richard (2022). "How I do my computing". Archived from the original on January 31, 2023. Retrieved January 31, 2023. https://stallman.org/cgi-bin/showpage.cgi?path=/stallman-computing.html&term=unix&type=norm&case=0

  9. Wardrip-Fruin, Noah; and Nick Montfort. "The GNU Manifesto". The NewMediaReader. Cambridge, Massachusetts: MIT, 2003. pp.545–550.

  10. "GNU's Bulletin, vol. 1 no. 3". gnu.org. June 1987. Archived from the original on 2015-11-25. Retrieved 2014-04-18. https://www.gnu.org/bulletins/bull3.html#SEC11

  11. "The GNU Manifesto". Free Software Foundation. July 21, 2007. Archived from the original on 2018-07-14. Retrieved 2015-10-08. https://www.gnu.org/gnu/manifesto.html

  12. Stallman, Richard (March 1985). "The GNU Manifesto – GNU Project – Free Software Foundation (FSF)". gnu.org. GNU Project. Archived from the original on 2018-07-14. Retrieved 2011-10-18. /wiki/Richard_Stallman

  13. Weber, S. (2004). The Success of Open Source. Cambridge: Harvard University Press.

  14. Helping the GNU Project and the Free Software Movement – GNU Project – Free Software Foundation Archived 2015-12-25 at the Wayback Machine. gnu.org. Retrieved on 2013-07-17. https://www.gnu.org/help/help.html#funds

  15. "Ncurses". wiki.freedesktop.org. Archived from the original on 2021-03-22. Retrieved 2019-03-18. It is one of the few GNU files not distributed under the GNU General Public License or GNU Lesser General Public License; it is distributed under a license like the X11 License https://wiki.freedesktop.org/www/Ncurses/

  16. "Why you shouldn't use the Lesser GPL for your next library". GNU. Archived from the original on 2007-11-26. Retrieved 2019-03-18. There are reasons that can make it better to use the Lesser GPL in certain cases. https://www.gnu.org/licenses/why-not-lgpl.html

  17. "GNU's Bulletin Volume 1 No.1". February 1986. Archived from the original on 2015-06-23. Retrieved 2020-08-16. https://www.gnu.org/bulletins/bull1.txt

  18. "Richard Stallman: Freedom". Radio New Zealand. August 9, 2008. Archived from the original on October 31, 2020. Retrieved August 16, 2020. https://www.rnz.co.nz/national/programmes/saturday/audio/1699424/richard-stallman-freedom

  19. Linus Benedict Torvalds (August 26, 1991). "What would you like to see most in minix?". comp.os.minix. Archived from the original on April 30, 2013. Retrieved July 28, 2016. https://groups.google.com/group/comp.os.minix/browse_thread/thread/76536d1fb451ac60/b813d52cbc5a044b

  20. The Kernel Development Community. "Building Linux with Clang/LLVM". The Linux Kernel Docs. Archived from the original on 2022-09-27. Retrieved 2022-10-08. https://www.kernel.org/doc/html/v5.8/kbuild/llvm.html

  21. "GNU Hurd/ hurd/ status". GNU Operating System. Free Software Foundation. Archived from the original on 2020-11-12. Retrieved 2018-04-15. It may not be ready for production use, as there are still some bugs and missing features. https://www.gnu.org/software/hurd/hurd/status.html

  22. "All GNU packages". gnu.org. Archived from the original on 2015-12-25. Retrieved 2014-04-18. https://www.gnu.org/software/software.html#allgnupkgs

  23. GNU @ Free Software Directory Archived 2015-12-05 at the Wayback Machine (fsf.org) http://directory.fsf.org/wiki/GNU

  24. "All GNU packages". gnu.org. Archived from the original on 2015-12-25. Retrieved 2014-04-18. https://www.gnu.org/software/software.html#allgnupkgs

  25. GNU @ Free Software Directory Archived 2015-12-05 at the Wayback Machine (fsf.org) http://directory.fsf.org/wiki/GNU

  26. "POSIX – The GNU C Library". Archived from the original on 2014-04-24. Retrieved 2014-04-18. https://www.gnu.org/software/libc/manual/html_node/POSIX.html

  27. GNU C Library#A temporary fork /wiki/GNU_C_Library#A_temporary_fork

  28. GCC Architectures /wiki/GNU_Compiler_Collection#Architectures

  29. "The Linux Kernel Archives". Archived from the original on 2011-02-21. Retrieved 2016-07-25. https://www.kernel.org/#whatislinux

  30. "Release Notes for Linux v0.12". Archived from the original on 2013-05-26. Retrieved 2012-12-24. http://ftp.funet.fi/pub/linux/historical/kernel/old-versions/RELNOTES-0.12

  31. Should the GNU/name convention be applied to all programs that are GPL'ed? Archived 2013-09-07 at the Wayback Machine GNU/Linux FAQ by Richard Stallman https://www.gnu.org/gnu/gnu-linux-faq.html#allgpled

  32. Why do you write “GNU/Linux” instead of “GNU Linux”? Archived 2013-09-07 at the Wayback Machine GNU/Linux FAQ by Richard Stallman https://www.gnu.org/gnu/gnu-linux-faq.html#whyslash

  33. Isn't it wrong for us to label Linus Torvalds' work as GNU? Archived 2013-09-07 at the Wayback Machine GNU/Linux FAQ by Richard Stallman https://www.gnu.org/gnu/gnu-linux-faq.html#claimlinux

  34. Does Linus Torvalds agree that Linux is just the kernel? Archived 2013-09-07 at the Wayback Machine GNU/Linux FAQ by Richard Stallman https://www.gnu.org/gnu/gnu-linux-faq.html#linusagreed

  35. "Why do you call it GNU/Linux and not Linux?". Archived from the original on 2013-09-07. Retrieved 2014-04-18. https://www.gnu.org/gnu/gnu-linux-faq.html#why

  36. "Explaining Why We Don't Endorse Other Systems". GNU. Archived from the original on 2011-04-24. Retrieved 2016-07-22. https://www.gnu.org/distros/common-distros.html

  37. "Guidelines for Free System Distributions". gnu.org. Archived from the original on 2015-12-08. Retrieved 2014-04-17. https://www.gnu.org/distros/free-system-distribution-guidelines.html

  38. "Avoiding Ruinous Compromises". www.gnu.org. Archived from the original on 2018-06-22. Retrieved 2016-07-22. https://www.gnu.org/philosophy/compromise.html

  39. "Explaining Why We Don't Endorse Other Systems". GNU. Archived from the original on 2011-04-24. Retrieved 2016-07-22. https://www.gnu.org/distros/common-distros.html

  40. "List of Free GNU/Linux Distributions – GNU Project – Free Software Foundation". gnu.org. Archived from the original on 2014-12-16. Retrieved 2014-08-18. https://www.gnu.org/distros/free-distros.html

  41. "Free System Distribution Guidelines (GNU FSDG) – GNU Project". gnu.org. publisher. Archived from the original on 2015-12-08. Retrieved 2014-06-07. We would like to thank the Fedora Project for their help in focusing these policies, and allowing us to use their own distribution license guidelines as a basis for this document. https://www.gnu.org/distros/free-system-distribution-guidelines.html

  42. "Explaining Why We Don't Endorse Other Systems". GNU. Archived from the original on 2011-04-24. Retrieved 2016-07-22. https://www.gnu.org/distros/common-distros.html

  43. Moglen, Eben. "Why the FSF Gets Copyright Assignments from Contributors". gnu project. Archived from the original on 2023-05-11. Retrieved 2023-05-11. https://www.gnu.org/licenses/why-assign.html

  44. Stallman, Richard (September 5, 2000). "Stallman on Qt, the GPL, KDE, and GNOME". Linux Today. Archived from the original on 2012-04-19. Retrieved 2005-09-09. https://www.linuxtoday.com/developer/stallman-on-qt-the-gpl-kde-and-gnome/

  45. "GNU Enterprise Project History – GNU Enterprise". 2013-01-16. Archived from the original on 2013-01-16. Retrieved 2019-02-18. https://web.archive.org/web/20130116060106/http://www.gnuenterprise.org/community/history.php

  46. "GNU Enterprise Homepage". https://www.gnu.org/software/gnue/

  47. "USENIX Lifetime Achievement Award ("The Flame")". USENIX. Archived from the original on 2007-12-28. Retrieved 2007-12-05. http://www.usenix.org/directory/flame.html