improve out-of-bounds checking with GCC 10 attribute access [BZ #25219]
[glibc.git] / manual / freemanuals.texi
blob189f63c4599be8d38047937a273998fb678c4cbe
1 @c freemanuals.texi - blurb for free documentation.
2 @c This file is intended to be included within another document,
3 @c hence no sectioning command or @node.
5 @cindex free documentation
7 The biggest deficiency in the free software community today is not in
8 the software---it is the lack of good free documentation that we can
9 include with the free software.  Many of our most important
10 programs do not come with free reference manuals and free introductory
11 texts.  Documentation is an essential part of any software package;
12 when an important free software package does not come with a free
13 manual and a free tutorial, that is a major gap.  We have many such
14 gaps today.
16 Consider Perl, for instance.  The tutorial manuals that people
17 normally use are non-free.  How did this come about?  Because the
18 authors of those manuals published them with restrictive terms---no
19 copying, no modification, source files not available---which exclude
20 them from the free software world.
22 That wasn't the first time this sort of thing happened, and it was far
23 from the last.  Many times we have heard a GNU user eagerly describe a
24 manual that he is writing, his intended contribution to the community,
25 only to learn that he had ruined everything by signing a publication
26 contract to make it non-free.
28 Free documentation, like free software, is a matter of freedom, not
29 price.  The problem with the non-free manual is not that publishers
30 charge a price for printed copies---that in itself is fine.  (The Free
31 Software Foundation sells printed copies of manuals, too.)  The
32 problem is the restrictions on the use of the manual.  Free manuals
33 are available in source code form, and give you permission to copy and
34 modify.  Non-free manuals do not allow this.
36 The criteria of freedom for a free manual are roughly the same as for
37 free software.  Redistribution (including the normal kinds of
38 commercial redistribution) must be permitted, so that the manual can
39 accompany every copy of the program, both on-line and on paper.
41 Permission for modification of the technical content is crucial too.
42 When people modify the software, adding or changing features, if they
43 are conscientious they will change the manual too---so they can
44 provide accurate and clear documentation for the modified program.  A
45 manual that leaves you no choice but to write a new manual to document
46 a changed version of the program is not really available to our
47 community.
49 Some kinds of limits on the way modification is handled are
50 acceptable.  For example, requirements to preserve the original
51 author's copyright notice, the distribution terms, or the list of
52 authors, are ok.  It is also no problem to require modified versions
53 to include notice that they were modified.  Even entire sections that
54 may not be deleted or changed are acceptable, as long as they deal
55 with nontechnical topics (like this one).  These kinds of restrictions
56 are acceptable because they don't obstruct the community's normal use
57 of the manual.
59 However, it must be possible to modify all the @emph{technical}
60 content of the manual, and then distribute the result in all the usual
61 media, through all the usual channels.  Otherwise, the restrictions
62 obstruct the use of the manual, it is not free, and we need another
63 manual to replace it.
65 Please spread the word about this issue.  Our community continues to
66 lose manuals to proprietary publishing.  If we spread the word that
67 free software needs free reference manuals and free tutorials, perhaps
68 the next person who wants to contribute by writing documentation will
69 realize, before it is too late, that only free manuals contribute to
70 the free software community.
72 If you are writing documentation, please insist on publishing it under
73 the GNU Free Documentation License or another free documentation
74 license.  Remember that this decision requires your approval---you
75 don't have to let the publisher decide.  Some commercial publishers
76 will use a free license if you insist, but they will not propose the
77 option; it is up to you to raise the issue and say firmly that this is
78 what you want.  If the publisher you are dealing with refuses, please
79 try other publishers.  If you're not sure whether a proposed license
80 is free, write to @email{licensing@@gnu.org}.
82 You can encourage commercial publishers to sell more free, copylefted
83 manuals and tutorials by buying them, and particularly by buying
84 copies from the publishers that paid for their writing or for major
85 improvements.  Meanwhile, try to avoid buying non-free documentation
86 at all.  Check the distribution terms of a manual before you buy it,
87 and insist that whoever seeks your business must respect your freedom.
88 Check the history of the book, and try reward the publishers that have
89 paid or pay the authors to work on it.
91 The Free Software Foundation maintains a list of free documentation
92 published by other publishers, at
93 @url{https://www.fsf.org/doc/other-free-books.html}.