[comp.windows.x] X contributed software state

casey@gauss.llnl.gov (Casey Leedom) (02/20/90)

  I received 38 responses to my poll request concerning a separate
contributed software set.  All except one were resounding YESes.  The one
exception was a qualified maybe.  The author liked the idea of much more
strict guidelines for contributed software but added that he hadn't had
much real trouble with the contributed software.

  In any case, I've decided to handle an Independent Contributed Software
Distribution.  Before I start the process I'd like to put out a Request
For Comments (as it were) on my DRAFT mission statement and requirements
specification document.  Once everyone's had a chance to voice their
opinions, I'll announce a call for contributed software.

  It should be noted that I really don't want to do this, but I was
stupid enough to open my mouth about this and no one else seems to be
inclined to do the work. (sigh) Hopefully someone will take over for the
next distribution.

Casey

-----
  The following is a DRAFT contributed software mission statement and
requirements specification document for the X Window System Independent
Contributed Software Distribution.  Please send all comments and
suggestions regarding this document to Casey Leedom (casey@gauss.llnl.gov).
The deadline for comments is March 5, 1990 (I will announce a call for
contributed software on that date and post the final working copy of this
requirements document at that time.)

-----
			    X Window System

	     Independent Contributed Software Distribution

			   Mission Statement
				  and
		      Requirements Specification

Missions Statement:
-------------------
  The mission of the X Window System Independent Contributed Software
Distribution is to provide a distribution of high quality contributed
software for the X Window System.

  In the past contributed software has been distributed with the release
of new versions of the X Window System with disastrous results.  Because
contributed software authors were rarely able to compile their software
against the new version of the X Window System their software was to be
released with, the contributed software quite often failed to compile or
operated incorrectly when attempts were made to compile it with the new
version of the X Window System.

  Another typical problem with the contributed software has been a very
uneven level of quality in terms of ease of installation and
documentation.

  The Independent Contributed Software Distribution attempts to solve
these two problems in two ways:

    1.	Collection of software for the Independent Contributed Software
	Distribution will not start until some time *after* distribution
	of new versions of the X Window System.  The period of ``some
	time'' being defined somewhat ambiguously as the point when most
	of the major problems (if any) seem to have been shaken out of
	the new release of the X Window System and authors will have had
	time to get their software working with that new release.  In
	practice, this period will probably be something on the order of
	one to two months.

	The period for collection will purposely be kept quite short
	(about one month seems to be right) in order to get the software
	to users as quickly as possible and avoid (as much as possible)
	interactions with official patches from MIT to the new release of
	the X Window System.

    2.	Requirements for contributed software will be extremely strict --
	some would claim almost draconian.  Any software that doesn't
	pass the well documented standards for the Independent Contributed
	Software Distribution will be rejected.

	End users don't have the time to invest in spending large amounts
	of time trying to get software working; time that the program
	authors should have invested in making their software easier to
	configure and install.  It makes no sense at all to distribute
	software which requires hundreds of end users hours of grief when
	the author should have done the work once.

Requirements Specification:
---------------------------
  Contributed software which doesn't fulfill *ALL* of the following
criteria will be rejected:

    1.	Must have an Imakefile (or Imakefiles where appropriate).  The
	resulting Makefile should have targets for "all", "install",
	"install.man", "install.ln", "clean", "depend", "lint",
	"Makefile" and "Makefiles".  It is permissible for any of these
	rules to be empty.

    2.	Must have a manual page (or pages where appropriate).

    3.	Must include a top level README file which briefly describes
	what the software is, what software and hardware resources
	are needed, and how to get started configuring and installing
	the software.

    4.	Must include an AUTHOR file which describes who donated the
	software and information necessary to contact that person with
	bug reports etc.  An email address is strongly encouraged.

    5.	Must include a COPYRIGHT file which describes exactly what the
	end users' rights to use and redistribute the software are.  The
	copyright must give the Independent Contributed Software
	Distribution unlimited rights for redistribution.  The copyright
	should limit the authors liability for their own good.  (A
	copyright will apply to the distribution as a whole which limits
	the liability of the Independent Contributed Software
	Distribution.)

    6.	Must not require the installer to edit more than the Imakefile and
	maximally one other configuration file to configure and install
	the software.  All such editing must be at least mentioned in the
	README file (if a system is complex, it is acknowledged that a
	separate file describing configuration options may be desirable).

    7.	If software only depends on the core X11 distribution software
	and has no special hardware requirements, the software must pass
	a test of all of the above rules:

		% more README
		% (Possible edit of Imakefile and maximally one other
		   file for configuration purposes.)
		% xmkmf
		% make depend
		% make lint
		% make clean
		% make
		% make install install.man install.ln
		% make clean

	If the software fails to pass this test, a rejection form letter
	will be sent to the AUTHOR with a copy of the error output.  The
	rejection form letter will state in no uncertain terms that the
	Independent Contributed Software Distribution is *NOT* in the
	business of testing author's programs and doesn't like having to.
	Thus it's bad manners to submit software which doesn't pass this
	test.