GNU Project
Encyclopedia
The GNU Project
is a free software
, mass collaboration
project, announced on September 27, 1983, by Richard Stallman
at MIT
. It initiated GNU
operating system
development in January, 1984. The founding goal of the project was, in the words of its initial announcement, to develop "a sufficient body of free software [...] to get along without any software that is not free."
To make this happen, the GNU Project began working on an operating system called GNU
("GNU" is a recursive acronym
that stands for "GNU's Not Unix
"). This goal of making a free software operating system was achieved in 1992 when the last gap in the GNU system, a kernel, was filled by the third-party Linux kernel
being released as Free Software, under version 2 of the GNU GPL
.
Current work of the GNU Project includes software development, awareness building, political campaigning and sharing of the new material.
text editor with Lisp for writing editor commands, a source level debugger
, a yacc
-compatible parser
generator, and a linker". 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 crashproof 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.
In the GNU Manifesto, Stallman listed four freedoms essential to software development: 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. To implement these freedoms, users needed full access to code. To ensure code remained free and provide it to the public, Stallman created the General Public License (GPL), which allowed software and the future generations of code derived from it to remain free for public use. Some complications arose, however, when certain software was grandfathered in the law of GPL because of code it derived from.
.
GNU has four kinds of freedom for the software:
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 program's code as long as the distribution terms do not change. Copyleft preserves the freedom in new code and programs.
. The Linux kernel
, started independently by Linus Torvalds
in 1991, filled the last gap, and Linux version 0.12 was released under the GPL in 1992. Together, Linux and GNU formed the first completely free-software operating system. Though the Linux kernel is not part of the GNU project, it was developed using GCC
and other GNU programming tools.
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
; see High Priority Free Software Projects. One of the most notable projects of the GNU Project is the GNU Compiler Collection
, whose components have been adopted as the standard compiler(s) on almost all UNIX and UNIX-like systems, including Apple's iOS
.
desktop. This development effort was launched by the GNU Project because another desktop system, KDE
, was becoming popular but required users to install certain proprietary software
. To prevent people from being tempted to install that proprietary software, the GNU Project simultaneously launched two projects. One was the Harmony toolkit
. This was an attempt to make a free software replacement for the proprietary software that KDE depended on. Had this project been successful, the problem with 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 didn't make much progress, but GNOME developed very well. Eventually, the proprietary component that KDE depended on (Qt
) was released as free software.
, software able to play content distributed in the Adobe Flash
format. This has been marked as a priority project by GNU because it was seen that many people were installing a free software operating system and using a free software web-browser, but were then also installing the proprietary software plug-in from Adobe.
is a free software
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...
, mass collaboration
Mass collaboration
Mass collaboration is a form of collective action that occurs when large numbers of people work independently on a single project, often modular in its nature...
project, announced on September 27, 1983, by Richard Stallman
Richard Stallman
Richard Matthew Stallman , often shortened to rms,"'Richard Stallman' is just my mundane name; you can call me 'rms'"|last= Stallman|first= Richard|date= N.D.|work=Richard Stallman's homepage...
at MIT
Massachusetts Institute of Technology
The Massachusetts Institute of Technology is a private research university located in Cambridge, Massachusetts. MIT has five schools and one college, containing a total of 32 academic departments, with a strong emphasis on scientific and technological education and research.Founded in 1861 in...
. It initiated GNU
GNU
GNU is a Unix-like computer operating system developed by the GNU project, ultimately aiming to be a "complete Unix-compatible software system"...
operating system
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...
development in January, 1984. The founding goal of the project was, in the words of its initial announcement, to develop "a sufficient body of free software [...] to get along without any software that is not free."
To make this happen, the GNU Project began working on an operating system called GNU
GNU
GNU is a Unix-like computer operating system developed by the GNU project, ultimately aiming to be a "complete Unix-compatible software system"...
("GNU" is a recursive acronym
Recursive acronym
A recursive acronym is an acronym or initialism that refers to itself in the expression for which it stands...
that stands for "GNU's Not Unix
Unix
Unix is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs, including Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna...
"). This goal of making a free software operating system was achieved in 1992 when the last gap in the GNU system, a kernel, was filled by the third-party Linux kernel
Linux kernel
The Linux kernel is an operating system kernel used by the Linux family of Unix-like operating systems. It is one of the most prominent examples of free and open source software....
being released as Free Software, under version 2 of the GNU GPL
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....
.
Current work of the GNU Project includes software development, awareness building, political campaigning and sharing of the new material.
Origins of the project
When the GNU project first started they "had an EmacsEmacs
Emacs is a class of text editors, usually characterized by their extensibility. GNU Emacs has over 1,000 commands. It also allows the user to combine these commands into macros to automate work.Development began in the mid-1970s and continues actively...
text editor with Lisp for writing editor commands, a source level debugger
Debugger
A debugger or debugging tool is a computer program that is used to test and debug other programs . The code to be examined might alternatively be running on an instruction set simulator , a technique that allows great power in its ability to halt when specific conditions are encountered but which...
, a yacc
Yacc
The computer program yacc is a parser generator developed by Stephen C. Johnson at AT&T for the Unix operating system. The name is an acronym for "Yet Another Compiler Compiler." It generates a parser based on an analytic grammar written in a notation similar to BNF.Yacc used to be available as...
-compatible parser
Parsing
In computer science and linguistics, parsing, or, more formally, syntactic analysis, is the process of analyzing a text, made of a sequence of tokens , to determine its grammatical structure with respect to a given formal grammar...
generator, and a linker". 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 crashproof 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.
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 development: 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. To implement these freedoms, users needed full access to code. To ensure code remained free and provide it to the public, Stallman created the General Public License (GPL), which allowed software and the future generations of code derived from it to remain free for public use. Some complications arose, however, when certain software was grandfathered in the law of GPL because of code it derived from.
Philosophy and activism
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 StallmanRichard Stallman
Richard Matthew Stallman , often shortened to rms,"'Richard Stallman' is just my mundane name; you can call me 'rms'"|last= Stallman|first= Richard|date= N.D.|work=Richard Stallman's homepage...
.
Participation
Within the GNU website a list of projects are 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.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. Proceeds from purchases support the GNU project.GNU has four kinds of freedom for the software:
- Freedom to run the program
- Freedom to access the code
- Freedom to redistribute the program to anyone
- Freedom to improve the software
Copyleft
CopyleftCopyleft
Copyleft is a play on the word copyright to describe the practice of using copyright law to offer the right to distribute copies and modified versions of a work and requiring that the same rights be preserved in modified versions of the work...
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 program's code as long as the distribution terms do not change. Copyleft preserves the freedom in new code and programs.
Operating system development
The first goal of the GNU project was to create a whole free-software operating system. By 1992, the GNU project had completed all of the major operating system components except for their kernel, GNU HurdGNU Hurd
GNU Hurd is a free software Unix-like replacement for the Unix kernel, released under the GNU General Public License. It has been under development since 1990 by the GNU Project of the Free Software Foundation...
. The Linux kernel
Linux kernel
The Linux kernel is an operating system kernel used by the Linux family of Unix-like operating systems. It is one of the most prominent examples of free and open source software....
, started independently by Linus Torvalds
Linus Torvalds
Linus Benedict Torvalds is a Finnish software engineer and hacker, best known for having initiated the development of the open source Linux kernel. He later became the chief architect of the Linux kernel, and now acts as the project's coordinator...
in 1991, filled the last gap, and Linux version 0.12 was released under the GPL in 1992. Together, Linux and GNU formed the first completely free-software operating system. Though the Linux kernel is not part of the GNU project, it was developed using GCC
GNU Compiler Collection
The GNU Compiler Collection is a compiler system produced by the GNU Project supporting various programming languages. GCC is a key component of the GNU toolchain...
and other GNU programming tools.
Strategic projects
From the mid-1990s onward, with many companies investing in free software development, the Free Software FoundationFree Software Foundation
The Free Software Foundation is a non-profit corporation founded by Richard Stallman on 4 October 1985 to support the free software movement, a copyleft-based movement which aims to promote the universal freedom to create, distribute and modify computer software...
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
Free software community
The free-software community is an informal term that refers to the users and developers of free software as well as supporters of the free-software movement. The movement is sometimes referred to as the open-source software community or a subset thereof...
; see High Priority Free Software Projects. One of the most notable projects of the GNU Project is the GNU Compiler Collection
GNU Compiler Collection
The GNU Compiler Collection is a compiler system produced by the GNU Project supporting various programming languages. GCC is a key component of the GNU toolchain...
, whose components have been adopted as the standard compiler(s) on almost all UNIX and UNIX-like systems, including Apple's iOS
IOS
iOS is an operating system for iPad, iPhone, iPod Touch, and Apple TV.IOS may also refer to:-Companies and organisations:* Illinois Ornithological Society, American state-based bird club...
.
GNOME
One example is the GNOMEGNOME
GNOME is a desktop environment and graphical user interface that runs on top of a computer operating system. It is composed entirely of free and open source software...
desktop. This development effort was launched by the GNU Project because another desktop system, KDE
KDE
KDE is an international free software community producing an integrated set of cross-platform applications designed to run on Linux, FreeBSD, Microsoft Windows, Solaris and Mac OS X systems...
, was becoming popular but required users to install certain proprietary software
Proprietary software
Proprietary software is computer software licensed under exclusive legal right of the copyright holder. The licensee is given the right to use the software under certain conditions, while restricted from other uses, such as modification, further distribution, or reverse engineering.Complementary...
. To prevent people from being tempted to install that proprietary software, the GNU Project simultaneously launched two projects. One was the Harmony toolkit
Harmony toolkit
The Harmony toolkit is a never-completed free software widget toolkit that aimed to be API compatible with the then non-GPL licensed Qt widget toolkit. The QPL license that Qt used was free only if the program was not sold for profit and if its source code was freely available...
. This was an attempt to make a free software replacement for the proprietary software that KDE depended on. Had this project been successful, the problem with 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 didn't make much progress, but GNOME developed very well. Eventually, the proprietary component that KDE depended on (Qt
Qt (toolkit)
Qt is a cross-platform application framework that is widely used for developing application software with a graphical user interface , and also used for developing non-GUI programs such as command-line tools and consoles for servers...
) was released as free software.
Gnash
Another example is GnashGnash
Gnash is a media player for playing SWF files. Gnash is available both as a standalone player for desktop computers and embedded device, as well as a plugin for several browsers. It is part of the GNU Project and is a Free and open-source alternative to Adobe Flash Player...
, software able to play content distributed in the Adobe Flash
Adobe Flash
Adobe Flash is a multimedia platform used to add animation, video, and interactivity to web pages. Flash is frequently used for advertisements, games and flash animations for broadcast...
format. This has been marked as a priority project by GNU because it was seen that many people were installing a free software operating system and using a free software web-browser, but were then also installing the proprietary software plug-in from Adobe.
Recognition
- 2001: USENIX Lifetime Achievement Award
See also
- GNU Free Documentation LicenseGNU Free Documentation LicenseThe GNU Free Documentation License is a copyleft license for free documentation, designed by the Free Software Foundation for the GNU Project. It is similar to the GNU General Public License, giving readers the rights to copy, redistribute, and modify a work and requires all copies and...
- Free Software FoundationFree Software FoundationThe Free Software Foundation is a non-profit corporation founded by Richard Stallman on 4 October 1985 to support the free software movement, a copyleft-based movement which aims to promote the universal freedom to create, distribute and modify computer software...
- List of GNU software
- 9965 GNU9965 GNU9965 GNU is a C-type main belt asteroid. It orbits the Sun once every 3.76 years.Discovered on March 5, 1992 by Spacewatch, it was given the provisional designation "". It was later renamed "GNU" after the GNU project.- See also :...
External links
- GNU Website
- The initial announcement
- The GNU philosophy pages
- The GNU Manifesto
- A detailed essay about the GNU Project
- The "GNU's bulletins", a discontinued newsletter containing much now-historical information