Annotation of othersrc/README, Revision 1.1
1.1 ! perry 1: # $NetBSD$
! 3: Information on the "othersrc" Collection
! 5: The "othersrc" collection consists of programs that are either "not
! 6: ready for the main tree" or "never going to be ready for the main
! 7: tree" but which are NOT appropriate to pkgsrc because they have no
! 8: external maintainer.
! 10: The "othersrc" collection is currently experimental and subject to
! 11: future changes in the way it is managed.
! 13: Here are some examples of things appropriate for "othersrc". Note that
! 14: these are just examples, not an exhaustive list:
! 16: A game from the comp.sources archives that has no known
! 17: maintainer and isn't available in a "untar and go" archive on
! 18: the net.
! 20: The "cdecl" utility, a useful program that converts complex C
! 21: declarations to English and vice versa, and has no known
! 22: maintainer but needs some work to make it up to date for C89.
! 24: An example of something inappropriate for "othersrc" is "perl",
! 25: because "perl" is actively maintained and works just fine in
! 26: pkgsrc. Another example of something inappropriate would be "ncurses"
! 27: which is externally maintained and is fine in pkgsrc.
! 29: Programs added to "othersrc" are be expected to follow the following
! 30: rules:
! 32: 1) No external maintainer: Either the program was written by a NetBSD
! 33: person who doesn't maintain any other formal distribution mechanism
! 34: for it, or it is some hack found somewhere on the net in the past that
! 35: has been long since abandoned by the authors. There should be no
! 36: prospect of an external maintainer showing up soon, either.
! 38: 2) Acceptable license: the source must have an open source license
! 39: compatible with inclusion in the tree -- i.e. a near-BSD license or
! 40: better. If the code has a GPL on it, we might in the future create an
! 41: "othergplsrc" or some such, but for the moment, nothing that could
! 42: trip up a distributor of NetBSD derived operating systems should be
! 43: included.
! 45: 3) BSD Makefiles, etc.: after initial import, the code should be made
! 46: to conform with NetBSD standards on how code placed into the main tree
! 47: should look. It must be built with clean BSD Makefiles, compile
! 48: without warnings, be 64 bit clean, etc. It need *not* have prototypes
! 49: __P'ed or any other such thing, but it *should* have prototypes and
! 50: such added if the code base was K&R prototypeless code to begin
! 51: with. Note that if you want to preserve the original Makefile for the
! 52: program so that it compiles on other platforms, please rename any
! 53: non-BSD Makefile to "Makefile.posix".
! 55: 4) The code should run on all BSD architectures or (if it requires
! 56: some MD work to get it to do so) must be made to do so reasonably soon
! 57: after importing. The only exception to this should be small utility
! 58: programs that tweak hardware available only on one machine.
! 60: 5) The code should not be "disruptive" to the existing tree. For the
! 61: moment, "othersrc" is installed into /usr/local, but some day it may
! 62: be installed into /. Thus, if I type "make install" in any "othersrc"
! 63: program directory, it should not add files in places where they do not
! 64: belong, overwrite files that would otherwise be installed by the main
! 65: tree, etc. Also, the program should not be overly large -- if it adds
! 66: fifteen megs of cruft to the tree, its probably something that should
! 67: be discussed heavily before it is imported.
! 69: 6) The code should be of general interest. A CAD system for designing
! 70: wristwatches probably isn't appropriate -- its a very specialized
! 71: application. A "vanity program" (similar to a "vanity kernel config")
! 72: that is useful to only one person should almost certainly *not* be in
! 73: "othersrc". A program that lets you do search and replace on symbols
! 74: in a large corpus of C code probably *is* of general interest and
! 75: would be appropriate. If there's doubt, it should be discussed.
! 77: 7) I'm not sure if we should or should not accept X utilities. We'll
! 78: discuss that when we come to the problem.
! 80: Currently, "othersrc" is in an experimental phase. We are still
! 81: figuring out how to use it properly and who will want it. Although the
! 82: original plan called for "othersrc" being a (second class) part of
! 83: releases and being built to /, for the moment it will not be part of
! 84: releases and will be built to /usr/local. This will change after we
! 85: have gained some experience with it.
! 87: During this "experimental" period, we will "play around" with the
! 88: collection and see what sort of level of commitment and what sort of
! 89: mechanisms are likely to work well. We will play with using the output
! 90: in pkgsrc vs. using it in its "native" tree, see what sort of programs
! 91: people seem to be finding to import, etc., and get some experience
! 92: with the mechanism. We may even change the name of the collection
! 93: after thinking about it for a while.
! 95: Please contribute!
! 97: --Perry Metzger