Commit 1525b2b0 authored by Richard M. Stallman's avatar Richard M. Stallman
Browse files

Update with the latest footnotes from www.gnu.org/gnu/the-gnu-project.html

parent efce5ce2
......@@ -7,24 +7,23 @@
The first software-sharing community
When I started working at the MIT Artificial Intelligence Lab in 1971,
I became part of a software-sharing community that had existed for
many years. Sharing of software was not limited to our particular
community; it is as old as computers, just as sharing of recipes is as
old as cooking. But we did it more than most.
I became part of a software-sharing community that had existed for many
years. Sharing of software was not limited to our particular community;
it is as old as computers, just as sharing of recipes is as old as
cooking. But we did it more than most.
The AI Lab used a timesharing operating system called ITS (the
Incompatible Timesharing System) that the lab's staff hackers (1) had
designed and written in assembler language for the Digital PDP-10, one
of the large computers of the era. As a member of this community, an
AI lab staff system hacker, my job was to improve this system.
We did not call our software "free software", because that term did
not yet exist; but that is what it was. Whenever people from another
university or a company wanted to port and use a program, we gladly
let them. If you saw someone using an unfamiliar and interesting
program, you could always ask to see the source code, so that you
could read it, change it, or cannibalize parts of it to make a new
program.
of the large computers of the era. As a member of this community, an AI
lab staff system hacker, my job was to improve this system.
We did not call our software "free software", because that term did not
yet exist; but that is what it was. Whenever people from another
university or a company wanted to port and use a program, we gladly let
them. If you saw someone using an unfamiliar and interesting program,
you could always ask to see the source code, so that you could read it,
change it, or cannibalize parts of it to make a new program.
(1) The use of "hacker" to mean "security breaker" is a confusion on
the part of the mass media. We hackers refuse to recognize that
......@@ -44,9 +43,8 @@
hackers from the AI lab, and the depopulated community was unable to
maintain itself. (The book Hackers, by Steve Levy, describes these
events, as well as giving a clear picture of this community in its
prime.) When the AI lab bought a new PDP-10 in 1982, its
administrators decided to use Digital's non-free timesharing system
instead of ITS.
prime.) When the AI lab bought a new PDP-10 in 1982, its administrators
decided to use Digital's non-free timesharing system instead of ITS.
The modern computers of the era, such as the VAX or the 68020, had
their own operating systems, but none of them were free software: you
......@@ -54,19 +52,19 @@
This meant that the first step in using a computer was to promise not
to help your neighbor. A cooperating community was forbidden. The rule
made by the owners of proprietary software was, "If you share with
your neighbor, you are a pirate. If you want any changes, beg us to
make them."
made by the owners of proprietary software was, "If you share with your
neighbor, you are a pirate. If you want any changes, beg us to make
them."
The idea that the proprietary software social system--the system that
The idea that the proprietary-software social system--the system that
says you are not allowed to share or change software--is antisocial,
that it is unethical, that it is simply wrong, may come as a surprise
to some readers. But what else could we say about a system based on
dividing the public and keeping users helpless? Readers who find the
idea surprising may have taken proprietary social system as given, or
judged it on the terms suggested by proprietary software businesses.
Software publishers have worked long and hard to convince people that
there is only one way to look at the issue.
idea surprising may have taken proprietary-software social system as
given, or judged it on the terms suggested by proprietary software
businesses. Software publishers have worked long and hard to convince
people that there is only one way to look at the issue.
When software publishers talk about "enforcing" their "rights" or
"stopping piracy", what they actually *say* is secondary. The real
......@@ -78,30 +76,30 @@
natural right to own software and thus have power over all its users.
(If this were a natural right, then no matter how much harm it does to
the public, we could not object.) Interestingly, the US Constitution
and legal tradition reject this view; copyright is not a natural
right, but an artificial government-imposed monopoly that limits the
users' natural right to copy.
and legal tradition reject this view; copyright is not a natural right,
but an artificial government-imposed monopoly that limits the users'
natural right to copy.
Another unstated assumption is that the only important thing about
software is what jobs it allows you to do--that we computer users
should not care what kind of society we are allowed to have.
A third assumption is that we would have no usable software (or, would
A third assumption is that we would have no usable software (or would
never have a program to do this or that particular job) if we did not
offer a company power over the users of the program. This assumption
may have seemed plausible, before the free software movement
demonstrated that we can make plenty of useful software without
putting chains on it.
demonstrated that we can make plenty of useful software without putting
chains on it.
If we decline to accept these assumptions, and judge these issues
based on ordinary common-sense morality while placing the users first,
we arrive at very different conclusions. Computer users should be free
to modify programs to fit their needs, and free to share software,
because helping other people is the basis of society.
If we decline to accept these assumptions, and judge these issues based
on ordinary common-sense morality while placing the users first, we
arrive at very different conclusions. Computer users should be free to
modify programs to fit their needs, and free to share software, because
helping other people is the basis of society.
There is no room here for an extensive statement of the reasoning
behind this conclusion, so I refer the reader to the web page,
<http://www.gnu.org/philosophy/why-free.html>.
http://www.gnu.org/philosophy/why-free.html.
A stark moral choice.
......@@ -110,28 +108,27 @@
The easy choice was to join the proprietary software world, signing
nondisclosure agreements and promising not to help my fellow hacker.
Most likely I would also be developing software that was released
under nondisclosure agreements, thus adding to the pressure on other
people to betray their fellows too.
Most likely I would also be developing software that was released under
nondisclosure agreements, thus adding to the pressure on other people
to betray their fellows too.
I could have made money this way, and perhaps amused myself writing
code. But I knew that at the end of my career, I would look back on
years of building walls to divide people, and feel I had spent my life
making the world a worse place.
I had already experienced being on the receiving end of a
nondisclosure agreement, when someone refused to give me and the MIT
AI lab the source code for the control program for our printer. (The
lack of certain features in this program made use of the printer
extremely frustrating.) So I could not tell myself that nondisclosure
agreements were innocent. I was very angry when he refused to share
with us; I could not turn around and do the same thing to everyone
else.
I had already experienced being on the receiving end of a nondisclosure
agreement, when someone refused to give me and the MIT AI lab the
source code for the control program for our printer. (The lack of
certain features in this program made use of the printer extremely
frustrating.) So I could not tell myself that nondisclosure agreements
were innocent. I was very angry when he refused to share with us; I
could not turn around and do the same thing to everyone else.
Another choice, straightforward but unpleasant, was to leave the
computer field. That way my skills would not be misused, but they
would still be wasted. I would not be culpable for dividing and
restricting computer users, but it would happen nonetheless.
computer field. That way my skills would not be misused, but they would
still be wasted. I would not be culpable for dividing and restricting
computer users, but it would happen nonetheless.
So I looked for a way that a programmer could do something for the
good. I asked myself, was there a program or programs that I could
......@@ -153,8 +150,8 @@
a recursive acronym for "GNU's Not Unix."
An operating system does not mean just a kernel, barely enough to run
other programs. In the 1970s, every operating system worthy of the
name included command processors, assemblers, compilers, interpreters,
other programs. In the 1970s, every operating system worthy of the name
included command processors, assemblers, compilers, interpreters,
debuggers, text editors, mailers, and much more. ITS had them, Multics
had them, VMS had them, and Unix had them. The GNU operating system
would include them too.
......@@ -176,31 +173,30 @@
do with price. It is about freedom. Here, therefore, is the definition
of free software: a program is free software, for you, a particular
user, if:
* You have the freedom to run the program, for any purpose.
* You have the freedom to modify the program to suit your needs. (To
make this freedom effective in practice, you must have access to
the source code, since making changes in a program without having
the source code is exceedingly difficult.)
* You have the freedom to redistribute copies, either gratis or for
a fee.
* You have the freedom to redistribute copies, either gratis or for a
fee.
* You have the freedom to distribute modified versions of the
program, so that the community can benefit from your improvements.
Since "free" refers to freedom, not to price, there is no
contradiction between selling copies and free software. In fact, the
freedom to sell copies is crucial: collections of free software sold
on CD-ROMs are important for the community, and selling them is an
important way to raise funds for free software development. Therefore,
a program which people are not free to include on these collections is
not free software.
Since "free" refers to freedom, not to price, there is no contradiction
between selling copies and free software. In fact, the freedom to sell
copies is crucial: collections of free software sold on CD-ROMs are
important for the community, and selling them is an important way to
raise funds for free software development. Therefore, a program which
people are not free to include on these collections is not free
software.
Because of the ambiguity of "free", people have long looked for
alternatives, but no one has found a suitable alternative. The English
Language has more words and nuances than any other, but it lacks a
simple, unambiguous, word that means "free," as in
freedom--"unfettered," being the word that comes closest in meaning.
Such alternatives as "liberated", "freedom" and "open" have either the
simple, unambiguous, word that means "free", as in
freedom--"unfettered" being the word that comes closest in meaning.
Such alternatives as "liberated", "freedom", and "open" have either the
wrong meaning or some other disadvantage.
GNU software and the GNU system
......@@ -209,8 +205,8 @@
reach, I decided to adapt and use existing pieces of free software
wherever that was possible. For example, I decided at the very
beginning to use TeX as the principal text formatter; a few years
later, I decided to use the X Window System rather than writing
another window system for GNU.
later, I decided to use the X Window System rather than writing another
window system for GNU.
Because of this decision, the GNU system is not the same as the
collection of all GNU software. The GNU system includes programs that
......@@ -222,12 +218,12 @@
In January 1984 I quit my job at MIT and began writing GNU software.
Leaving MIT was necessary so that MIT would not be able to interfere
with distributing GNU as free software. If I had remained on the
staff, MIT could have claimed to own the work, and could have imposed
their own distribution terms, or even turned the work into a
proprietary software package. I had no intention of doing a large
amount of work only to see it become useless for its intended purpose:
creating a new software-sharing community.
with distributing GNU as free software. If I had remained on the staff,
MIT could have claimed to own the work, and could have imposed their
own distribution terms, or even turned the work into a proprietary
software package. I had no intention of doing a large amount of work
only to see it become useless for its intended purpose: creating a new
software-sharing community.
However, Professor Winston, then the head of the MIT AI Lab, kindly
invited me to keep using the lab's facilities.
......@@ -235,23 +231,23 @@
The first steps
Shortly before beginning the GNU project, I heard about the Free
University Compiler Kit, also known as VUCK. (The Dutch word for
"free" is written with a V.) This was a compiler designed to handle
multiple languages, including C and Pascal, and to support multiple
target machines. I wrote to its author asking if GNU could use it.
University Compiler Kit, also known as VUCK. (The Dutch word for "free"
is written with a V.) This was a compiler designed to handle multiple
languages, including C and Pascal, and to support multiple target
machines. I wrote to its author asking if GNU could use it.
He responded derisively, stating that the university was free but the
compiler was not. I therefore decided that my first program for the
GNU project would be a multi-language, multi-platform compiler.
Hoping to avoid the need to write the whole compiler myself, I
obtained the source code for the Pastel compiler, which was a
multi-platform compiler developed at Lawrence Livermore Lab. It
supported, and was written in, an extended version of Pascal, designed
to be a system-programming language. I added a C front end, and began
porting it to the Motorola 68000 computer. But I had to give that up
when I discovered that the compiler needed many megabytes of stack
space, and the available 68000 Unix system would only allow 64k.
compiler was not. I therefore decided that my first program for the GNU
project would be a multi-language, multi-platform compiler.
Hoping to avoid the need to write the whole compiler myself, I obtained
the source code for the Pastel compiler, which was a multi-platform
compiler developed at Lawrence Livermore Lab. It supported, and was
written in, an extended version of Pascal, designed to be a
system-programming language. I added a C front end, and began porting
it to the Motorola 68000 computer. But I had to give that up when I
discovered that the compiler needed many megabytes of stack space, and
the available 68000 Unix system would only allow 64k.
I then realized that the Pastel compiler functioned by parsing the
entire input file into a syntax tree, converting the whole syntax tree
......@@ -274,18 +270,18 @@
ftp server on the MIT computer that I used. (This computer,
prep.ai.mit.edu, thus became the principal GNU ftp distribution site;
when it was decommissioned a few years later, we transferred the name
to our new ftp server.) But at that time, many of the interested
people were not on the Internet and could not get a copy by ftp. So
the question was, what would I say to them?
I could have said, "Find a friend who is on the net and who will make
a copy for you." Or I could have done what I did with the original
PDP-10 Emacs: tell them, "Mail me a tape and a SASE, and I will mail
it back with Emacs on it." But I had no job, and I was looking for
ways to make money from free software. So I announced that I would
mail a tape to whoever wanted one, for a fee of $150. In this way, I
started a free software distribution business, the precursor of the
companies that today distribute entire Linux-based GNU systems.
to our new ftp server.) But at that time, many of the interested people
were not on the Internet and could not get a copy by ftp. So the
question was, what would I say to them?
I could have said, "Find a friend who is on the net and who will make a
copy for you." Or I could have done what I did with the original PDP-10
Emacs: tell them, "Mail me a tape and a SASE, and I will mail it back
with Emacs on it." But I had no job, and I was looking for ways to make
money from free software. So I announced that I would mail a tape to
whoever wanted one, for a fee of $150. In this way, I started a free
software distribution business, the precursor of the companies that
today distribute entire Linux-based GNU systems.
Is a program free for every user?
......@@ -315,9 +311,9 @@
"Is this program free?" If you judged based on the freedom provided by
the distribution terms of the MIT release, you would say that X was
free software. But if you measured the freedom of the average user of
X, you would have to say it was proprietary software. Most X users
were running the proprietary versions that came with Unix systems, not
the free version.
X, you would have to say it was proprietary software. Most X users were
running the proprietary versions that came with Unix systems, not the
free version.
Copyleft and the GNU GPL
......@@ -326,15 +322,15 @@
from being turned into proprietary software. The method we use is
called "copyleft".(1)
Copyleft uses copyright law, but flips it over to serve the opposite
of its usual purpose: instead of a means of privatizing software, it
Copyleft uses copyright law, but flips it over to serve the opposite of
its usual purpose: instead of a means of privatizing software, it
becomes a means of keeping software free.
The central idea of copyleft is that we give everyone permission to
run the program, copy the program, modify the program, and distribute
modified versions--but not permission to add restrictions of their
own. Thus, the crucial freedoms that define "free software" are
guaranteed to everyone who has a copy; they become inalienable rights.
The central idea of copyleft is that we give everyone permission to run
the program, copy the program, modify the program, and distribute
modified versions--but not permission to add restrictions of their own.
Thus, the crucial freedoms that define "free software" are guaranteed
to everyone who has a copy; they become inalienable rights.
For an effective copyleft, modified versions must also be free. This
ensures that work based on ours becomes available to our community if
......@@ -347,15 +343,15 @@
ensure freedom for every user of the program. The companies that
privatized the X Window System usually made some changes to port it to
their systems and hardware. These changes were small compared with the
great extent of X, but they were not trivial. If making changes were
an excuse to deny the users freedom, it would be easy for anyone to
take advantage of the excuse.
great extent of X, but they were not trivial. If making changes were an
excuse to deny the users freedom, it would be easy for anyone to take
advantage of the excuse.
A related issue concerns combining a free program with non-free code.
Such a combination would inevitably be non-free; whichever freedoms
are lacking for the non-free part would be lacking for the whole as
well. To permit such combinations would open a hole big enough to sink
a ship. Therefore, a crucial requirement for copyleft is to plug this
Such a combination would inevitably be non-free; whichever freedoms are
lacking for the non-free part would be lacking for the whole as well.
To permit such combinations would open a hole big enough to sink a
ship. Therefore, a crucial requirement for copyleft is to plug this
hole: anything added to or combined with a copylefted program must be
such that the larger combined version is also free and copylefted.
......@@ -364,7 +360,7 @@
have other kinds of copyleft that are used in specific circumstances.
GNU manuals are copylefted also, but use a much simpler kind of
copyleft, because the complexity of the GNU GPL is not necessary for
manuals.
manuals.(2)
(1) In 1984 or 1985, Don Hopkins (a very imaginative fellow) mailed me
a letter. On the envelope he had written several amusing sayings,
......@@ -372,35 +368,36 @@
"copyleft" to name the distribution concept I was developing at the
time.
(2) We now use the GNU Free Documentation License for documentation.
The Free Software Foundation
As interest in using Emacs was growing, other people became involved
in the GNU project, and we decided that it was time to seek funding
once again. So in 1985 we created the Free Software Foundation, a
tax-exempt charity for free software development. The FSF also took
over the Emacs tape distribution business; later it extended this by
adding other free software (both GNU and non-GNU) to the tape, and by
selling free manuals as well.
As interest in using Emacs was growing, other people became involved in
the GNU project, and we decided that it was time to seek funding once
again. So in 1985 we created the Free Software Foundation, a tax-exempt
charity for free software development. The FSF also took over the Emacs
tape distribution business; later it extended this by adding other free
software (both GNU and non-GNU) to the tape, and by selling free
manuals as well.
The FSF accepts donations, but most of its income has always come from
sales--of copies of free software, and of other related services.
Today it sells CD-ROMs of source code, CD-ROMs with binaries, nicely
printed manuals (all with freedom to redistribute and modify), and
Deluxe Distributions (where we build the whole collection of software
for your choice of platform).
Free Software Foundation employees have written and maintained a
number of GNU software packages. Two notable ones are the C library
and the shell. The GNU C library is what every program running on a
GNU/Linux system uses to communicate with Linux. It was developed by a
member of the Free Software Foundation staff, Roland McGrath. The
shell used on most GNU/Linux systems is BASH, the Bourne Again
Shell(1), which was developed by FSF employee Brian Fox.
We funded development of these programs because the GNU project was
not just about tools or a development environment. Our goal was a
complete operating system, and these programs were needed for that
goal.
sales--of copies of free software, and of other related services. Today
it sells CD-ROMs of source code, CD-ROMs with binaries, nicely printed
manuals (all with freedom to redistribute and modify), and Deluxe
Distributions (where we build the whole collection of software for your
choice of platform).
Free Software Foundation employees have written and maintained a number
of GNU software packages. Two notable ones are the C library and the
shell. The GNU C library is what every program running on a GNU/Linux
system uses to communicate with Linux. It was developed by a member of
the Free Software Foundation staff, Roland McGrath. The shell used on
most GNU/Linux systems is BASH, the Bourne Again Shell(1), which was
developed by FSF employee Brian Fox.
We funded development of these programs because the GNU project was not
just about tools or a development environment. Our goal was a complete
operating system, and these programs were needed for that goal.
(1) "Bourne again Shell" is a joke on the name ``Bourne Shell'', which
was the usual shell on Unix.
......@@ -412,8 +409,8 @@
users' freedom, we wish them success.
Selling copies of Emacs demonstrates one kind of free software
business. When the FSF took over that business, I needed another way
to make a living. I found it in selling services relating to the free
business. When the FSF took over that business, I needed another way to
make a living. I found it in selling services relating to the free
software I had developed. This included teaching, for subjects such as
how to program GNU Emacs and how to customize GCC, and software
development, mostly porting GCC to new platforms.
......@@ -425,14 +422,14 @@
beginning to see free software companies based on launching new free
software products.
Watch out, though--a number of companies that associate themselves
with the term "open source" actually base their business on non-free
Watch out, though--a number of companies that associate themselves with
the term "open source" actually base their business on non-free
software that works with free software. These are not free software
companies, they are proprietary software companies whose products
tempt users away from freedom. They call these "value added", which
reflects the values they would like us to adopt: convenience above
freedom. If we value freedom more, we should call them "freedom
subtracted" products.
companies, they are proprietary software companies whose products tempt
users away from freedom. They call these "value added", which reflects
the values they would like us to adopt: convenience above freedom. If
we value freedom more, we should call them "freedom subtracted"
products.
Technical goals
......@@ -441,8 +438,8 @@
allowing users to cooperate, and an ethical advantage, respecting the
user's freedom.
But it was natural to apply the known standards of good practice to
the work--for example, dynamically allocating data structures to avoid
But it was natural to apply the known standards of good practice to the
work--for example, dynamically allocating data structures to avoid
arbitrary fixed size limits, and handling all the possible 8-bit codes
wherever that made sense.
......@@ -469,8 +466,8 @@
UNIX was (and is) proprietary software, and the GNU project's
philosophy said that we should not use proprietary software. But,
applying the same reasoning that leads to the conclusion that violence
in self defense is justified, I concluded that it was legitimate to
use a proprietary package when that was crucial for developing free
in self defense is justified, I concluded that it was legitimate to use
a proprietary package when that was crucial for developing a free
replacement that would help others stop using the proprietary package.
But, even if this was a justifiable evil, it was still an evil. Today
......@@ -481,41 +478,41 @@
The GNU Task List
As the GNU project proceeded, and increasing numbers of system
components were found or developed, eventually it became useful to
make a list of the remaining gaps. We used it to recruit developers to
write the missing pieces. This list became known as the GNU task list.
In addition to missing Unix components, we listed added various other
components were found or developed, eventually it became useful to make
a list of the remaining gaps. We used it to recruit developers to write
the missing pieces. This list became known as the GNU task list. In
addition to missing Unix components, we listed added various other
useful software and documentation projects that, we thought, a truly
complete system ought to have.
Today, hardly any Unix components are left in the GNU task list--those
jobs have been done, aside from a few inessential ones. But the list
is full of projects that some might call "applications". Any program
that appeals to more than a narrow class of users would be a useful
thing to add to an operating system.
jobs have been done, aside from a few inessential ones. But the list is
full of projects that some might call "applications". Any program that
appeals to more than a narrow class of users would be a useful thing to
add to an operating system.
Even games are included in the task list--and have been since the
beginning. Unix included games, so naturally GNU should too. But
compatibility was not an issue for games, so we did not follow the
list of games that Unix had. Instead, we listed a spectrum of
different kinds of games that users might like.
compatibility was not an issue for games, so we did not follow the list
of games that Unix had. Instead, we listed a spectrum of different
kinds of games that users might like.
The GNU Library GPL
The GNU C library uses a special kind of copyleft called the GNU
Library General Public License, which gives permission to link
Library General Public License(1), which gives permission to link
proprietary software with the library. Why make this exception?
It is not a matter of principle; there is no principle that says
proprietary software products are entitled to include our code. (Why
contribute to a project predicated on refusing to share with us?)
Using the LGPL for the C library, or for any library, is a matter of
contribute to a project predicated on refusing to share with us?) Using
the LGPL for the C library, or for any library, is a matter of
strategy.
The C library does a generic job; every proprietary system or compiler
comes with a C library. Therefore, to make our C library available
only to free software would not have given free software any
advantage--it would only have discouraged use of our library.
comes with a C library. Therefore, to make our C library available only
to free software would not have given free software any advantage--it
would only have discouraged use of our library.
One system is an exception to this: on the GNU system (and this
includes GNU/Linux), the GNU C library is the only C library. So the
......@@ -526,27 +523,31 @@
discourage use of the GNU system than to encourage development of free
applications.
That is why using the Library GPL is a good strategy for the C
library. For other libraries, the strategic decision needs to be
considered on a case-by-case basis. When a library does a special job
that can help write certain kinds of programs, then releasing it under
the GPL, limiting it to free programs only, is a way of helping other
free software developers, giving them an advantage against proprietary
That is why using the Library GPL is a good strategy for the C library.
For other libraries, the strategic decision needs to be considered on a
case-by-case basis. When a library does a special job that can help
write certain kinds of programs, then releasing it under the GPL,
limiting it to free programs only, is a way of helping other free
software developers, giving them an advantage against proprietary
software.
Consider GNU Readline, a library that was developed to provide
command-line editing for BASH. Readline is released under the ordinary
GNU GPL, not the Library GPL. This probably does reduce the amount
Readline is used, but that is no loss for us. Meanwhile, at least one
useful application has been made free software specifically so it
could use Readline, and that is a real gain for the community.
useful application has been made free software specifically so it could
use Readline, and that is a real gain for the community.
Proprietary software developers have the advantages money provides;
free software developers need to make advantages for each other. I
hope some day we will have a large collection of GPL-covered libraries
that have no parallel available to proprietary software, providing
useful modules to serve as building blocks in new free software, and
adding up to a major advantage for further free software development.
free software developers need to make advantages for each other. I hope
some day we will have a large collection of GPL-covered libraries that
have no parallel available to proprietary software, providing useful
modules to serve as building blocks in new free software, and adding up
to a major advantage for further free software development.
(1) This license is now called the GNU Lesser General Public License,
to avoid giving the idea that all libraries ought to use it.
See http://www.gnu.org/philosophy/why-not-lgpl.html.
Scratching an itch?
......@@ -563,18 +564,18 @@
GNU Emacs, GDB and GNU Make.
Some GNU programs were developed to cope with specific threats to our
freedom. Thus, we developed gzip to replace the Compress program,
which had been lost to the community because of the LZW patents. We
found people to develop LessTif, and more recently started GNOME and
Harmony, to address the problems caused by certain proprietary
libraries (see below). We are developing the GNU Privacy Guard to
replace popular non-free encryption software, because users should not
have to choose between privacy and freedom.
freedom. Thus, we developed gzip to replace the Compress program, which
had been lost to the community because of the LZW patents. We found
people to develop LessTif, and more recently started GNOME and Harmony,
to address the problems caused by certain proprietary libraries (see
below). We are developing the GNU Privacy Guard to replace popular
non-free encryption software, because users should not have to choose
between privacy and freedom.
Of course, the people writing these programs became interested in the
work, and many features were added to them by various people for the
sake of their own needs and interests. But that is not why the
programs exist.
sake of their own needs and interests. But that is not why the programs
exist.
Unexpected developments
......@@ -584,16 +585,16 @@
Since each component of the GNU system was implemented on a Unix
system, each component could run on Unix systems, long before a
complete GNU system existed. Some of these programs became popular,
and users began extending them and porting them---to the various
complete GNU system existed. Some of these programs became popular, and
users began extending them and porting them---to the various
incompatible versions of Unix, and sometimes to other systems as well.
The process made these programs much more powerful, and attracted both
funds and contributors to the GNU project. But it probably also
delayed completion of a minimal working system by several years, as
GNU developers' time was put into maintaining these ports and adding
features to the existing components, rather than moving on to write
one missing component after another.
funds and contributors to the GNU project. But it probably also delayed
completion of a minimal working system by several years, as GNU
developers' time was put into maintaining these ports and adding
features to the existing components, rather than moving on to write one
missing component after another.
The GNU Hurd
......@@ -602,18 +603,18 @@
collection of server processes running on top of Mach. Mach is a
microkernel developed at Carnegie Mellon University and then at the
University of Utah; the GNU HURD is a collection of servers (or ``herd
of gnus'') that run on top of Mach, and do the various jobs of the
Unix kernel. The start of development was delayed as we waited for
Mach to be released as free software, as had been promised.
of gnus'') that run on top of Mach, and do the various jobs of the Unix
kernel. The start of development was delayed as we waited for Mach to
be released as free software, as had been promised.