summaryrefslogtreecommitdiffstats
path: root/share
diff options
context:
space:
mode:
authorjkh <jkh@FreeBSD.org>1995-12-07 13:22:18 +0000
committerjkh <jkh@FreeBSD.org>1995-12-07 13:22:18 +0000
commit5e42450287f1184094afaa427495cfbdd0c27dfd (patch)
tree850522ebdd561979cff08ee19205dad2c3f9deff /share
parentd68b99dfe36ed5a1dcefccd0d8795d3ee2714366 (diff)
downloadFreeBSD-src-5e42450287f1184094afaa427495cfbdd0c27dfd.zip
FreeBSD-src-5e42450287f1184094afaa427495cfbdd0c27dfd.tar.gz
A number of misc changes, a revamp of chapter 17, place-holder for
new "project goals" document.
Diffstat (limited to 'share')
-rw-r--r--share/doc/handbook/Makefile4
-rw-r--r--share/doc/handbook/goals.sgml9
-rw-r--r--share/doc/handbook/handbook.sgml17
-rw-r--r--share/doc/handbook/porting.sgml133
-rw-r--r--share/doc/handbook/relnotes.sgml4
-rw-r--r--share/doc/handbook/sections.sgml3
-rw-r--r--share/doc/handbook/submitters.sgml152
7 files changed, 196 insertions, 126 deletions
diff --git a/share/doc/handbook/Makefile b/share/doc/handbook/Makefile
index 17d7295..045d3f2 100644
--- a/share/doc/handbook/Makefile
+++ b/share/doc/handbook/Makefile
@@ -1,9 +1,9 @@
-# $Id: Makefile,v 1.5 1995/10/07 04:31:10 jfieber Exp $
+# $Id: Makefile,v 1.6 1995/10/14 21:49:43 jfieber Exp $
SRCS= authors.sgml basics.sgml bibliography.sgml boothelp.sgml
SRCS+= booting.sgml contrib.sgml crypt.sgml ctm.sgml current.sgml dialup.sgml
SRCS+= diskless.sgml dma.sgml eresources.sgml esdi.sgml
-SRCS+= firewalls.sgml glossary.sgml
+SRCS+= firewalls.sgml glossary.sgml goals.sgml
SRCS+= handbook.sgml history.sgml hw.sgml install.sgml kerberos.sgml
SRCS+= kernelconfig.sgml kerneldebug.sgml memoryuse.sgml
SRCS+= mirrors.sgml nfs.sgml nutshell.sgml
diff --git a/share/doc/handbook/goals.sgml b/share/doc/handbook/goals.sgml
new file mode 100644
index 0000000..c74425a
--- /dev/null
+++ b/share/doc/handbook/goals.sgml
@@ -0,0 +1,9 @@
+<!-- $Id$ -->
+<!-- The FreeBSD Documentation Project -->
+
+<sect><heading>FreeBSD Project goals<label id="goals"></heading>
+
+<p><em>Contributed by &a.jkh;</em>.
+
+<p><em>Note: This section is under construction.</em>
+
diff --git a/share/doc/handbook/handbook.sgml b/share/doc/handbook/handbook.sgml
index d5ea1c3..d8375cc 100644
--- a/share/doc/handbook/handbook.sgml
+++ b/share/doc/handbook/handbook.sgml
@@ -1,4 +1,4 @@
-<!-- $Id: handbook.sgml,v 1.35 1995/11/25 20:00:46 jkh Exp $ -->
+<!-- $Id: handbook.sgml,v 1.36 1995/12/04 13:39:30 jfieber Exp $ -->
<!-- The FreeBSD Documentation Project -->
<!DOCTYPE linuxdoc PUBLIC "-//FreeBSD//DTD linuxdoc//EN" [
@@ -49,8 +49,20 @@ Web server">.
<part><heading>Basics</heading>
<chapt><heading>Introduction</heading>
+ <p>FreeBSD is a 4.4 BSD Lite based operating system for Intel
+ architecture (x86) based PCs. For an overview of FreeBSD, see
+ <ref id="nutshell" name="FreeBSD in a nutshell">. For a
+ history of the project, read <ref id="history"
+ name="a brief history of FreeBSD">. To see a description of the
+ latest release, read <ref id="relnotes"
+ name="about the current release">. If you're interested
+ in contributing something to the FreeBSD project (code, equipment,
+ sacks of unmarked bills), please see about <ref id="submitters"
+ name="contributing to FreeBSD">.
+
&nutshell;
&history;
+ &goals;
&relnotes;
&install;
@@ -59,7 +71,6 @@ Web server">.
<chapt><heading>Installing applications</heading>
<sect><heading>* Installing packages</heading>
&ports;
- &porting;
<!-- ************************************************************ -->
@@ -124,8 +135,8 @@ Web server">.
&ctm;
&sup;
&kerneldebug;
- &submitters;
&troubleshooting;
+ &submitters;
<!-- ************************************************************ -->
diff --git a/share/doc/handbook/porting.sgml b/share/doc/handbook/porting.sgml
index e675568..20c7a5f 100644
--- a/share/doc/handbook/porting.sgml
+++ b/share/doc/handbook/porting.sgml
@@ -1,21 +1,30 @@
-<!-- $Id: porting.sgml,v 1.9 1995/12/04 08:11:58 asami Exp $ -->
+<!-- $Id: porting.sgml,v 1.10 1995/12/04 17:58:44 jfieber Exp $ -->
<!-- The FreeBSD Documentation Project -->
-<sect><heading>Porting applications<label id="porting"></heading>
+<sect1><heading>Porting an existing piece of free software<label id="porting"></heading>
<p><em>Contributed by &a.jkh;, &a.gpalmer; and
&a.asami;.<newline>19 August 1995.</em>
- Here are the guidelines one should follow in
- creating a new port for FreeBSD 2.x . This documentation will
- change as this process is progressively refined, so watch
- this space for details. The <tt>&dollar;{..}</tt>
- variable names you see in this document all refer to
- various user-overridable defaults used (and documented)
- by <tt>/usr/share/mk/bsd.port.mk</tt>. Please refer to
- that file for more details.
-
- <sect1>
+<p>The porting of freely available software, while perhaps not as
+gratifying as developing your own from scratch, is still a vital part
+of FreeBSD's growth and of great usefulness to those who wouldn't
+otherwise know where to turn for it. All ported software is organized
+into a carefully organized hierarchy know as ``the ports collection''.
+The collection enables a new user to get a quick and complete overview
+of what's available for FreeBSD in an easy-to-compile form. It also
+saves considerable space by not actually containing the the majority
+of the sources being ported, but merely those differences required for
+running under FreeBSD.
+
+<p>What follows are some guidelines for creating a new port for
+FreeBSD 2.x . The <tt>&dollar;{..}</tt> variable names you will
+see in this document all refer to various user-overridable defaults
+used (and documented) by <tt>/usr/share/mk/bsd.port.mk</tt>.
+Please refer to that file for more details on the inner workings of
+the ports collection.
+
+ <sect2>
<heading>Before Starting the Port<label id="porting:starting"></heading>
<p>Note: Only a fraction of the overridable variables are
@@ -98,7 +107,7 @@
screwed up and used it in the wrong place doesn't mean
you should do so too.
- <sect1>
+ <sect2>
<heading>Quick Porting</heading>
<p>This section tells you how to do a quick port. In many
@@ -114,7 +123,7 @@
change something, you'll have to refer to the next section
too.
- <sect2>
+ <sect3>
<heading>Writing the Makefile</heading>
<p>The minimal <tt>Makefile</tt> would look something like this:
@@ -125,7 +134,7 @@
# Date created: 5 December 1994
# Whom: asami
#
- # $Id: porting.sgml,v 1.9 1995/12/04 08:11:58 asami Exp $
+ # $Id: porting.sgml,v 1.10 1995/12/04 17:58:44 jfieber Exp $
#
DISTNAME= oneko-1.1b
@@ -144,7 +153,7 @@
automatically by CVS when the port is imported to our main
ports tree.
- <sect2>
+ <sect3>
<heading>Writing the description files</heading>
<p>There are three required description files that are
@@ -152,7 +161,7 @@
They are <tt>COMMENT</tt>, <tt>DESCR</tt>, and
<tt>PLIST</tt>, and reside in the <tt>pkg</tt> subdirectory.
- <sect3>
+ <sect4>
<heading>COMMENT</heading>
<p>This is the one-line description of the port. It is
@@ -162,7 +171,7 @@
A cat chasing a mouse all over the screen
</verb></tscreen>
- <sect3>
+ <sect4>
<heading>DESCR</heading>
<p>This is a longer description of the port. One to a few
@@ -186,7 +195,7 @@ the screen.
asami@cs.berkeley.edu
</verb></tscreen>
- <sect3>
+ <sect4>
<heading>PLIST</heading>
<p>This file lists all the files installed by the port. It
@@ -206,13 +215,13 @@ lib/X11/oneko/cat2.xpm
lib/X11/oneko/mouse.xpm
</verb></tscreen>
- <sect2>
+ <sect3>
<heading>Creating the checksum file</heading>
<p>Just type `<tt>make makesum</tt>'. The ports make rules
will automatically generate the file <tt>files/md5</tt>.
- <sect2>
+ <sect3>
<heading>Testing the port</heading>
<p>You should make sure that the port rules do exactly what
@@ -223,7 +232,7 @@ lib/X11/oneko/mouse.xpm
&lt;pkgname&gt;.tgz</tt>' and see if everything re-appears
and works correctly.
- <sect2>
+ <sect3>
<heading>Submitting the port</heading>
<p>Now that you're happy with your port, the only thing
@@ -242,7 +251,7 @@ ftp://ftp.freebsd.org/pub/FreeBSD/incoming/
FreeBSD contributors' on the FreeBSD Handbook and other
files. Isn't that great?!? <tt>:)</tt>
- <sect1>
+ <sect2>
<heading>Slow Porting</heading>
<p>Ok, so it wasn't that simple, and the port required some
@@ -250,7 +259,7 @@ ftp://ftp.freebsd.org/pub/FreeBSD/incoming/
explain, step by step, how to modify it to get it to work with
the ports paradigm.
- <sect2>
+ <sect3>
<heading>How things work</heading>
<p>First, this is the sequence of events which occurs when the
@@ -347,7 +356,7 @@ ftp://ftp.freebsd.org/pub/FreeBSD/incoming/
`<tt>make</tt>', let's go through the recommended steps to
create the perfect port.
- <sect2>
+ <sect3>
<heading>Getting the original sources</heading>
<p>Get the original sources (normally) as a compressed tarball
@@ -372,7 +381,7 @@ ftp://freefall.freebsd.org/pub/FreeBSD/LOCAL_PORTS/
we have a way to handle these situations (see the
description of <tt>&dollar;{PATCHFILES}</tt> below).
- <sect2>
+ <sect3>
<heading>Modifying the port</heading>
<p>Unpack a copy of the tarball in a private directory and
@@ -392,7 +401,7 @@ ftp://freefall.freebsd.org/pub/FreeBSD/LOCAL_PORTS/
as possible for the end-user while using a minimum of disk
space.
- <sect2>
+ <sect3>
<heading>Patching</heading>
<p>In the preparation of the port, files that have been added
@@ -414,7 +423,7 @@ ftp://freefall.freebsd.org/pub/FreeBSD/LOCAL_PORTS/
same file (e.g., patch-aa and patch-ab both changing
<tt>&dollar;{WRKSRC}</tt>/foobar.c).
- <sect2>
+ <sect3>
<heading>Configuring</heading>
<p>Include any additional customization commands to your
@@ -423,7 +432,7 @@ ftp://freefall.freebsd.org/pub/FreeBSD/LOCAL_PORTS/
can also do this as Makefile targets and/or scripts with the
name <tt>pre-configure</tt> or <tt>post-configure</tt>.
- <sect2>
+ <sect3>
<heading>Handling user input</heading>
<p>If your port requires user input to build, configure or
@@ -434,7 +443,7 @@ ftp://freefall.freebsd.org/pub/FreeBSD/LOCAL_PORTS/
then <em>only</em> those ports requiring interaction are
built).
- <sect1>
+ <sect2>
<heading>Configuring the Makefile</heading>
<p>Configuring the Makefile is pretty simple, and again we
@@ -442,7 +451,7 @@ ftp://freefall.freebsd.org/pub/FreeBSD/LOCAL_PORTS/
starting. Consider the following problems in sequence as
you design your new Makefile:
- <sect2>
+ <sect3>
<heading>The original source</heading>
<p>Does it live in <tt>&dollar;{DISTDIR}</tt> as a standard
@@ -461,7 +470,7 @@ ftp://freefall.freebsd.org/pub/FreeBSD/LOCAL_PORTS/
`<tt>do-extract</tt>' target to override the default, though
this should be rarely, if ever, necessary.
- <sect2>
+ <sect3>
<heading>DISTNAME</heading>
<p>You should set <tt>&dollar;{DISTNAME}</tt> to be the base
name of your port. The default rules expect the
@@ -492,7 +501,7 @@ work/foozolix-1.0/
extraction, and the rest will be just left in
<tt>&dollar;{DISTDIR}</tt> for later use.
- <sect2>
+ <sect3>
<heading>CATEGORIES and KEYWORDS</heading>
<p>When a package is created, it is put under
<tt>/usr/ports/packages/All</tt> and links are made from one
@@ -513,7 +522,7 @@ work/foozolix-1.0/
<tt>&dollar;{CATEGORIES}</tt>. This is currently used only
as a field of the <tt>/usr/ports/INDEX</tt> file.
- <sect2>
+ <sect3>
<heading>MASTER_SITES</heading>
<p>If you have a ftp-URL pointing at the the original tarball,
record the directory containing the tarball in
@@ -531,7 +540,7 @@ work/foozolix-1.0/
to add support for automatically determining the closest
master site and fetching from there!
- <sect2>
+ <sect3>
<heading>PATCHFILES</heading>
<p>If your port requires some additional patches that are
available by ftp, set <tt>&dollar;{PATCHFILES}</tt> to the
@@ -550,16 +559,16 @@ work/foozolix-1.0/
decompressed automatically if the filenames end with
`<tt>.gz</tt>' or `<tt>.Z</tt>'.
- <sect2>
+ <sect3>
<heading>MAINTAINER</heading>
<p>Set your mail-address here. Please. <tt>:)</tt>
- <sect2>
+ <sect3>
<heading>Dependencies</heading>
<p>Many ports depend on other ports. There are five
variables that you can use to ensure that all the required
bits will be on the user's machine.
- <sect3>
+ <sect4>
<heading>LIB_DEPENDS</heading>
<p>This variable specifies the shared libraries this port
depends on. It is a list of `<tt>lib:dir</tt>' pairs
@@ -576,7 +585,7 @@ LIB_DEPENDS= tcl\\.7\\.:${PORTSDIR}/lang/tcl
Note that the <tt>lib</tt> part is just an argument given
to `<tt>ldconfig -r | grep</tt>', so periods should be
escaped by two backslashes like in the example above.
- <sect3>
+ <sect4>
<heading>RUN_DEPENDS</heading>
<p>This variable specifies executables this port depends on
during run-time. It is a list of `<tt>exec:dir</tt>'
@@ -594,7 +603,7 @@ RUN_DEPENDS= wish:${PORTSDIR}/x11/tk
target. Also, the name of the dependency is put in to the
package so that <tt>pkg_add</tt> will automatically
install it if it is not on the user's system.
- <sect3>
+ <sect4>
<heading>BUILD_DEPENDS</heading>
<p>This variable specifies executables this port requires to
build. Like <tt>RUN_DEPENDS</tt>, it is a list of
@@ -609,7 +618,7 @@ BUILD_DEPENDS= unzip:${PORTSDIR}/archivers/unzip
Note that `build' here means everything from extracting to
compilation. The dependency is checked from within the
<tt>extract</tt> target.
- <sect3>
+ <sect4>
<heading>FETCH_DEPENDS</heading>
<p>This variable specifies executables this port requires to
fetch. Like the previous two, it is a list of
@@ -623,7 +632,7 @@ FETCH_DEPENDS= ncftp2:${PORTSDIR}/net/ncftp2
The dependency is checked from within the <tt>fetch</tt>
target.
- <sect3>
+ <sect4>
<heading>DEPENDS</heading>
<p>If there is a dependency that doesn't fall into either of
the above four categories, or your port requires to have
@@ -632,7 +641,7 @@ FETCH_DEPENDS= ncftp2:${PORTSDIR}/net/ncftp2
just a list of directories, as there is nothing to check,
unlike the previous two.
- <sect2>
+ <sect3>
<heading>Building mechanisms</heading>
<p>If your package uses GNU <tt>make</tt>, set
`<tt>USE_GMAKE=yes</tt>'. If your package uses GNU
@@ -654,14 +663,14 @@ FETCH_DEPENDS= ncftp2:${PORTSDIR}/net/ncftp2
<tt>&dollar;{ALL_TARGET}</tt> accordingly. Same goes for
`<tt>install</tt>' and <tt>&dollar;{INSTALL_TARGET}</tt>.
- <sect2>
+ <sect3>
<heading>NO_INSTALL_MANPAGES</heading>
<p>If the port uses imake but doesn't understand the
`<tt>install.man</tt>' target,
`<tt>NO_INSTALL_MANPAGES=yes</tt>' should be set. In
addition, the author of the original port should be shot.
- <sect1>
+ <sect2>
<heading>Licensing Problems</heading>
<p>Some software packages have restrictive licenses or are in
violation to the law (PKP's patent on public key crypto,
@@ -688,17 +697,17 @@ FETCH_DEPENDS= ncftp2:${PORTSDIR}/net/ncftp2
<p>Note: If you are a committer, make sure you update the
<tt>ports/LEGAL</tt> file too.
- <sect1>
+ <sect2>
<heading>* Upgrading</heading>
<p>This section is still under construction, sorry.
- <sect1>
+ <sect2>
<heading>Do's and Dont's</heading>
<p>Here's a list of common do's and dont's that you encounter
during the porting process.
- <sect2>
+ <sect3>
<heading>WRKDIR</heading>
<p>Don't leave anything valuable lying around in the
`<tt>work</tt>' subdirectory, `<tt>make clean</tt>' will
@@ -707,14 +716,14 @@ FETCH_DEPENDS= ncftp2:${PORTSDIR}/net/ncftp2
`<tt>files</tt>' and use the <tt>post-extract</tt> target to
copy them to the `<tt>work</tt>' subdirectory.
- <sect2>
+ <sect3>
<heading>Package information</heading>
<p>Do install package information, i.e., the three files in
<tt>pkg</tt>. Note that these files are not used only for
packaging anymore, and are <em>mandatory</em> now, even if
<tt>&dollar;{NO_PACKAGE}</tt> is set.
- <sect2>
+ <sect3>
<heading>Compress manpages, strip binaries</heading>
<p>Do compress manpages and strip binaries. If the original
source already does that, fine; otherwise, you can add a
@@ -734,7 +743,7 @@ FETCH_DEPENDS= ncftp2:${PORTSDIR}/net/ncftp2
to check whether the binary is stripped or not. If it
doesn't say `not stripped', it is stripped.
- <sect2>
+ <sect3>
<heading>Custom utilities</heading>
<p>Don't rely on custom utilities in your local configure
script or anything -- they may not be there on the user's
@@ -755,14 +764,14 @@ FETCH_DEPENDS= ncftp2:${PORTSDIR}/net/ncftp2
`<tt>make</tt>' and have that port, as well as everything it
requires, built automatically.
- <sect2>
+ <sect3>
<heading>Feedback</heading>
<p>Do send applicable changes/patches to the original
author/maintainer for inclusion in next release of the code.
This will only make your job that much easier for the next
release.
- <sect2>
+ <sect3>
<heading>RCS strings</heading>
<p>Don't put RCS strings in patches. CVS will mangle them
when we put the files into the ports tree, and when we check
@@ -771,7 +780,7 @@ FETCH_DEPENDS= ncftp2:${PORTSDIR}/net/ncftp2
(`<tt>&dollar;</tt>') signs, and typically start with
`<tt>&dollar;Id</tt>' or `<tt>&dollar;RCS</tt>'.
- <sect2>
+ <sect3>
<heading>Recursive diff</heading>
<p>Using the recurse (`<tt>-r</tt>') option to <tt>diff</tt>
to generate patches is fine, but please take a look at the
@@ -783,7 +792,7 @@ FETCH_DEPENDS= ncftp2:${PORTSDIR}/net/ncftp2
<tt>post-extract</tt> target rather than as part of the
patch.
- <sect2>
+ <sect3>
<heading>PREFIX</heading>
<p>Do try to make your port install relative to
<tt>&dollar;{PREFIX}</tt> in your Makefiles. This will
@@ -801,7 +810,7 @@ FETCH_DEPENDS= ncftp2:${PORTSDIR}/net/ncftp2
of <tt>&dollar;{PREFIX}</tt> unless the package is one that
hard-codes itself to a compiled-in location.
- <sect2>
+ <sect3>
<heading>Subdirectories</heading>
<p>Try to let the port put things in the right subdirectories
of <tt>&dollar;{PREFIX}</tt>. Some ports lump everything
@@ -818,7 +827,7 @@ FETCH_DEPENDS= ncftp2:${PORTSDIR}/net/ncftp2
<tt>/usr</tt> pretty much applies to <tt>/usr/local</tt>
too.
- <sect2>
+ <sect3>
<heading>ldconfig</heading>
<p>If your port installs a shared library, add a
<tt>post-install</tt> target to your Makefile that runs
@@ -851,7 +860,7 @@ lib/libtcl.so.7.3
eternally rot to death in the deepest bowels of hell (not
necessarily in that order)....
- <sect2>
+ <sect3>
<heading>If you are stuck....</heading>
<p>Do look at existing examples and the <tt>bsd.port.mk</tt>
file before asking us questions! <tt>;)</tt>
@@ -859,7 +868,7 @@ lib/libtcl.so.7.3
<p>Do ask us questions if you have any trouble! Don't just
beat your head against a wall! <tt>:)</tt>
- <sect1>
+ <sect2>
<heading>A Sample Makefile</heading>
<p>Here is a sample Makefile that you can use to create a new
port. Make sure you remove all the extra comments (ones
@@ -880,7 +889,7 @@ lib/libtcl.so.7.3
person who wrote this Makefile]
# Whom: Satoshi Asami <asami@FreeBSD.ORG>
#
- # $Id: porting.sgml,v 1.9 1995/12/04 08:11:58 asami Exp $
+ # $Id: porting.sgml,v 1.10 1995/12/04 17:58:44 jfieber Exp $
[ ^^^^ don't worry about this...it will be automatically filled in by CVS when
it is committed to our repository]
#
@@ -943,7 +952,7 @@ lib/libtcl.so.7.3
.include <bsd.port.mk>
</verb></tscreen>
- <sect1>
+ <sect2>
<heading>Package Names</heading>
<p>The following are the conventions you should follow in
@@ -998,7 +1007,7 @@ xvgr-2.10pl1 xvgr-2.10.1 `pl' allowed only when no maj/minor numbers
original author or use the date string (`yy.mm.dd') as the
version.
- <sect1>
+ <sect2>
<heading>That's It, Folks!</heading>
<p>Boy, this sure was a long tutorial, wasn't it? Thanks for
diff --git a/share/doc/handbook/relnotes.sgml b/share/doc/handbook/relnotes.sgml
index 463cb27..e205b8c 100644
--- a/share/doc/handbook/relnotes.sgml
+++ b/share/doc/handbook/relnotes.sgml
@@ -1,11 +1,11 @@
-<!-- $Id: relnotes.sgml,v 1.4.2.4 1995/11/07 18:24:45 jfieber Exp $ -->
+<!-- $Id: relnotes.sgml,v 1.7 1995/11/20 01:10:28 jfieber Exp $ -->
<!-- The FreeBSD Documentation Project -->
<!--
<!DOCTYPE linuxdoc PUBLIC '-//FreeBSD//DTD linuxdoc//EN'>
<linuxdoc><book><chapt>foo
-->
- <sect><heading>About this release<label id="relnotes"></heading>
+ <sect><heading>About the current release<label id="relnotes"></heading>
<p>FreeBSD is a freely available, full source 4.4 BSD
Lite based release for Intel i386/i486/Pentium (or
diff --git a/share/doc/handbook/sections.sgml b/share/doc/handbook/sections.sgml
index 9551e46..bfd2f0c 100644
--- a/share/doc/handbook/sections.sgml
+++ b/share/doc/handbook/sections.sgml
@@ -1,4 +1,4 @@
-<!-- $Id: sections.sgml,v 1.5 1995/10/07 04:31:53 jfieber Exp $ -->
+<!-- $Id: sections.sgml,v 1.6 1995/10/14 21:49:54 jfieber Exp $ -->
<!-- The FreeBSD Documentation Project -->
<!-- Entities containing all the pieces of the handbook are -->
@@ -17,6 +17,7 @@
<!ENTITY eresources SYSTEM "eresources.sgml">
<!ENTITY esdi SYSTEM "esdi.sgml">
<!ENTITY firewalls SYSTEM "firewalls.sgml">
+<!ENTITY goals SYSTEM "goals.sgml">
<!ENTITY glossary SYSTEM "glossary.sgml">
<!ENTITY history SYSTEM "history.sgml">
<!ENTITY hw SYSTEM "hw.sgml">
diff --git a/share/doc/handbook/submitters.sgml b/share/doc/handbook/submitters.sgml
index 8123f0f..c3abafe 100644
--- a/share/doc/handbook/submitters.sgml
+++ b/share/doc/handbook/submitters.sgml
@@ -1,46 +1,96 @@
-<!-- $Id: submitters.sgml,v 1.7 1995/09/27 00:46:29 jmz Exp $ -->
+<!-- $Id: submitters.sgml,v 1.8 1995/10/07 04:32:03 jfieber Exp $ -->
<!-- The FreeBSD Documentation Project -->
<chapt><heading>Contributing to FreeBSD<label id="submitters"></heading>
<p><em>Contributed by &a.jkh;.</em>
-This guide is intended for those who are moderately familiar with
-FreeBSD and have reached a point where they have some locally
-developed customizations or fixes to the system which they'd like to
-incorporate back into the mainstream sources. Submitting something to
-the FreeBSD project ensures that you won't have to continually
-reintegrate it with each subsequent release and is also an excellent
-way of getting your code seriously <em>tested</em>! Many people have
-seen an original concept develop far beyond what they might have
-originally envisioned simply due to the flood of feedback and ideas
-generated by the many thousands of users of FreeBSD. Contributions
-are also what FreeBSD lives and grows from, so your contributions are
-very important to the continued survival of this communal effort of
-ours---we're very glad to see you reading this document!
-
-Submissions to FreeBSD can generally be classified into four categories:
+<p>So you want to contribute something to FreeBSD? That's great!
+We can always use the help, and FreeBSD is one of those systems
+that <em>relies</em> on the contributions of its user base in order
+to survive. Your contributions are not only appreciated, they're
+vital to FreeBSD's continued growth!
+
+<p>Contrary to what some people might also have you believe, you don't
+need to be a hot-shot programmer or a close personal friend of the
+FreeBSD core team in order to have your contributions accepted. The
+FreeBSD Project's development is done by a large and growing number of
+international contributors who's ages and areas of technical expertise
+vary greatly, and there is always more work to be done than there are
+people available to do it.
+
+<p>Since the FreeBSD project is responsible for an entire operating
+system environment (and its installation) rather than just a kernel or
+a few scattered utilities, our "TODO" list also spans a very wide
+range of tasks, from documentation, beta testing and presentation to
+highly specialized types of kernel development. No matter what your
+skill level, there's almost certainly something you can do to help the
+project!
+
+<p>Commmercial entities engaged in FreeBSD-related enterprises are
+also encouraged to contact us. Need a special extention to make your
+product work? You'll find us receptive to your requests, given that
+they aren't too outlandish. Working on a value-added product? Please
+let us know! We may be able to work cooperatively on some aspect of
+it. The free software world is challenging a lot of existing
+assumptions about how software is developed, sold, and maintained
+throughout its life cycle, and we urge you to at least give it a
+second look.
+
+<sect><heading>What's needed</heading>
+
+<p>The following list of tasks and sub-projects represents something
+of an amalgam of the various core team TODO lists and user requests
+we've collected over the last couple of months. Where possible, tasks
+have been ranked by degree of urgency. If you're interested in
+working on one of the tasks you see here, send mail to the coordinator
+listed by clicking on their names. If no coordinator has been
+appointed, maybe you'd like to volunteer?
+
+<sect1><heading>Urgently needed</heading>
+<p>The following tasks are considered to be urgent, usually because
+they represent something that is badly broken:
+<enum>
+<item>Fix the DOS file system. Coordinator: <tt><htmlurl
+url="mailto:hackers@freebsd.org" name="Hackers (no coordinator)"></tt>.
+<item>Fix the union file system. Coordinator: <tt><htmlurl
+url="mailto:dyson@freebsd.org" name="John Dyson"></tt>
+</enum>
+
+<sect1><heading>Not urgently needed</heading>
+<p>The following tasks need to be done, but not with any particular
+urgency:
<enum>
-<item>Ideas, general suggestions, bug reports.
-<item>Changes to existing sources.
-<item>Significant contribution of a large body of independent work.
-<item>Porting of freely available software.
+<item>Put something here.
</enum>
-A submission in <em>any</em> of these categories is highly welcomed as they
-are each, in their own way, quite significant to the project.
+<sect1><heading>Would be nice to have</heading>
+<p>The following tasks are purely cosmetic or represent such an
+investment or work that it's not likely that anyone will get them done
+anytime soon:
-<sect><heading>Ideas and suggestions</heading>
+<enum>
+<item>Put something here too.
+</enum>
+
+<sect><heading>How to contribute</heading>
+
+<p>Contributions to the system generally fall into one or more of
+the following 5 categories:
+
+<sect1><heading>Bug reports and general commentary</heading>
+<p>If you have a bug to report or a suggestion to make:
-<p>An idea, suggestion or fix can be communicated in one of the following ways:
<itemize>
<item>An idea or suggestion of general technical interest should be
- mailed to <tt>&lt;hackers@freebsd.org&gt;</tt>.
+ mailed to <tt><htmlurl url="mailto:hackers@freebsd.org"
+ name="&lt;hackers@freebsd.org&gt;"></tt>.
Likewise, people with an interest
in such things (and a tolerance for a <em>high</em>
volume of mail!) may
subscribe to the hackers mailing list by sending mail to
- <tt>&lt;majordomo@freebsd.org&gt;</tt>.
+ <tt><htmlurl url="mailto:majordomo@freebsd.org"
+ name="&lt;majordomo@freebsd.org&gt;"></tt>.
See <ref id="eresources:mail" name="mailing lists">
for more information about this and other mailing lists.
@@ -56,10 +106,19 @@ are each, in their own way, quite significant to the project.
a week, depending on your email connection) or are, for some
reason, unable to use the <tt>send-pr(1)</tt> command,
then you may also file a bug report by sending mail to
- <tt>&lt;bugs@freebsd.org&gt;</tt>.
+ <tt><htmlurl url="mailto:bugs@freebsd.org"
+ name="&lt;bugs@freebsd.org&gt;"></tt>.
</itemize>
-<sect><heading>Changes to the existing code</heading>
+<sect1><heading>Changes to the documentation</heading>
+
+<p>Changes to the documentation are overseen by the FreeBSD Documentation
+Project, which can be reached at <tt><htmlurl url="mailto:doc@freebsd.org"
+name="&lt;doc@freebsd.org&gt;"></tt>. This does not generally include
+changes to manual pages, which should be considered under the category
+of "changes to existing source code."
+
+<sect1><heading>Changes to existing source code</heading>
<p>An addition or change to the existing source code is a somewhat trickier
affair and depends a lot on how far out of date you are with the current
@@ -96,7 +155,8 @@ diff -c -r olddir newdir
<tt>patch(1)</tt> command), you should bundle them up in an
email message and send it, along with a brief description of
what the diffs are for, to
- <tt>&lt;hackers@freebsd.org&gt;</tt>. Someone will very
+ <tt><htmlurl url="mailto:hackers@freebsd.org"
+ name="&lt;hackers@freebsd.org&gt;"></tt>. Someone will very
likely get back in touch with you in 24 hours or less,
assuming of course that your diffs are interesting! :-)
@@ -105,22 +165,23 @@ diff -c -r olddir newdir
then you may be better off bundling any new files, diffs and
instructions for deleting/renaming others into a <tt>tar</tt>
file and running the <tt>uuencode(1)</tt> program on it before
- sending the output of that to <tt>&lt;hackers@freebsd.org&gt;</tt>.
+ sending the output of that to <tt><htmlurl url="mailto:hackers@freebsd.org"
+ name="&lt;hackers@freebsd.org&gt;"></tt>.
See the man pages on <tt>tar(1)</tt> and <tt>uuencode(1)</tt> for more
information on bundling files this way.
If your change is of a potentially sensitive nature, e.g.
you're unsure of copyright issues governing its further distribution
or you're simply not ready to release it without a tighter review first,
- then you should send it to <tt>&lt;core@freebsd.org&gt;</tt> rather than
+ then you should send it to <tt><htmlurl url="mailto:core@freebsd.org"
+ name="&lt;core@freebsd.org&gt;"></tt> rather than
<tt>&lt;hackers@freebsd.org&gt;</tt>. The core mailing list
reaches a much smaller group of people who do much of the
day-to-day work on FreeBSD. Note that this group is also
<em>very busy</em> and so you should only send mail to them
in cases where mailing to hackers is truly impractical.
-
-<sect><heading>Contributions of new code</heading>
+<sect1><heading>Contributions of new code</heading>
<p>In the case of a significant contribution of a large body
work, or the addition of an important new feature to FreeBSD,
@@ -193,30 +254,9 @@ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- $Id: submitters.sgml,v 1.7 1995/09/27 00:46:29 jmz Exp $
+ $Id: submitters.sgml,v 1.8 1995/10/07 04:32:03 jfieber Exp $
</verb></tscreen>
For your convenience, a copy of this text can be found in
<tt>/usr/share/examples/etc/bsd-style-copyright</tt>.
-
-<sect><heading>Porting of software</heading>
-
-<p>The porting of freely available software, while perhaps not as
-gratifying as developing your own from scratch, is still a vital part
-of FreeBSD's growth and of great usefulness to those who wouldn't
-otherwise know where to turn for it. All ported software is organized
-into a carefully organized hierarchy know as ``the ports collection''.
-The collection enables a new user to get a quick and complete overview
-of what's available for FreeBSD in an easy-to-compile form. It also
-saves considerable space by not actually containing the the majority
-of the sources being ported, but merely those differences required for
-running under FreeBSD. See <ref id="ports" name="The ports
-collection"> for more information on using the ports collection and
-<ref id="porting" name="Porting applications"> for guidelines on
-creating new ports. You may also send mail to
-<tt>&lt;ports@freebsd.org&gt;</tt>.
-
-Whichever way you decide to contribute, we hope you'll find it an
-enjoyable and rewarding process. Such contributions are also very
-valuable to FreeBSD's continued progress, and as a free software
-effort, the more we all put in the more we all get back out of it!
+ &porting;
OpenPOWER on IntegriCloud