1996-01-03 02:22:03 +00:00
|
|
|
<!-- $Id: submitters.sgml,v 1.10 1995/12/10 09:09:49 jkh Exp $ -->
|
1995-04-28 16:19:59 +00:00
|
|
|
<!-- The FreeBSD Documentation Project -->
|
|
|
|
|
1995-06-30 17:37:53 +00:00
|
|
|
<chapt><heading>Contributing to FreeBSD<label id="submitters"></heading>
|
1995-04-28 16:19:59 +00:00
|
|
|
|
|
|
|
<p><em>Contributed by &a.jkh;.</em>
|
|
|
|
|
1995-12-07 13:22:18 +00:00
|
|
|
<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:
|
1995-04-28 16:19:59 +00:00
|
|
|
<enum>
|
1995-12-07 13:22:18 +00:00
|
|
|
<item>Put something here.
|
1995-04-28 16:19:59 +00:00
|
|
|
</enum>
|
|
|
|
|
1995-12-07 13:22:18 +00:00
|
|
|
<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:
|
1995-04-28 16:19:59 +00:00
|
|
|
|
1995-12-07 13:22:18 +00:00
|
|
|
<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
|
1996-01-03 02:22:03 +00:00
|
|
|
the following 6 categories:
|
1995-12-07 13:22:18 +00:00
|
|
|
|
|
|
|
<sect1><heading>Bug reports and general commentary</heading>
|
|
|
|
<p>If you have a bug to report or a suggestion to make:
|
1995-04-28 16:19:59 +00:00
|
|
|
|
|
|
|
<itemize>
|
1995-05-18 03:05:22 +00:00
|
|
|
<item>An idea or suggestion of general technical interest should be
|
1995-12-07 13:22:18 +00:00
|
|
|
mailed to <tt><htmlurl url="mailto:hackers@freebsd.org"
|
|
|
|
name="<hackers@freebsd.org>"></tt>.
|
1995-05-18 03:05:22 +00:00
|
|
|
Likewise, people with an interest
|
|
|
|
in such things (and a tolerance for a <em>high</em>
|
|
|
|
volume of mail!) may
|
1995-09-27 00:46:30 +00:00
|
|
|
subscribe to the hackers mailing list by sending mail to
|
1995-12-07 13:22:18 +00:00
|
|
|
<tt><htmlurl url="mailto:majordomo@freebsd.org"
|
|
|
|
name="<majordomo@freebsd.org>"></tt>.
|
1995-06-20 16:29:55 +00:00
|
|
|
See <ref id="eresources:mail" name="mailing lists">
|
1995-05-18 03:05:22 +00:00
|
|
|
for more information about this and other mailing lists.
|
|
|
|
|
|
|
|
<item>An actual bug report should be filed by using the
|
|
|
|
<tt>send-pr(1)</tt> program. This will prompt
|
1995-04-28 16:19:59 +00:00
|
|
|
you for various fields to fill in. Simply go to the fields
|
1995-05-18 03:05:22 +00:00
|
|
|
surrounded by <tt><></tt>'s and fill in your own
|
|
|
|
information in place of
|
1995-04-28 16:19:59 +00:00
|
|
|
what's suggested there. You should receive confirmation of your
|
1995-05-18 03:05:22 +00:00
|
|
|
bug report and a tracking number. Keep this tracking number and use
|
|
|
|
it in any subsequent correspondence.
|
1995-04-28 16:19:59 +00:00
|
|
|
If you do not receive confirmation in a timely fashion (3 days to
|
|
|
|
a week, depending on your email connection) or are, for some
|
1995-05-18 03:05:22 +00:00
|
|
|
reason, unable to use the <tt>send-pr(1)</tt> command,
|
|
|
|
then you may also file a bug report by sending mail to
|
1995-12-07 13:22:18 +00:00
|
|
|
<tt><htmlurl url="mailto:bugs@freebsd.org"
|
|
|
|
name="<bugs@freebsd.org>"></tt>.
|
1995-04-28 16:19:59 +00:00
|
|
|
</itemize>
|
|
|
|
|
1995-12-07 13:22:18 +00:00
|
|
|
<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="<doc@freebsd.org>"></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>
|
1995-04-28 16:19:59 +00:00
|
|
|
|
|
|
|
<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
|
|
|
|
state of the core FreeBSD development. There is a special on-going release
|
1995-08-12 21:33:24 +00:00
|
|
|
of FreeBSD known as ``FreeBSD-current'' which is made available in
|
|
|
|
a variety of ways for the convenience of developers working
|
|
|
|
actively on the system. See <ref id="current" name="Staying
|
|
|
|
current with FreeBSD"> for more information about getting and using
|
|
|
|
FreeBSD-current.
|
1995-04-28 16:19:59 +00:00
|
|
|
|
|
|
|
Working from older sources unfortunately means that your changes may
|
1995-08-12 21:33:24 +00:00
|
|
|
sometimes be too obsolete or too divergent for easy re-integration into
|
|
|
|
FreeBSD. Chances of this can be minimized somewhat by subscribing to the
|
|
|
|
<tt><announce@freebsd.org></tt> and
|
|
|
|
<tt><current@freebsd.org></tt> mailing lists, where discussions
|
|
|
|
on the current state of the system take place.
|
1995-04-28 16:19:59 +00:00
|
|
|
|
|
|
|
Assuming that you can manage to secure fairly up-to-date sources to base
|
|
|
|
your changes on, the next step is to produce a set of diffs to send to the
|
1995-08-12 21:33:24 +00:00
|
|
|
FreeBSD maintainers. This is done with the <tt>diff(1)</tt> command,
|
|
|
|
with the `context diff' form being preferred. For example:
|
1995-05-18 03:05:22 +00:00
|
|
|
<tscreen><verb>
|
1995-10-07 04:32:03 +00:00
|
|
|
diff -c oldfile newfile
|
1995-05-18 03:05:22 +00:00
|
|
|
</verb></tscreen>
|
|
|
|
or
|
|
|
|
<tscreen><verb>
|
1995-10-07 04:32:03 +00:00
|
|
|
diff -c -r olddir newdir
|
1995-05-18 03:05:22 +00:00
|
|
|
</verb></tscreen>
|
1995-08-12 21:33:24 +00:00
|
|
|
would generate such a set of context diffs for the given source file
|
|
|
|
or directory hierarchy. See the man page for <tt>diff(1)</tt> for more
|
|
|
|
details.
|
1995-05-18 03:05:22 +00:00
|
|
|
|
1995-08-12 21:33:24 +00:00
|
|
|
Once you have a set of diffs (which you may test with the
|
1995-05-18 03:05:22 +00:00
|
|
|
<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
|
1995-12-07 13:22:18 +00:00
|
|
|
<tt><htmlurl url="mailto:hackers@freebsd.org"
|
|
|
|
name="<hackers@freebsd.org>"></tt>. Someone will very
|
1995-05-18 03:05:22 +00:00
|
|
|
likely get back in touch with you in 24 hours or less,
|
1995-08-12 21:33:24 +00:00
|
|
|
assuming of course that your diffs are interesting! :-)
|
1995-05-18 03:05:22 +00:00
|
|
|
|
|
|
|
If your changes don't express themselves well as diffs alone
|
|
|
|
(e.g. you've perhaps added, deleted or renamed files as well)
|
|
|
|
then you may be better off bundling any new files, diffs and
|
1995-08-12 21:33:24 +00:00
|
|
|
instructions for deleting/renaming others into a <tt>tar</tt>
|
|
|
|
file and running the <tt>uuencode(1)</tt> program on it before
|
1995-12-07 13:22:18 +00:00
|
|
|
sending the output of that to <tt><htmlurl url="mailto:hackers@freebsd.org"
|
|
|
|
name="<hackers@freebsd.org>"></tt>.
|
1995-08-12 21:33:24 +00:00
|
|
|
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,
|
1995-12-07 13:22:18 +00:00
|
|
|
then you should send it to <tt><htmlurl url="mailto:core@freebsd.org"
|
|
|
|
name="<core@freebsd.org>"></tt> rather than
|
1995-05-18 03:05:22 +00:00
|
|
|
<tt><hackers@freebsd.org></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
|
1995-08-12 21:33:24 +00:00
|
|
|
<em>very busy</em> and so you should only send mail to them
|
|
|
|
in cases where mailing to hackers is truly impractical.
|
1995-04-28 16:19:59 +00:00
|
|
|
|
1995-12-07 13:22:18 +00:00
|
|
|
<sect1><heading>Contributions of new code</heading>
|
1995-04-28 16:19:59 +00:00
|
|
|
|
1995-05-18 03:05:22 +00:00
|
|
|
<p>In the case of a significant contribution of a large body
|
|
|
|
work, or the addition of an important new feature to FreeBSD,
|
|
|
|
it becomes almost always necessary to either send changes as
|
|
|
|
uuencoded tar files or upload them to our ftp site <url
|
1995-08-12 21:33:24 +00:00
|
|
|
url="ftp://ftp.freebsd.org/pub/FreeBSD/incoming">.
|
1995-04-28 16:19:59 +00:00
|
|
|
|
1995-05-18 03:05:22 +00:00
|
|
|
When working with large amounts of code, the touchy subject of
|
|
|
|
copyrights also invariably comes up. Acceptable copyrights
|
|
|
|
for code included in FreeBSD are:
|
1995-04-28 16:19:59 +00:00
|
|
|
|
|
|
|
<enum>
|
1995-08-12 21:33:24 +00:00
|
|
|
<item>The BSD copyright. This copyright is most preferred
|
|
|
|
due to its ``no strings attached'' nature and general
|
|
|
|
attractiveness to commercial enterprises. Far from
|
|
|
|
discouraging such commercial use, the FreeBSD Project
|
|
|
|
actively encourages such participation by commercial interests
|
|
|
|
who might eventually be inclined to invest something of their own
|
1995-04-28 16:19:59 +00:00
|
|
|
into FreeBSD.
|
|
|
|
|
1995-08-12 21:33:24 +00:00
|
|
|
<item>The GNU Public License, or ``GPL''. This license isn't quite
|
|
|
|
as popular with us due to the amount of extra effort demanded
|
|
|
|
of anyone using the code for commercial purposes, but given
|
|
|
|
the sheer quantity of GPL'd code we currently require (compiler,
|
|
|
|
assembler, text formatter, etc) it would be silly to refuse
|
|
|
|
additional contributions under this license. Code under the GPL
|
|
|
|
also goes into a different part of the tree, that being
|
|
|
|
<tt>/sys/gnu</tt> or <tt>/usr/src/gnu</tt>, and is therefore
|
1995-09-27 00:46:30 +00:00
|
|
|
easily identifiable to anyone for whom the GPL presents a problem.
|
1995-04-28 16:19:59 +00:00
|
|
|
</enum>
|
|
|
|
|
1995-08-12 21:33:24 +00:00
|
|
|
<p>Contributions coming under any other type of copyright must be
|
|
|
|
carefully reviewed before their inclusion into FreeBSD will
|
|
|
|
be considered. Contributions for which particularly restrictive
|
|
|
|
commercial copyrights apply are generally rejected, though the
|
|
|
|
authors are always encouraged to make such changes available
|
|
|
|
through their own channels.
|
|
|
|
|
|
|
|
To place a ``BSD-style'' copyright on your work, include the following
|
1995-05-18 03:05:22 +00:00
|
|
|
text at the very beginning of every source code file you wish
|
|
|
|
to protect, replacing the text between the `<tt>%%</tt>' with
|
|
|
|
the appropriate information.
|
|
|
|
<tscreen><verb>
|
|
|
|
Copyright (c) %%proper_years_here%%
|
|
|
|
%%your_name_here%%, %%your_state%% %%your_zip%%. All rights reserved.
|
|
|
|
|
|
|
|
Redistribution and use in source and binary forms, with or without
|
|
|
|
modification, are permitted provided that the following conditions
|
|
|
|
are met:
|
|
|
|
1. Redistributions of source code must retain the above copyright
|
|
|
|
notice, this list of conditions and the following disclaimer as
|
|
|
|
the first lines of this file unmodified.
|
|
|
|
2. Redistributions in binary form must reproduce the above copyright
|
|
|
|
notice, this list of conditions and the following disclaimer in the
|
|
|
|
documentation and/or other materials provided with the distribution.
|
|
|
|
3. All advertising materials mentioning features or use of this software
|
|
|
|
must display the following acknowledgment:
|
|
|
|
This product includes software developed by %%your_name_here%%.
|
|
|
|
4. The name of the author may not be used to endorse or promote products
|
|
|
|
derived from this software without specific prior written permission.
|
|
|
|
|
|
|
|
THIS SOFTWARE IS PROVIDED BY %%your_name_here%% ``AS IS'' AND ANY EXPRESS OR
|
|
|
|
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
|
|
|
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
|
|
|
IN NO EVENT SHALL %%your_name_here%% BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
|
|
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
|
|
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
|
|
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
|
|
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.
|
|
|
|
|
1996-01-03 02:22:03 +00:00
|
|
|
$Id: submitters.sgml,v 1.10 1995/12/10 09:09:49 jkh Exp $
|
1995-05-18 03:05:22 +00:00
|
|
|
</verb></tscreen>
|
|
|
|
For your convenience, a copy of this text can be found in
|
|
|
|
<tt>/usr/share/examples/etc/bsd-style-copyright</tt>.
|
|
|
|
|
1995-12-07 13:22:18 +00:00
|
|
|
&porting;
|
1995-12-10 09:09:49 +00:00
|
|
|
|
|
|
|
<sect1><heading>Contributions of money, hardware or Internet access</heading>
|
|
|
|
<p>We're always very happy to accept donations to further the cause of
|
|
|
|
the FreeBSD Project and, in a volunteer effort like ours, a little can go
|
|
|
|
a long way! Donations of hardware are also very important to expanding
|
|
|
|
our list of supported peripherals since we generally lack the funds to
|
|
|
|
buy such items ourselves.
|
|
|
|
|
|
|
|
<sect2><heading>Donating funds</heading>
|
|
|
|
<p>While the FreeBSD Project is not a 501(C3) (non-profit) corporation and
|
|
|
|
hence cannot offer special tax incentives for any donations made, any such
|
|
|
|
donations will be gratefully accepted on behalf of the project by
|
|
|
|
FreeBSD, Inc.
|
|
|
|
|
|
|
|
<p>FreeBSD, Inc. was founded in early 1995 by &a.jkh and &a.davidg with the
|
|
|
|
goal of furthering the aims of the FreeBSD Project and giving it a minimal
|
|
|
|
corporate presence. Any and all funds donated (as well as any profits
|
|
|
|
that may eventually be realized by FreeBSD, Inc.) will be used exclusively
|
|
|
|
to further the project's goals.
|
|
|
|
|
|
|
|
Please make any checks payable to FreeBSD, Inc., sent in care of the
|
|
|
|
following address:
|
|
|
|
|
|
|
|
<tscreen><verb>
|
|
|
|
FreeBSD, Inc.
|
|
|
|
246 Park St.
|
|
|
|
Clyde CA, 94520
|
|
|
|
</verb></tscreen>
|
|
|
|
|
|
|
|
Wire transfers may also be sent directly to:
|
|
|
|
|
|
|
|
<tscreen><verb>
|
|
|
|
Bank Of America
|
|
|
|
Concord Main Office
|
|
|
|
P.O. Box 37176
|
|
|
|
San Francisco CA, 94137-5176
|
|
|
|
|
|
|
|
Routing #: 121-000-358
|
|
|
|
Account #: 01411-07441 (FreeBSD, Inc.)
|
|
|
|
</verb></tscreen>
|
|
|
|
|
|
|
|
If you do not wish to be listed in our `donors' section, please specify
|
|
|
|
this in a note accompanying your donation. Thanks!
|
|
|
|
|
|
|
|
<sect2><heading>Donating hardware</heading>
|
|
|
|
|
|
|
|
<p>Donations of hardware in any of the 3 following catagories are also gladly
|
|
|
|
accepted by the FreeBSD Project:
|
|
|
|
|
|
|
|
<itemize>
|
|
|
|
<item>General purpose hardware such as disk drives, memory or complete
|
|
|
|
systems should be sent to the FreeBSD, Inc. address listed in the
|
|
|
|
<em>donating funds</em> section.
|
|
|
|
|
|
|
|
<item>Hardware for which ongoing compliance testing is desired.
|
|
|
|
We are currently trying to put together a testing lab of all components
|
|
|
|
that FreeBSD supports so that proper regression testing can be done with
|
|
|
|
each new release. We are still lacking many important pieces (network cards,
|
|
|
|
motherboards, etc) and if you'd like to make such a donation, please contact
|
|
|
|
&a.davidg for information on which items are still required.
|
|
|
|
|
|
|
|
<item>Hardware currently unsupported by FreeBSD for which you'd like to
|
|
|
|
see such support added. Please contact the <htmlurl
|
|
|
|
url="mailto:core@freebsd.org" name="FreeBSD Core Team"> before sending
|
|
|
|
such items as we'll need to find a developer willing to take on the task
|
|
|
|
before we can accept delivery of them.
|
|
|
|
</itemize>
|
|
|
|
|
|
|
|
<sect2><heading>Donating internet access</heading>
|
|
|
|
|
|
|
|
<p>We can always use new mirror sites for FTP, WWW or sup.
|
|
|
|
If you'd like to be such a mirror, please contact
|
|
|
|
<htmlurl url="mailto:admin@freebsd.org" name="the FreeBSD project
|
|
|
|
administrators"> for more information.
|