
2008-02-10 Benjamin Kosnik <bkoz@redhat.com> Convert documentation to DocBook. * doc/Makefile.am (doc-doxygen-html): Changed to doc-html-doxygen. (doc-doxygen-man): Changed to doc-man-doxygen. (doc-performance): Changed to doc-html-performance. (doc-xml-doxygen): New. (doc-xml-single): New. (doc-xml-validate): New. (doc-html): New. (doc-html-single): New. (doc-fo): New. (doc-pdf): New. (doc-pdf-fop-xml): New. (doc-pdf-fop-fo): New. (doc-pdf-xmlto): New. (doc-pdf-xmlroff): New. (doc-pdf-prince): New. * doc/xml: New directory. * doc/xml/authors.xml: New. * doc/xml/images: New directory. * doc/xml/images/confdeps.png: Add. * doc/xml/images/confdeps.dot: Add. * doc/xml/faq.xml: New. * doc/xml/api.xml: New. * doc/xml/gnu: New directory. * doc/xml/gnu/gpl-3.0.xml: New. * doc/xml/gnu/fdl-1.2.xml: New. * doc/xml/gnu/gpl-2.0.xml: New. * doc/xml/manual: New directory. * doc/xml/manual/mt_allocator.xml: New. * doc/xml/manual/allocator.xml: New. * doc/xml/manual/ctype.xml: New. * doc/xml/manual/numerics.xml: New. * doc/xml/manual/codecvt.xml: New. * doc/xml/manual/concurrency.xml: New. * doc/xml/manual/backwards_compatibility.xml: New. * doc/xml/manual/intro.xml: New. * doc/xml/manual/shared_ptr.xml: New. * doc/xml/manual/abi.xml: New. * doc/xml/manual/status_cxxtr1.xml: New. * doc/xml/manual/auto_ptr.xml: New. * doc/xml/manual/build.xml: New. * doc/xml/manual/internals.xml: New. * doc/xml/manual/parallel_mode.xml: New. * doc/xml/manual/status_cxx1998.xml: New. * doc/xml/manual/containers.xml: New. * doc/xml/manual/io.xml: New. * doc/xml/manual/appendix_porting.xml: New. * doc/xml/manual/utilities.xml: New. * doc/xml/manual/bitmap_allocator.xml: New. * doc/xml/manual/support.xml: New. * doc/xml/manual/configure.xml: New. * doc/xml/manual/build_hacking.xml: New. * doc/xml/manual/evolution.xml: New. * doc/xml/manual/using.xml: New. * doc/xml/manual/debug.xml: New. * doc/xml/manual/localization.xml: New. * doc/xml/manual/strings.xml: New. * doc/xml/manual/debug_mode.xml: New. * doc/xml/manual/locale.xml: New. * doc/xml/manual/extensions.xml: New. * doc/xml/manual/appendix_contributing.xml: New. * doc/xml/manual/messages.xml: New. * doc/xml/manual/diagnostics.xml: New. * doc/xml/manual/appendix_free.xml: New. * doc/xml/manual/algorithms.xml: New. * doc/xml/manual/iterators.xml: New. * doc/xml/manual/spine.xml: New. * doc/xml/manual/test.xml: New. * doc/xml/manual/status_cxx200x.xml: New. * doc/xml/spine.xml: New. * doc/xml/book.txml: New. Template file. * doc/xml/chapter.txml: Same. * doc/xml/class.txml: Same. * doc/doxygen/guide.html: Removed, integrated into other docs. * doc/doxygen/user.cfg.in: Clean up XML generation. * doc/doxygen/run_doxygen: Move to.. * scripts/run_doxygen: ...here. * configure: Regenerate. * Makefile.in: Regenerate. * src/Makefile.in: Regenerate. * doc/Makefile.in: Regenerate. * po/Makefile.in: Regenerate. * libmath/Makefile.in: Regenerate. * include/Makefile.in: Regenerate. * libsupc++/Makefile.in: Regenerate. * testsuite/Makefile.in: Regenerate. * aclocal.m4: Regenerate. From-SVN: r132226
176 lines
6.9 KiB
XML
176 lines
6.9 KiB
XML
<?xml version='1.0'?>
|
|
<!DOCTYPE appendix PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
|
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"
|
|
[ ]>
|
|
|
|
<appendix id="appendix.free" xreflabel="Free">
|
|
<?dbhtml filename="appendix_free.html"?>
|
|
|
|
<appendixinfo>
|
|
<keywordset>
|
|
<keyword>
|
|
ISO C++
|
|
</keyword>
|
|
<keyword>
|
|
library
|
|
</keyword>
|
|
</keywordset>
|
|
</appendixinfo>
|
|
|
|
<title>Free Software Needs Free Documentation</title>
|
|
|
|
<para>
|
|
The biggest deficiency in free operating systems is not in the
|
|
software--it is the lack of good free manuals that we can include in
|
|
these systems. Many of our most important programs do not come with
|
|
full manuals. Documentation is an essential part of any software
|
|
package; when an important free software package does not come with a
|
|
free manual, that is a major gap. We have many such gaps today.
|
|
</para>
|
|
|
|
<para>
|
|
Once upon a time, many years ago, I thought I would learn Perl. I got
|
|
a copy of a free manual, but I found it hard to read. When I asked
|
|
Perl users about alternatives, they told me that there were better
|
|
introductory manuals--but those were not free.
|
|
</para>
|
|
|
|
<para>
|
|
Why was this? The authors of the good manuals had written them for
|
|
O'Reilly Associates, which published them with restrictive terms--no
|
|
copying, no modification, source files not available--which exclude
|
|
them from the free software community.
|
|
</para>
|
|
|
|
<para>
|
|
That wasn't the first time this sort of thing has happened, and (to
|
|
our community's great loss) it was far from the last. Proprietary
|
|
manual publishers have enticed a great many authors to restrict their
|
|
manuals since then. Many times I have heard a GNU user eagerly tell
|
|
me about a manual that he is writing, with which he expects to help
|
|
the GNU project--and then had my hopes dashed, as he proceeded to
|
|
explain that he had signed a contract with a publisher that would
|
|
restrict it so that we cannot use it.
|
|
</para>
|
|
|
|
<para>
|
|
Given that writing good English is a rare skill among programmers, we
|
|
can ill afford to lose manuals this way.
|
|
</para>
|
|
|
|
<para>
|
|
Free documentation, like free software, is a matter of freedom,
|
|
not price. The problem with these manuals was not that O'Reilly
|
|
Associates charged a price for printed copies--that in itself is fine.
|
|
(The Free Software Foundation <ulink url="http://www.gnu.org/doc/doc.html">sells printed copies</ulink> of
|
|
free GNU manuals, too.) But GNU manuals are available in source code
|
|
form, while these manuals are available only on paper. GNU manuals
|
|
come with permission to copy and modify; the Perl manuals do not.
|
|
These restrictions are the problems.
|
|
</para>
|
|
|
|
<para>
|
|
The criterion for a free manual is pretty much the same as for free
|
|
software: it is a matter of giving all users certain freedoms.
|
|
Redistribution (including commercial redistribution) must be
|
|
permitted, so that the manual can accompany every copy of the program,
|
|
on-line or on paper. Permission for modification is crucial too.
|
|
</para>
|
|
|
|
<para>
|
|
As a general rule, I don't believe that it is essential for people to
|
|
have permission to modify all sorts of articles and books. The issues
|
|
for writings are not necessarily the same as those for software. For
|
|
example, I don't think you or I are obliged to give permission to
|
|
modify articles like this one, which describe our actions and our
|
|
views.
|
|
</para>
|
|
|
|
<para>
|
|
But there is a particular reason why the freedom to modify is crucial
|
|
for documentation for free software. When people exercise their right
|
|
to modify the software, and add or change its features, if they are
|
|
conscientious they will change the manual too--so they can provide
|
|
accurate and usable documentation with the modified program. A manual
|
|
which forbids programmers to be conscientious and finish the job, or
|
|
more precisely requires them to write a new manual from scratch if
|
|
they change the program, does not fill our community's needs.
|
|
</para>
|
|
|
|
<para>
|
|
While a blanket prohibition on modification is unacceptable, some
|
|
kinds of limits on the method of modification pose no problem. For
|
|
example, requirements to preserve the original author's copyright
|
|
notice, the distribution terms, or the list of authors, are ok. It is
|
|
also no problem to require modified versions to include notice that
|
|
they were modified, even to have entire sections that may not be
|
|
deleted or changed, as long as these sections deal with nontechnical
|
|
topics. (Some GNU manuals have them.)
|
|
</para>
|
|
|
|
<para>
|
|
These kinds of restrictions are not a problem because, as a practical
|
|
matter, they don't stop the conscientious programmer from adapting the
|
|
manual to fit the modified program. In other words, they don't block
|
|
the free software community from making full use of the manual.
|
|
</para>
|
|
|
|
<para>
|
|
However, it must be possible to modify all the <emphasis>technical</emphasis>
|
|
content of the manual, and then distribute the result in all the usual
|
|
media, through all the usual channels; otherwise, the restrictions do
|
|
block the community, the manual is not free, and so we need another
|
|
manual.
|
|
</para>
|
|
|
|
<para>
|
|
Unfortunately, it is often hard to find someone to write another
|
|
manual when a proprietary manual exists. The obstacle is that many
|
|
users think that a proprietary manual is good enough--so they don't
|
|
see the need to write a free manual. They do not see that the free
|
|
operating system has a gap that needs filling.
|
|
</para>
|
|
|
|
<para>
|
|
Why do users think that proprietary manuals are good enough? Some
|
|
have not considered the issue. I hope this article will do something
|
|
to change that.
|
|
</para>
|
|
|
|
<para>
|
|
Other users consider proprietary manuals acceptable for the same
|
|
reason so many people consider proprietary software acceptable: they
|
|
judge in purely practical terms, not using freedom as a criterion.
|
|
These people are entitled to their opinions, but since those opinions
|
|
spring from values which do not include freedom, they are no guide for
|
|
those of us who do value freedom.
|
|
</para>
|
|
|
|
<para>
|
|
Please spread the word about this issue. We continue to lose manuals
|
|
to proprietary publishing. If we spread the word that proprietary
|
|
manuals are not sufficient, perhaps the next person who wants to help
|
|
GNU by writing documentation will realize, before it is too late, that
|
|
he must above all make it free.
|
|
</para>
|
|
|
|
<para>
|
|
We can also encourage commercial publishers to sell free, copylefted
|
|
manuals instead of proprietary ones. One way you can help this is to
|
|
check the distribution terms of a manual before you buy it, and
|
|
prefer copylefted manuals to non-copylefted ones.
|
|
</para>
|
|
<para>
|
|
[Note: We now maintain a <ulink url="http://www.fsf.org/licensing/doc/other-free-books.html">web page
|
|
that lists free books available from other publishers</ulink>].
|
|
</para>
|
|
|
|
<para>Copyright © 2004, 2005, 2006, 2007 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA</para>
|
|
|
|
<para>Verbatim copying and distribution of this entire article are
|
|
permitted worldwide, without royalty, in any medium, provided this
|
|
notice is preserved.</para>
|
|
|
|
<para>Report any problems or suggestions to <email>webmaster@fsf.org</email>.</para>
|
|
|
|
</appendix>
|