(make-autoload): Add define-global-minor-mode.
[emacs.git] / man / gnu.texi
blob0f216152b11576e64b4307c4317d9080f0368f8c
1 @c This is part of the Emacs manual.
2 @c Copyright (C) 1985, 1986, 1987, 1993, 1995, 2002, 2003, 2004,
3 @c   2005 Free Software Foundation, Inc.
4 @ifclear justgnu
5 @node Manifesto,, MS-DOS, Top
6 @unnumbered The GNU Manifesto
7 @end ifclear
8 @ifset justgnu
9 Copyright (C) 1985, 1993, 2001, 2002, 2003, 2004,
10    2005 Free Software Foundation, Inc.
12 Permission is granted to copy, distribute and/or modify this document
13 under the terms of the GNU Free Documentation License, Version 1.2 or
14 any later version published by the Free Software Foundation; with no
15 Invariant Sections, with the Front-Cover texts being ``A GNU
16 Manual'', and with the Back-Cover Texts as in (a) below.  A copy of the
17 license is included in the section entitled ``GNU Free Documentation
18 License'' in the Emacs manual.
20 (a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify
21 this GNU Manual, like GNU software.  Copies published by the Free
22 Software Foundation raise funds for GNU development.''
24 This document is part of a collection distributed under the GNU Free
25 Documentation License.  If you want to distribute this document
26 separately from the collection, you can do so by adding a copy of the
27 license to the document, as described in section 6 of the license.
29 @node Top
30 @top The GNU Manifesto
31 @end ifset
33 @quotation
34 The GNU Manifesto which appears below was written by Richard Stallman at
35 the beginning of the GNU project, to ask for participation and support.
36 For the first few years, it was updated in minor ways to account for
37 developments, but now it seems best to leave it unchanged as most people
38 have seen it.
40 Since that time, we have learned about certain common misunderstandings
41 that different wording could help avoid.  Footnotes added in 1993 help
42 clarify these points.
44 For up-to-date information about the available GNU software, please
45 see @uref{http://www.gnu.org}.  For software tasks to work on, see
46 @uref{http://savannah.gnu.org/projects/tasklist}.  For other ways to
47 contribute, see @uref{http://www.gnu.org/help}.
48 @end quotation
50 @unnumberedsec What's GNU?  Gnu's Not Unix!
52 GNU, which stands for Gnu's Not Unix, is the name for the complete
53 Unix-compatible software system which I am writing so that I can give it
54 away free to everyone who can use it.@footnote{The wording here was
55 careless.  The intention was that nobody would have to pay for
56 @emph{permission} to use the GNU system.  But the words don't make this
57 clear, and people often interpret them as saying that copies of GNU
58 should always be distributed at little or no charge.  That was never the
59 intent; later on, the manifesto mentions the possibility of companies
60 providing the service of distribution for a profit.  Subsequently I have
61 learned to distinguish carefully between ``free'' in the sense of
62 freedom and ``free'' in the sense of price.  Free software is software
63 that users have the freedom to distribute and change.  Some users may
64 obtain copies at no charge, while others pay to obtain copies---and if
65 the funds help support improving the software, so much the better.  The
66 important thing is that everyone who has a copy has the freedom to
67 cooperate with others in using it.} Several other volunteers are helping
68 me.  Contributions of time, money, programs and equipment are greatly
69 needed.
71 So far we have an Emacs text editor with Lisp for writing editor commands,
72 a source level debugger, a yacc-compatible parser generator, a linker, and
73 around 35 utilities.  A shell (command interpreter) is nearly completed.  A
74 new portable optimizing C compiler has compiled itself and may be released
75 this year.  An initial kernel exists but many more features are needed to
76 emulate Unix.  When the kernel and compiler are finished, it will be
77 possible to distribute a GNU system suitable for program development.  We
78 will use @TeX{} as our text formatter, but an nroff is being worked on.  We
79 will use the free, portable X window system as well.  After this we will
80 add a portable Common Lisp, an Empire game, a spreadsheet, and hundreds of
81 other things, plus on-line documentation.  We hope to supply, eventually,
82 everything useful that normally comes with a Unix system, and more.
84 GNU will be able to run Unix programs, but will not be identical to Unix.
85 We will make all improvements that are convenient, based on our experience
86 with other operating systems.  In particular, we plan to have longer
87 file names, file version numbers, a crashproof file system, file name
88 completion perhaps, terminal-independent display support, and perhaps
89 eventually a Lisp-based window system through which several Lisp programs
90 and ordinary Unix programs can share a screen.  Both C and Lisp will be
91 available as system programming languages.  We will try to support UUCP,
92 MIT Chaosnet, and Internet protocols for communication.
94 GNU is aimed initially at machines in the 68000/16000 class with virtual
95 memory, because they are the easiest machines to make it run on.  The extra
96 effort to make it run on smaller machines will be left to someone who wants
97 to use it on them.
99 To avoid horrible confusion, please pronounce the `G' in the word `GNU'
100 when it is the name of this project.
102 @unnumberedsec Why I Must Write GNU
104 I consider that the golden rule requires that if I like a program I must
105 share it with other people who like it.  Software sellers want to divide
106 the users and conquer them, making each user agree not to share with
107 others.  I refuse to break solidarity with other users in this way.  I
108 cannot in good conscience sign a nondisclosure agreement or a software
109 license agreement.  For years I worked within the Artificial Intelligence
110 Lab to resist such tendencies and other inhospitalities, but eventually
111 they had gone too far: I could not remain in an institution where such
112 things are done for me against my will.
114 So that I can continue to use computers without dishonor, I have decided to
115 put together a sufficient body of free software so that I will be able to
116 get along without any software that is not free.  I have resigned from the
117 AI lab to deny MIT any legal excuse to prevent me from giving GNU away.
119 @unnumberedsec Why GNU Will Be Compatible with Unix
121 Unix is not my ideal system, but it is not too bad.  The essential features
122 of Unix seem to be good ones, and I think I can fill in what Unix lacks
123 without spoiling them.  And a system compatible with Unix would be
124 convenient for many other people to adopt.
126 @unnumberedsec How GNU Will Be Available
128 GNU is not in the public domain.  Everyone will be permitted to modify and
129 redistribute GNU, but no distributor will be allowed to restrict its
130 further redistribution.  That is to say, proprietary modifications will not
131 be allowed.  I want to make sure that all versions of GNU remain free.
133 @unnumberedsec Why Many Other Programmers Want to Help
135 I have found many other programmers who are excited about GNU and want to
136 help.
138 Many programmers are unhappy about the commercialization of system
139 software.  It may enable them to make more money, but it requires them to
140 feel in conflict with other programmers in general rather than feel as
141 comrades.  The fundamental act of friendship among programmers is the
142 sharing of programs; marketing arrangements now typically used essentially
143 forbid programmers to treat others as friends.  The purchaser of software
144 must choose between friendship and obeying the law.  Naturally, many decide
145 that friendship is more important.  But those who believe in law often do
146 not feel at ease with either choice.  They become cynical and think that
147 programming is just a way of making money.
149 By working on and using GNU rather than proprietary programs, we can be
150 hospitable to everyone and obey the law.  In addition, GNU serves as an
151 example to inspire and a banner to rally others to join us in sharing.
152 This can give us a feeling of harmony which is impossible if we use
153 software that is not free.  For about half the programmers I talk to, this
154 is an important happiness that money cannot replace.
156 @unnumberedsec How You Can Contribute
158 I am asking computer manufacturers for donations of machines and money.
159 I'm asking individuals for donations of programs and work.
161 One consequence you can expect if you donate machines is that GNU will run
162 on them at an early date.  The machines should be complete, ready to use
163 systems, approved for use in a residential area, and not in need of
164 sophisticated cooling or power.
166 I have found very many programmers eager to contribute part-time work for
167 GNU.  For most projects, such part-time distributed work would be very hard
168 to coordinate; the independently-written parts would not work together.
169 But for the particular task of replacing Unix, this problem is absent.  A
170 complete Unix system contains hundreds of utility programs, each of which
171 is documented separately.  Most interface specifications are fixed by Unix
172 compatibility.  If each contributor can write a compatible replacement for
173 a single Unix utility, and make it work properly in place of the original
174 on a Unix system, then these utilities will work right when put together.
175 Even allowing for Murphy to create a few unexpected problems, assembling
176 these components will be a feasible task.  (The kernel will require closer
177 communication and will be worked on by a small, tight group.)
179 If I get donations of money, I may be able to hire a few people full or
180 part time.  The salary won't be high by programmers' standards, but I'm
181 looking for people for whom building community spirit is as important as
182 making money.  I view this as a way of enabling dedicated people to devote
183 their full energies to working on GNU by sparing them the need to make a
184 living in another way.
186 @unnumberedsec Why All Computer Users Will Benefit
188 Once GNU is written, everyone will be able to obtain good system
189 software free, just like air.@footnote{This is another place I failed to
190 distinguish carefully between the two different meanings of ``free.''
191 The statement as it stands is not false---you can get copies of GNU
192 software at no charge, from your friends or over the net.  But it does
193 suggest the wrong idea.}
195 This means much more than just saving everyone the price of a Unix license.
196 It means that much wasteful duplication of system programming effort will
197 be avoided.  This effort can go instead into advancing the state of the
198 art.
200 Complete system sources will be available to everyone.  As a result, a user
201 who needs changes in the system will always be free to make them himself,
202 or hire any available programmer or company to make them for him.  Users
203 will no longer be at the mercy of one programmer or company which owns the
204 sources and is in sole position to make changes.
206 Schools will be able to provide a much more educational environment by
207 encouraging all students to study and improve the system code.  Harvard's
208 computer lab used to have the policy that no program could be installed on
209 the system if its sources were not on public display, and upheld it by
210 actually refusing to install certain programs.  I was very much inspired by
211 this.
213 Finally, the overhead of considering who owns the system software and what
214 one is or is not entitled to do with it will be lifted.
216 Arrangements to make people pay for using a program, including licensing of
217 copies, always incur a tremendous cost to society through the cumbersome
218 mechanisms necessary to figure out how much (that is, which programs) a
219 person must pay for.  And only a police state can force everyone to obey
220 them.  Consider a space station where air must be manufactured at great
221 cost: charging each breather per liter of air may be fair, but wearing the
222 metered gas mask all day and all night is intolerable even if everyone can
223 afford to pay the air bill.  And the TV cameras everywhere to see if you
224 ever take the mask off are outrageous.  It's better to support the air
225 plant with a head tax and chuck the masks.
227 Copying all or parts of a program is as natural to a programmer as
228 breathing, and as productive.  It ought to be as free.
230 @unnumberedsec Some Easily Rebutted Objections to GNU's Goals
232 @quotation
233 ``Nobody will use it if it is free, because that means they can't rely
234 on any support.''
236 ``You have to charge for the program to pay for providing the
237 support.''
238 @end quotation
240 If people would rather pay for GNU plus service than get GNU free without
241 service, a company to provide just service to people who have obtained GNU
242 free ought to be profitable.@footnote{Several such companies now exist.}
244 We must distinguish between support in the form of real programming work
245 and mere handholding.  The former is something one cannot rely on from a
246 software vendor.  If your problem is not shared by enough people, the
247 vendor will tell you to get lost.
249 If your business needs to be able to rely on support, the only way is to
250 have all the necessary sources and tools.  Then you can hire any available
251 person to fix your problem; you are not at the mercy of any individual.
252 With Unix, the price of sources puts this out of consideration for most
253 businesses.  With GNU this will be easy.  It is still possible for there to
254 be no available competent person, but this problem cannot be blamed on
255 distribution arrangements.  GNU does not eliminate all the world's problems,
256 only some of them.
258 Meanwhile, the users who know nothing about computers need handholding:
259 doing things for them which they could easily do themselves but don't know
260 how.
262 Such services could be provided by companies that sell just hand-holding
263 and repair service.  If it is true that users would rather spend money and
264 get a product with service, they will also be willing to buy the service
265 having got the product free.  The service companies will compete in quality
266 and price; users will not be tied to any particular one.  Meanwhile, those
267 of us who don't need the service should be able to use the program without
268 paying for the service.
270 @quotation
271 ``You cannot reach many people without advertising,
272 and you must charge for the program to support that.''
274 ``It's no use advertising a program people can get free.''
275 @end quotation
277 There are various forms of free or very cheap publicity that can be used to
278 inform numbers of computer users about something like GNU.  But it may be
279 true that one can reach more microcomputer users with advertising.  If this
280 is really so, a business which advertises the service of copying and
281 mailing GNU for a fee ought to be successful enough to pay for its
282 advertising and more.  This way, only the users who benefit from the
283 advertising pay for it.
285 On the other hand, if many people get GNU from their friends, and such
286 companies don't succeed, this will show that advertising was not really
287 necessary to spread GNU.  Why is it that free market advocates don't
288 want to let the free market decide this?@footnote{The Free Software
289 Foundation raises most of its funds from a distribution service,
290 although it is a charity rather than a company.  If @emph{no one}
291 chooses to obtain copies by ordering from the FSF, it will be unable
292 to do its work.  But this does not mean that proprietary restrictions
293 are justified to force every user to pay.  If a small fraction of all
294 the users order copies from the FSF, that is sufficient to keep the FSF
295 afloat.  So we ask users to choose to support us in this way.  Have you
296 done your part?}
298 @quotation
299 ``My company needs a proprietary operating system
300 to get a competitive edge.''
301 @end quotation
303 GNU will remove operating system software from the realm of competition.
304 You will not be able to get an edge in this area, but neither will your
305 competitors be able to get an edge over you.  You and they will compete in
306 other areas, while benefiting mutually in this one.  If your business is
307 selling an operating system, you will not like GNU, but that's tough on
308 you.  If your business is something else, GNU can save you from being
309 pushed into the expensive business of selling operating systems.
311 I would like to see GNU development supported by gifts from many
312 manufacturers and users, reducing the cost to each.@footnote{A group of
313 computer companies recently pooled funds to support maintenance of the
314 GNU C Compiler.}
316 @quotation
317 ``Don't programmers deserve a reward for their creativity?''
318 @end quotation
320 If anything deserves a reward, it is social contribution.  Creativity can
321 be a social contribution, but only in so far as society is free to use the
322 results.  If programmers deserve to be rewarded for creating innovative
323 programs, by the same token they deserve to be punished if they restrict
324 the use of these programs.
326 @quotation
327 ``Shouldn't a programmer be able to ask for a reward for his creativity?''
328 @end quotation
330 There is nothing wrong with wanting pay for work, or seeking to maximize
331 one's income, as long as one does not use means that are destructive.  But
332 the means customary in the field of software today are based on
333 destruction.
335 Extracting money from users of a program by restricting their use of it is
336 destructive because the restrictions reduce the amount and the ways that
337 the program can be used.  This reduces the amount of wealth that humanity
338 derives from the program.  When there is a deliberate choice to restrict,
339 the harmful consequences are deliberate destruction.
341 The reason a good citizen does not use such destructive means to become
342 wealthier is that, if everyone did so, we would all become poorer from the
343 mutual destructiveness.  This is Kantian ethics; or, the Golden Rule.
344 Since I do not like the consequences that result if everyone hoards
345 information, I am required to consider it wrong for one to do so.
346 Specifically, the desire to be rewarded for one's creativity does not
347 justify depriving the world in general of all or part of that creativity.
349 @quotation
350 ``Won't programmers starve?''
351 @end quotation
353 I could answer that nobody is forced to be a programmer.  Most of us cannot
354 manage to get any money for standing on the street and making faces.  But
355 we are not, as a result, condemned to spend our lives standing on the
356 street making faces, and starving.  We do something else.
358 But that is the wrong answer because it accepts the questioner's implicit
359 assumption: that without ownership of software, programmers cannot possibly
360 be paid a cent.  Supposedly it is all or nothing.
362 The real reason programmers will not starve is that it will still be
363 possible for them to get paid for programming; just not paid as much as
364 now.
366 Restricting copying is not the only basis for business in software.  It is
367 the most common basis because it brings in the most money.  If it were
368 prohibited, or rejected by the customer, software business would move to
369 other bases of organization which are now used less often.  There are
370 always numerous ways to organize any kind of business.
372 Probably programming will not be as lucrative on the new basis as it is
373 now.  But that is not an argument against the change.  It is not considered
374 an injustice that sales clerks make the salaries that they now do.  If
375 programmers made the same, that would not be an injustice either.  (In
376 practice they would still make considerably more than that.)
378 @quotation
379 ``Don't people have a right to control how their creativity is used?''
380 @end quotation
382 ``Control over the use of one's ideas'' really constitutes control over
383 other people's lives; and it is usually used to make their lives more
384 difficult.
386 People who have studied the issue of intellectual property
387 rights@footnote{In the 80s I had not yet realized how confusing it was
388 to speak of ``the issue'' of ``intellectual property.''  That term is
389 obviously biased; more subtle is the fact that it lumps together
390 various disparate laws which raise very different issues.  Nowadays I
391 urge people to reject the term ``intellectual property'' entirely,
392 lest it lead others to suppose that those laws form one coherent
393 issue.  The way to be clear is to discuss patents, copyrights, and
394 trademarks separately.  See
395 @uref{http://www.gnu.org/philosophy/not-ipr.xhtml} for more
396 explanation of how this term spreads confusion and bias.} carefully
397 (such as lawyers) say that there is no intrinsic right to intellectual
398 property.  The kinds of supposed intellectual property rights that the
399 government recognizes were created by specific acts of legislation for
400 specific purposes.
402 For example, the patent system was established to encourage inventors to
403 disclose the details of their inventions.  Its purpose was to help society
404 rather than to help inventors.  At the time, the life span of 17 years for
405 a patent was short compared with the rate of advance of the state of the
406 art.  Since patents are an issue only among manufacturers, for whom the
407 cost and effort of a license agreement are small compared with setting up
408 production, the patents often do not do much harm.  They do not obstruct
409 most individuals who use patented products.
411 The idea of copyright did not exist in ancient times, when authors
412 frequently copied other authors at length in works of non-fiction.  This
413 practice was useful, and is the only way many authors' works have survived
414 even in part.  The copyright system was created expressly for the purpose
415 of encouraging authorship.  In the domain for which it was
416 invented---books, which could be copied economically only on a printing
417 press---it did little harm, and did not obstruct most of the individuals
418 who read the books.
420 All intellectual property rights are just licenses granted by society
421 because it was thought, rightly or wrongly, that society as a whole would
422 benefit by granting them.  But in any particular situation, we have to ask:
423 are we really better off granting such license?  What kind of act are we
424 licensing a person to do?
426 The case of programs today is very different from that of books a hundred
427 years ago.  The fact that the easiest way to copy a program is from one
428 neighbor to another, the fact that a program has both source code and
429 object code which are distinct, and the fact that a program is used rather
430 than read and enjoyed, combine to create a situation in which a person who
431 enforces a copyright is harming society as a whole both materially and
432 spiritually; in which a person should not do so regardless of whether the
433 law enables him to.
435 @quotation
436 ``Competition makes things get done better.''
437 @end quotation
439 The paradigm of competition is a race: by rewarding the winner, we
440 encourage everyone to run faster.  When capitalism really works this way,
441 it does a good job; but its defenders are wrong in assuming it always works
442 this way.  If the runners forget why the reward is offered and become
443 intent on winning, no matter how, they may find other strategies---such as,
444 attacking other runners.  If the runners get into a fist fight, they will
445 all finish late.
447 Proprietary and secret software is the moral equivalent of runners in a
448 fist fight.  Sad to say, the only referee we've got does not seem to
449 object to fights; he just regulates them (``For every ten yards you run,
450 you can fire one shot'').  He really ought to break them up, and penalize
451 runners for even trying to fight.
453 @quotation
454 ``Won't everyone stop programming without a monetary incentive?''
455 @end quotation
457 Actually, many people will program with absolutely no monetary incentive.
458 Programming has an irresistible fascination for some people, usually the
459 people who are best at it.  There is no shortage of professional musicians
460 who keep at it even though they have no hope of making a living that way.
462 But really this question, though commonly asked, is not appropriate to the
463 situation.  Pay for programmers will not disappear, only become less.  So
464 the right question is, will anyone program with a reduced monetary
465 incentive?  My experience shows that they will.
467 For more than ten years, many of the world's best programmers worked at the
468 Artificial Intelligence Lab for far less money than they could have had
469 anywhere else.  They got many kinds of non-monetary rewards: fame and
470 appreciation, for example.  And creativity is also fun, a reward in itself.
472 Then most of them left when offered a chance to do the same interesting
473 work for a lot of money.
475 What the facts show is that people will program for reasons other than
476 riches; but if given a chance to make a lot of money as well, they will
477 come to expect and demand it.  Low-paying organizations do poorly in
478 competition with high-paying ones, but they do not have to do badly if the
479 high-paying ones are banned.
481 @quotation
482 ``We need the programmers desperately.  If they demand that we
483 stop helping our neighbors, we have to obey.''
484 @end quotation
486 You're never so desperate that you have to obey this sort of demand.
487 Remember: millions for defense, but not a cent for tribute!
489 @quotation
490 ``Programmers need to make a living somehow.''
491 @end quotation
493 In the short run, this is true.  However, there are plenty of ways that
494 programmers could make a living without selling the right to use a program.
495 This way is customary now because it brings programmers and businessmen the
496 most money, not because it is the only way to make a living.  It is easy to
497 find other ways if you want to find them.  Here are a number of examples.
499 A manufacturer introducing a new computer will pay for the porting of
500 operating systems onto the new hardware.
502 The sale of teaching, hand-holding and maintenance services could also
503 employ programmers.
505 People with new ideas could distribute programs as
506 freeware@footnote{Subsequently we have learned to distinguish between
507 "free software" and "freeware".  The term "freeware" means software
508 you are free to redistribute, but usually you are not free to study
509 and change the source code, so most of it is not free software.  See
510 @uref{http://www.gnu.org/philosophy/words-to-avoid.html} for more
511 explanation.}, asking for donations from satisfied users, or selling
512 hand-holding services.  I have met people who are already working this
513 way successfully.
515 Users with related needs can form users' groups, and pay dues.  A group
516 would contract with programming companies to write programs that the
517 group's members would like to use.
519 All sorts of development can be funded with a Software Tax:
521 @quotation
522 Suppose everyone who buys a computer has to pay x percent of
523 the price as a software tax.  The government gives this to
524 an agency like the NSF to spend on software development.
526 But if the computer buyer makes a donation to software development
527 himself, he can take a credit against the tax.  He can donate to
528 the project of his own choosing---often, chosen because he hopes to
529 use the results when it is done.  He can take a credit for any amount
530 of donation up to the total tax he had to pay.
532 The total tax rate could be decided by a vote of the payers of
533 the tax, weighted according to the amount they will be taxed on.
535 The consequences:
537 @itemize @bullet
538 @item
539 The computer-using community supports software development.
540 @item
541 This community decides what level of support is needed.
542 @item
543 Users who care which projects their share is spent on
544 can choose this for themselves.
545 @end itemize
546 @end quotation
548 In the long run, making programs free is a step toward the post-scarcity
549 world, where nobody will have to work very hard just to make a living.
550 People will be free to devote themselves to activities that are fun, such
551 as programming, after spending the necessary ten hours a week on required
552 tasks such as legislation, family counseling, robot repair and asteroid
553 prospecting.  There will be no need to be able to make a living from
554 programming.
556 We have already greatly reduced the amount of work that the whole society
557 must do for its actual productivity, but only a little of this has
558 translated itself into leisure for workers because much nonproductive
559 activity is required to accompany productive activity.  The main causes of
560 this are bureaucracy and isometric struggles against competition.  Free
561 software will greatly reduce these drains in the area of software
562 production.  We must do this, in order for technical gains in productivity
563 to translate into less work for us.
565 @ignore
566    arch-tag: 21eb38f8-6fa0-480a-91cd-f3dab7148542
567 @end ignore