Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 14 Apr 1997 19:42:15 +0200 (MET DST)
From:      cracauer@wavehh.hanse.de (Martin Cracauer)
To:        jfieber@indiana.edu (John Fieber)
Cc:        jkh@time.cdrom.com, cracauer@wavehh.hanse.de, www@freebsd.org
Subject:   Re: Comments on new search page..
Message-ID:  <9704141742.AA05329@wavehh.hanse.de>
In-Reply-To: <Pine.BSF.3.96.970414084024.7338A-100000@fallout.campusview.indiana.edu> from "John Fieber" at Apr 14, 97 09:10:52 am

next in thread | previous in thread | raw e-mail | index | archive | help
A few thoughts on the issue:

I like the idea to use the usual CVS tree to transport WWW pages to
mirrors. We have several working distribution mechanims and they are
well-watched by the source users. 

Additionally, when installing the WWW pages is done by 'make install'
instead of a passive transfer, we could have some scripts that do
local modifications on the WWW pages, (possible taks are adding local
resources like native-language pages, making cgi links relative or
pointing to freefall).

I don't think we should depend on mirrors doing a full build from sgml
files for now. 
- Not all tools are in the CVS tree.
- People can't be expected to update all related tools on their WWW
  servers just for WWW purposes. That may break things for them at
  various places.

What about addressing all tools we need to build WWW stuff relative to
the CVS tree, not using tools from $PATH or /usr/share at all?

My current idea is to make all Makefile actions for html generation
and whatever is needed for a WWW mirror relative to the current
directory, so that no tools of the installed FreeBSD version are used.

I.e. "www/data/Makefile" would call.
"../../src/usr.bin/sgmlfmt" instead of "sgmlfmt".

That way, people can keep their older FreeBSD releases untouched and
just let the www/ tree keep what it needs by itself.

The www/data/Makefile targets should depend on the needed tools in
../src/. Programs should be build there, but no 'make install' in a
tool directory should be neccessary.

We could easily build new cvsup and CTM distributions with just www/
src/share/handbook and those parts from src/*bin that are needed.


Regarding the CGI scripts, we could then support various Makefile
targets of different kinds of WWW servers.  `make install` just build
html and moves the "passive" parts (HTML pages. GIFs) into
place. Links to CGI scripts in these HTML pages should then point to
freefall.

If a mirror supports -say- cvsweb.cgi, he/she could do an additional
`make install-cgi-cvsweb`. Our Makefile targets then examine whether a
CVS tree is where cvsweb expects it (or inserts the right place using
sed/perl) and edits the HTML pages that point to these CGI scripts to
be a host-relative url. We have to be careful not to overlook relative
Urls in CGIs. If we crosslink from gnats to cvsweb and only one is
local, we need to edit urls there as well.

The user is required to set up his/her target directory for data/gifs
and cgis. We could include "/etc/freebsd-www-setup.mk" or such and if
it exists, use the locations named or else fall back to a default
(i.e. the place when our apache port puts things).

This defaults file could also contain a list of CGI resources that are
to be installed and linked to locally. 

Additional local resources like native language urls could be
configured that way, too and inserted into index.html
automatically. Same applies for a related ftp site which could be
pointed to by HTML pages.

Martin
-- 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Martin Cracauer <cracauer@wavehh.hanse.de>
http://cracauer.cons.org
Fax +49 40 522 85 36 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9704141742.AA05329>