1997-01-14 07:20:47 +00:00
|
|
|
<!-- $FreeBSD$ -->
|
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>
|
|
|
|
|
1996-05-16 23:18:28 +00:00
|
|
|
<p>So you want to contribute something to FreeBSD? That is great!
|
1995-12-07 13:22:18 +00:00
|
|
|
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
|
1996-05-16 23:18:28 +00:00
|
|
|
to survive. Your contributions are not only appreciated, they are
|
1995-12-07 13:22:18 +00:00
|
|
|
vital to FreeBSD's continued growth!
|
|
|
|
|
1996-05-16 23:18:28 +00:00
|
|
|
<p>Contrary to what some people might also have you believe, you do not
|
1995-12-07 13:22:18 +00:00
|
|
|
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
|
1996-05-16 23:18:28 +00:00
|
|
|
skill level, there is almost certainly something you can do to help the
|
1995-12-07 13:22:18 +00:00
|
|
|
project!
|
|
|
|
|
1996-01-31 14:26:20 +00:00
|
|
|
<p>Commercial entities engaged in FreeBSD-related enterprises are
|
|
|
|
also encouraged to contact us. Need a special extension to make your
|
1996-05-16 23:18:28 +00:00
|
|
|
product work? You will find us receptive to your requests, given that
|
|
|
|
they are not too outlandish. Working on a value-added product? Please
|
1995-12-07 13:22:18 +00:00
|
|
|
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.
|
|
|
|
|
1996-05-16 23:18:28 +00:00
|
|
|
<sect><heading>What is needed</heading>
|
1995-12-07 13:22:18 +00:00
|
|
|
|
|
|
|
<p>The following list of tasks and sub-projects represents something
|
|
|
|
of an amalgam of the various core team TODO lists and user requests
|
1996-05-16 23:18:28 +00:00
|
|
|
we have collected over the last couple of months. Where possible, tasks
|
|
|
|
have been ranked by degree of urgency. If you are interested in
|
1995-12-07 13:22:18 +00:00
|
|
|
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
|
1996-05-16 23:18:28 +00:00
|
|
|
appointed, maybe you would like to volunteer?
|
1995-12-07 13:22:18 +00:00
|
|
|
|
1996-02-01 21:00:38 +00:00
|
|
|
<sect1><heading>High priority tasks</heading>
|
1995-12-07 13:22:18 +00:00
|
|
|
<p>The following tasks are considered to be urgent, usually because
|
1996-02-01 21:00:38 +00:00
|
|
|
they represent something that is badly broken or sorely needed:
|
1995-12-07 13:22:18 +00:00
|
|
|
<enum>
|
1996-02-04 08:49:17 +00:00
|
|
|
<item>3-stage boot issues. Overall coordination:
|
1996-05-09 23:04:53 +00:00
|
|
|
&a.hackers
|
1996-02-04 08:49:17 +00:00
|
|
|
<p><itemize>
|
|
|
|
<item>Autodetect memory over 64MB properly.
|
|
|
|
<item>Move userconfig (-c) into 3rd stage boot.
|
|
|
|
<item>Do WinNT compatible drive tagging so that the 3rd stage can
|
|
|
|
provide an accurate mapping of BIOS geometries for disks.
|
|
|
|
</itemize>
|
|
|
|
<item>Filesystem problems. Overall coordination:
|
1996-05-09 23:04:53 +00:00
|
|
|
&a.fs
|
1996-02-04 08:49:17 +00:00
|
|
|
<itemize>
|
|
|
|
<item>Fix the MSDOS file system.
|
1996-05-09 23:04:53 +00:00
|
|
|
<item>Clean up and document the nullfs filesystem code. Coordinator: &a.gibbs
|
|
|
|
<item>Fix the union file system. Coordinator: &a.dyson
|
|
|
|
<item>Fix the LFS file system. Coordinator: &a.dyson
|
1996-02-04 08:49:17 +00:00
|
|
|
</itemize>
|
1996-05-09 23:04:53 +00:00
|
|
|
<item>Implement kernel and user vm86 support. Coordinator: &a.hackers
|
|
|
|
<item>Implement Int13 vm86 disk driver. Coordinator: &a.hackers
|
|
|
|
<item>SCSI driver issues. Overall coordination: &a.hackers
|
1996-02-04 08:49:17 +00:00
|
|
|
<p><itemize>
|
|
|
|
<item>Support tagged queuing generically. Requires a rewrite of how we do
|
1997-01-02 18:10:40 +00:00
|
|
|
our command queuing, but we need this anyway to for prioritized I/O
|
1996-02-04 08:49:17 +00:00
|
|
|
(CD-R writers/scanners).
|
|
|
|
<item>Better error handling (Busy status and retries).
|
|
|
|
<item>Merged Scatter-Gather list creation code.
|
|
|
|
</itemize>
|
|
|
|
<item>Kernel issues. Overall coordination:
|
1996-05-09 23:04:53 +00:00
|
|
|
&a.hackers
|
1996-02-04 08:49:17 +00:00
|
|
|
<p><itemize>
|
|
|
|
<item>Complete the eisaconf conversion of all existing drivers.
|
|
|
|
<item>Change all interrupt routines to take a (void *) instead of
|
|
|
|
using unit numbers.
|
|
|
|
<item>Merge EISA/PCI/ISA interrupt registration code.
|
|
|
|
<item>Split PCI/EISA/ISA probes out from drivers like bt742a.c (WIP)
|
1996-05-09 23:04:53 +00:00
|
|
|
<item>Fix the syscons ALT-TAB/vt switching hangs. Coordinator: &a.sos
|
1996-02-04 08:49:17 +00:00
|
|
|
<item>Mouse support for syscons.
|
|
|
|
<item>Merged keyboard code for all console drivers.
|
|
|
|
<item>Rewrite the Intel Etherexpress 16 driver.
|
|
|
|
<item>Merge the 3c509 and 3c590 drivers (essentially provide a PCI probe for
|
|
|
|
ep.c).
|
|
|
|
<item>Support Adaptec 3985 (first as a simple 3 channel SCSI card)
|
1996-05-09 23:04:53 +00:00
|
|
|
Coordinator: &a.gibbs
|
|
|
|
<item>Support Advansys SCSI controller products. Coordinator: &a.gibbs
|
1996-02-04 08:49:17 +00:00
|
|
|
</itemize>
|
1995-12-07 13:22:18 +00:00
|
|
|
</enum>
|
|
|
|
|
1996-02-01 21:00:38 +00:00
|
|
|
<sect1><heading>Medium priority tasks</heading>
|
1995-12-07 13:22:18 +00:00
|
|
|
<p>The following tasks need to be done, but not with any particular
|
|
|
|
urgency:
|
1995-04-28 16:19:59 +00:00
|
|
|
<enum>
|
1996-02-06 03:35:16 +00:00
|
|
|
<item>DOS emulator (for DOS executables) Coordinator: <tt><htmlurl
|
|
|
|
url="mailto:jr@jrw.org" name="J.R. Westmoreland"></tt>
|
1996-02-01 21:00:38 +00:00
|
|
|
<item>Port AFS (Andrew File System) to FreeBSD Coordinator: <tt><htmlurl
|
1996-02-03 17:17:56 +00:00
|
|
|
url="mailto:ajones@ctron.com" name="Alexander Seth Jones"></tt>
|
1996-02-04 08:49:17 +00:00
|
|
|
|
|
|
|
<item>MCA support? This should be finalized one way or the other.
|
|
|
|
<item>Full LKM based driver support/Configuration Manager.
|
|
|
|
<p><itemize>
|
|
|
|
<item>Devise a way to do all LKM registration without ld. This means
|
|
|
|
some kind of symbol table in the kernel.
|
|
|
|
<item>Write a configuration manager (in the 3rd stage boot?) that probes
|
|
|
|
your hardware in a sane manner, keeps only the LKMs required for
|
|
|
|
your hardware, etc.
|
|
|
|
</itemize>
|
1996-07-11 06:08:52 +00:00
|
|
|
<item>PCMCIA/PCCARD. Coordinators: &a.nate and &a.phk
|
1996-02-04 08:58:21 +00:00
|
|
|
<itemize>
|
1996-07-11 06:08:52 +00:00
|
|
|
<item>Documentation!
|
|
|
|
<item>Reliable operation of the pcic driver (needs testing).
|
|
|
|
<item>Recognizer and handler for sio.c (mostly done).
|
|
|
|
<item>Recognizer and handler for ed.c (mostly done).
|
|
|
|
<item>Recognizer and handler for ep.c (mostly done).
|
|
|
|
<item>User-mode recognizer and handler (partially done).
|
1996-02-04 08:58:21 +00:00
|
|
|
</itemize>
|
1996-07-11 06:08:52 +00:00
|
|
|
<item>Advanced Power Management. Coordinators: &a.nate and &a.phk
|
1996-02-04 08:58:21 +00:00
|
|
|
<itemize>
|
1996-07-11 06:08:52 +00:00
|
|
|
<item>APM sub-driver (mostly done).
|
|
|
|
<item>IDE/ATA disk sub-driver (partially done).
|
1996-02-04 08:58:21 +00:00
|
|
|
<item>syscons/pcvt sub-driver.
|
1996-07-11 06:08:52 +00:00
|
|
|
<item>Integration with the PCMCIA/PCCARD drivers (suspend/resume).
|
1996-02-04 08:58:21 +00:00
|
|
|
</itemize>
|
1995-04-28 16:19:59 +00:00
|
|
|
</enum>
|
|
|
|
|
1996-02-01 21:00:38 +00:00
|
|
|
<sect1><heading>Low priority tasks</heading>
|
1995-12-07 13:22:18 +00:00
|
|
|
<p>The following tasks are purely cosmetic or represent such an
|
1996-05-16 23:18:28 +00:00
|
|
|
investment of work that it is not likely that anyone will get them done
|
1995-12-07 13:22:18 +00:00
|
|
|
anytime soon:
|
1995-04-28 16:19:59 +00:00
|
|
|
|
1996-01-05 08:47:37 +00:00
|
|
|
<p>The first 20 items are from Terry Lambert <terry@lambert.org>
|
1995-12-07 13:22:18 +00:00
|
|
|
<enum>
|
1996-01-04 18:51:51 +00:00
|
|
|
<item>Ability to make BIOS calls from protected mode using V86 mode
|
|
|
|
on the processor and return the results via a mapped interrupt
|
|
|
|
IPC mechanism to the protected mode caller.
|
|
|
|
|
|
|
|
<item>Drivers built into the kernel that use the BIOS call mechanism
|
|
|
|
to allow them to be independent of the actual underlying hardware
|
|
|
|
the same way that DOS is independent of the underlying hardware.
|
|
|
|
This includes NetWork and ASPI drivers loaded in DOS prior to
|
|
|
|
BSD being loaded by a DOS-based loader program, which means
|
|
|
|
potential polling, which means DOS-not-busy interrupt generation
|
|
|
|
for V86 machines by the protected mode kernel.
|
|
|
|
|
|
|
|
<item>An image format that allows tagging of such drivers data and
|
|
|
|
text areas in the default kernel executable so that that portion
|
|
|
|
of the kernel address space may be recovered at a later time,
|
|
|
|
after hardware specific protected mode drivers have been loaded
|
1996-01-31 14:26:20 +00:00
|
|
|
and activated. This includes separation of BIOS based drivers
|
1996-01-04 18:51:51 +00:00
|
|
|
from each other, since it is better to run with a BIOS based
|
|
|
|
driver in all cases than to not run at all.
|
|
|
|
|
|
|
|
<item>Abstraction of the bus interface mechanism. Currently, PCMCIA,
|
|
|
|
EISA, and PCI busses are assumed to be bridged from ISA. This
|
|
|
|
is not something which should be assumed.
|
|
|
|
|
|
|
|
<item>A configuration manager that knows about PNP events, including
|
|
|
|
power management events, insertion, extraction, and bus (PNP ISA
|
|
|
|
and PCMCIA bridging chips) vs. card level event management.
|
|
|
|
|
|
|
|
<item>A topological sort mechanism for assigning reassignable addresses
|
|
|
|
that do not collide with other reassignable and non-reassignable
|
|
|
|
device space resource usage by fixed devices.
|
|
|
|
|
|
|
|
<item>A registration based mechanism for hardware services registration.
|
|
|
|
Specifically, a device centric registration mechanism for timer
|
|
|
|
and sound and other system critical service providers. Consider
|
|
|
|
Timer2 and Timer0 and speaker services as one example of a single
|
1996-01-31 14:26:20 +00:00
|
|
|
monolithic service provider.
|
1996-01-04 18:51:51 +00:00
|
|
|
|
1996-01-31 14:26:20 +00:00
|
|
|
<item>A kernel exported symbol space in the kernel data space accessible
|
1996-01-04 18:51:51 +00:00
|
|
|
by an LKM loader mechanism that does relocation and symbol space
|
|
|
|
manipulation. The intent of this interface is to support the
|
|
|
|
ability to demand load and unload kernel modules.
|
|
|
|
|
|
|
|
<item>NetWare Server (protected mode ODI driver) loader and subservices
|
|
|
|
to allow the use of ODI card drivers supplied with network cards.
|
|
|
|
The same thing for NDIS drivers and NetWare SCSI drivers.
|
|
|
|
|
|
|
|
<item>An "upgrade system" option that works on Linux boxes instead
|
|
|
|
of just previous rev FreeBSD boxes.
|
|
|
|
|
|
|
|
<item>Splitting of the console driver into abstraction layers, both to
|
|
|
|
make it easier to port and to kill the X and ThinkPad and PS/2
|
|
|
|
mouse and LED and console switching and bouncing NumLock problems
|
|
|
|
once and for all.
|
|
|
|
|
|
|
|
<item>Other kernel emulation environments for other foreign drivers
|
|
|
|
as opportunity permits. SCO and Solaris are good candidates,
|
|
|
|
followed by UnixWare, etc.
|
|
|
|
|
|
|
|
<item>Processor emulation environments for execution of foreign binaries.
|
1996-05-16 23:18:28 +00:00
|
|
|
This is easier than it sounds if the system call interface does not
|
1996-01-04 18:51:51 +00:00
|
|
|
change much.
|
|
|
|
|
|
|
|
<item>Streams to allow the use of commercial streams drivers.
|
|
|
|
|
|
|
|
<item>Kernel multithreading (requires kernel preemption).
|
|
|
|
|
|
|
|
<item>Symmetric Multiprocessing with kernel preemption (requires kernel
|
|
|
|
preemption).
|
|
|
|
|
|
|
|
<item>A concerted effort at support for portable computers. This is
|
|
|
|
somewhat handled by changing PCMCIA bridging rules and power
|
|
|
|
management event handling. But there are things like detecting
|
|
|
|
internal vs. external display and picking a different screen
|
1996-01-31 14:26:20 +00:00
|
|
|
resolution based on that fact, not spinning down the disk if
|
1996-01-04 18:51:51 +00:00
|
|
|
the machine is in dock, and allowing dock-based cards to disappear
|
|
|
|
without affecting the machines ability to boot (same issue for
|
|
|
|
PCMCIA).
|
|
|
|
|
|
|
|
<item>Reorganization of the source tree for multiple platform ports.
|
|
|
|
|
|
|
|
<item>A "make world" that "makes the world" (rename the current one
|
1996-05-16 23:18:28 +00:00
|
|
|
to "make regress" if that is all it is good for).
|
1996-01-04 18:51:51 +00:00
|
|
|
|
1996-01-31 14:26:20 +00:00
|
|
|
<item>A 4M (preferably smaller!) memory footprint.
|
1996-01-04 18:51:51 +00:00
|
|
|
|
1995-12-07 13:22:18 +00:00
|
|
|
</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
|
1996-05-09 23:04:53 +00:00
|
|
|
mailed to the &a.hackers;.
|
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
|
1996-05-16 23:18:28 +00:00
|
|
|
&a.majordomo;.
|
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.
|
|
|
|
|
1997-01-03 07:43:03 +00:00
|
|
|
<item>An actual bug report should be filed by using the send-pr(1)
|
|
|
|
program or its <htmlurl url="http://www.freebsd.org/send-pr.html"
|
|
|
|
name="WEB based equivalent">. This will prompt you for various
|
|
|
|
fields to fill in. In the send-pr(1) case, simply go to the
|
|
|
|
fields surrounded by <tt><></tt>'s and fill in your own
|
|
|
|
information in place of what is suggested there. With the
|
|
|
|
WEB based interface, you simply select the appropriate items from
|
|
|
|
various option menus and fill in the various fields shown there.
|
|
|
|
|
|
|
|
<p>You should receive confirmation of your bug report along with
|
|
|
|
a tracking number. Please keep this tracking number and refer to
|
|
|
|
it in any subsequent correspondence so that people can find the
|
|
|
|
details of your problem quickly. You may also send mail to
|
|
|
|
<htmlurl url="mailto:bug-followup@freebsd.org"
|
|
|
|
name="bug-followup@freebsd.org"> with your PR# in the subject
|
|
|
|
line to append further information to an existing bug report.
|
|
|
|
|
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,
|
1996-05-09 23:04:53 +00:00
|
|
|
then you may also file a bug report by sending mail to the &a.bugs;.
|
1995-04-28 16:19:59 +00:00
|
|
|
</itemize>
|
|
|
|
|
1995-12-07 13:22:18 +00:00
|
|
|
<sect1><heading>Changes to the documentation</heading>
|
|
|
|
|
1996-05-09 23:04:53 +00:00
|
|
|
<p>Changes to the documentation are overseen by the &a.doc;.
|
|
|
|
This does not generally include
|
1995-12-07 13:22:18 +00:00
|
|
|
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
|
1996-05-09 23:04:53 +00:00
|
|
|
&a.announce and the &a.current lists, where discussions
|
1995-08-12 21:33:24 +00:00
|
|
|
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
|
1996-05-09 23:04:53 +00:00
|
|
|
what the diffs are for, to the &a.hackers;.
|
|
|
|
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
|
|
|
|
1996-05-16 23:18:28 +00:00
|
|
|
If your changes do not express themselves well as diffs alone
|
|
|
|
(e.g. you have perhaps added, deleted or renamed files as well)
|
1995-05-18 03:05:22 +00:00
|
|
|
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
|
1996-05-09 23:04:53 +00:00
|
|
|
sending the output of that to the &a.hackers;.
|
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.
|
1996-05-16 23:18:28 +00:00
|
|
|
you are unsure of copyright issues governing its further distribution
|
|
|
|
or you are simply not ready to release it without a tighter review first,
|
1996-09-22 15:40:46 +00:00
|
|
|
then you should send it to &a.core; rather than the &a.hackers
|
1996-05-09 23:04:53 +00:00
|
|
|
The core mailing list
|
1995-05-18 03:05:22 +00:00
|
|
|
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
|
|
|
|
1997-01-02 18:24:42 +00:00
|
|
|
Please refer to <tt>man 9 intro</tt> and <tt>man 9 style</tt>
|
|
|
|
for some information on coding style. We would appreciate
|
|
|
|
it if you were at least aware of this information before
|
|
|
|
submitting code.
|
|
|
|
|
1996-03-27 17:03:51 +00:00
|
|
|
<sect1><heading>New code or major value-added packages</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
|
1996-10-04 22:54:17 +00:00
|
|
|
uuencode'd tar files or upload them to our ftp site <url
|
1996-05-09 23:04:53 +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.
|
|
|
|
|
1996-05-16 23:18:28 +00:00
|
|
|
<item>The GNU Public License, or ``GPL''. This license is not quite
|
1995-08-12 21:33:24 +00:00
|
|
|
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.
|
|
|
|
|
|
|
|
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.
|
|
|
|
|
1997-01-02 18:21:48 +00:00
|
|
|
$Id$
|
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
|
|
|
|
1996-03-27 17:03:51 +00:00
|
|
|
<sect1><heading>Money, Hardware or Internet access</heading>
|
1996-05-16 23:18:28 +00:00
|
|
|
<p>We are always very happy to accept donations to further the cause of
|
1995-12-10 09:09:49 +00:00
|
|
|
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.
|
1996-06-08 03:10:11 +00:00
|
|
|
c/o Jordan Hubbard
|
|
|
|
4041 Pike Lane, suite #D.
|
|
|
|
Concord CA, 94520
|
|
|
|
|
|
|
|
[temporarily using the Walnut Creek CDROM address until a PO box can be
|
|
|
|
opened]
|
1995-12-10 09:09:49 +00:00
|
|
|
</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>
|
|
|
|
|
1996-03-30 19:46:37 +00:00
|
|
|
If you do not wish to be listed in our <ref id="donors" name="donors">
|
|
|
|
section, please specify this when making your donation. Thanks!
|
1995-12-10 09:09:49 +00:00
|
|
|
|
|
|
|
<sect2><heading>Donating hardware</heading>
|
|
|
|
|
1996-01-31 14:26:20 +00:00
|
|
|
<p>Donations of hardware in any of the 3 following categories are also gladly
|
1995-12-10 09:09:49 +00:00
|
|
|
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,
|
1996-05-16 23:18:28 +00:00
|
|
|
motherboards, etc) and if you would like to make such a donation, please contact
|
1995-12-10 09:09:49 +00:00
|
|
|
&a.davidg for information on which items are still required.
|
|
|
|
|
1996-05-16 23:18:28 +00:00
|
|
|
<item>Hardware currently unsupported by FreeBSD for which you would like to
|
1996-09-22 15:40:46 +00:00
|
|
|
see such support added. Please contact the &a.core; before sending
|
1996-05-16 23:18:28 +00:00
|
|
|
such items as we will need to find a developer willing to take on the task
|
1995-12-10 09:09:49 +00:00
|
|
|
before we can accept delivery of them.
|
|
|
|
</itemize>
|
|
|
|
|
1996-01-31 14:26:20 +00:00
|
|
|
<sect2><heading>Donating Internet access</heading>
|
1995-12-10 09:09:49 +00:00
|
|
|
|
|
|
|
<p>We can always use new mirror sites for FTP, WWW or sup.
|
1996-05-16 23:18:28 +00:00
|
|
|
If you would like to be such a mirror, please contact
|
1996-05-09 23:04:53 +00:00
|
|
|
<htmlurl url="mailto:admin@FreeBSD.ORG" name="the FreeBSD project
|
1995-12-10 09:09:49 +00:00
|
|
|
administrators"> for more information.
|
1996-03-30 19:40:28 +00:00
|
|
|
|
1996-03-30 19:46:37 +00:00
|
|
|
<sect><heading>Donors Gallery<label id="donors"></heading>
|
1996-03-30 19:40:28 +00:00
|
|
|
|
|
|
|
<p>The FreeBSD Project is indebted to the following donors and would
|
|
|
|
like to publically thank them here!
|
|
|
|
|
|
|
|
<itemize>
|
1996-05-09 23:32:44 +00:00
|
|
|
<item><htmlurl url="mailto:ANDRSN@HOOVER.STANFORD.EDU"
|
|
|
|
name="Annelise Anderson">
|
|
|
|
|
1996-07-16 15:56:58 +00:00
|
|
|
has generously donated funding for the further development of FreeBSD
|
1996-05-09 23:32:44 +00:00
|
|
|
</item>
|
|
|
|
|
1996-06-08 03:10:11 +00:00
|
|
|
<item><htmlurl url="http://www.epilogue.com/" name="Epilogue
|
1996-07-16 15:56:58 +00:00
|
|
|
Technology Corporation">has generously donated funding for FreeBSD
|
|
|
|
development.
|
1996-06-08 03:10:11 +00:00
|
|
|
</item>
|
|
|
|
|
1996-07-16 15:56:58 +00:00
|
|
|
<item><htmlurl url="mailto:gmarco@masternet.it"
|
|
|
|
name="Gianmarco Giovannelli"> has generously donated funding for
|
|
|
|
FreeBSD development.
|
|
|
|
</item>
|
|
|
|
|
1996-05-09 23:32:44 +00:00
|
|
|
<item><htmlurl url="http://www.iijnet.or.jp/laser5/" name="Laser5">
|
|
|
|
in Japan has graciously donated a portion of their profits from the
|
|
|
|
sale of their <em>FreeBSD for PC98'ers</em> CD, a port of FreeBSD to
|
|
|
|
the NEC PC98.
|
|
|
|
</item>
|
1996-03-30 19:40:28 +00:00
|
|
|
|
1996-05-09 23:32:44 +00:00
|
|
|
<item><htmlurl url="http://www.cdrom.com" name="Walnut Creek CDROM">
|
1996-03-30 19:40:28 +00:00
|
|
|
has donated almost more than we can say (see the
|
|
|
|
<ref id="history" name="history"> document for more details).
|
1996-05-16 23:18:28 +00:00
|
|
|
In particular, we would like to thank them for the hardware used for
|
1996-05-09 23:04:53 +00:00
|
|
|
<em>freefall.FreeBSD.ORG</em>, our primary development machine,
|
|
|
|
and for <em>thud.FreeBSD.ORG</em>, our testing and build box.
|
1996-03-30 19:40:28 +00:00
|
|
|
We are also indebted to them for funding various contributors over
|
|
|
|
the years and providing us with unrestricted use of their T1
|
|
|
|
connection to the Internet.
|
|
|
|
</item>
|
1996-12-10 21:46:33 +00:00
|
|
|
|
|
|
|
<item>The <htmlurl url="http://www.interface-business.de" name="interface
|
|
|
|
business GmbH, Dresden"> has been patiently supporting &a.joerg; who has often
|
|
|
|
preferred FreeBSD work over paywork, and used to fall back to their
|
|
|
|
(quite expensive) EUnet Internet connection whenever his private
|
|
|
|
connection became too slow or flakey to work with it...
|
|
|
|
</item>
|
1996-03-30 19:40:28 +00:00
|
|
|
</itemize>
|