This is the mail archive of the cygwin-apps@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: ITP: sgml-base-1.1


joshuadfranklin@yahoo.com wrote:
This is a small package but one I hope will enable me (and perhaps
others) to contribute various SGML DTDs in a FHS-compliant way.
This is version 1.1-1 since there was a proposal about 2 years ago and
the 1.01-1 packages are floating around.


It is mainly a single perl script, update-sgml-catalog, which comes from Debian's sgml-base package. It also includes text of the SGML/XML location proposals for FHS and LSB in the /usr/share/doc/sgml-base/ directory so maybe people can know why.
>
# sgml-base
sdesc: "A FHS-compliant foundation for SGML packages"
ldesc: "The sgml-base package provides the basis for SGML and XML packages. Mainly this is the update-sgml-catalog(8) script to build the /etc/sgml/catalog system catalog. Please see the documentation and examples in /usr/share/doc/sgml-base/ for more details."
category: Doc Text requires: perl


----------------------------8<-------------------------------------
#!/bin/sh

wget http://ns1.iocc.com/~joshua/cygwin/sgml-base-1.1-1.tar.bz2
wget http://ns1.iocc.com/~joshua/cygwin/sgml-base-1.1-1-src.tar.bz2
wget http://ns1.iocc.com/~joshua/cygwin/setup.hint

----------------------------8<-------------------------------------
EXTRA INFO:

My eventual plan with this is to:

1. Get the DocBook SGML DTDs and DSSSL stylesheets packaged in a FHS-compliant
way. (Also the XML and XSL ones, though Marcel Telka has already packaged 4.2
without the SGML catalog part. It would be great if this could be eventually
updated and moved to the FHS standard locations.)

2. Remove the old cygnus-based stylesheet references from winsup/doc in CVS
(db2html, etc.), relying only on the FHS-compliant DocBook SGML installation.

3. Package openjade and opensp. These don't build with gcc3 yet, so that might
take a while. This would allow users to build cygwin-doc with tools available
from the Cygwin net release (with the possible exception of the info manual).

4. Package a bunch of other DTDs like {X,}HTML, TEI, EAD and stuff like
passivetex.
Thank You!!!!

I have a few comments to make, since I've been running a full-blown redhat-based docbook system under Cygwin for about 6 months now (I have all the extras, too, including the TeX stuff). For most folks, getting a working system can be an exercise in masochism. Getting a system which is distributed via packages can be even worse. As I mention later on, this has been a long time in the making for me.

1) For various reasons, I don't care for debian's approach to the layout of the /usr/share/sgml tree. For one, it is obtuse and quite geared towards a debian linux system. IMNSO, and not to be a suckup to RedHat, RedHat's layout makes much more sense. Plus, it follows a more "loosely" adhered to standard for putting files where most scripts and configure programs expect them. Furthermore, despite those links you gave, the FHS *really* doesn't have very much to say on the subject, other then specifying the TLD of the configuration directory and the data directory.

2) As I mentioned, I have a working OpenSP/openjade. The main problem is the prolific use of that #%$@#^! broken g++ #pragma (the same one that breaks mysql builds) in OpenSP. Also, there are some other dumb c++ style issues which cause gcc-3.3+ to choke (thanks, of course, to the anal standards people on the gcc steering committee). Anyhow, I have a patch against the current openjade && OpenSP which resolve all these problems, fix some leaks, and produce a usable jade suite.

3) Someone has got to force our teTeX maintainer, Jan, to apply changes to the various TeX configuration files to make it usable with jadetex, xmltex, passivetex, etc. The current defaults are way, way too small to handle the memory requirements needed for processing sgml/xml streams. In fact, these defaults seem to be geared towards users of machines with 16MB or less memory, which is ridiculous for us. Also, we need some new backends, namely hugelatex, built and distributed with the base teTex package. TeX configuration, I have found, can be very sensitive, which is why minimizing the amount of changes to it from installed packages is a good thing.

4) Another reason going with a more RedHat-ish layout is to make it easier to package the other items. The spec files were extremely useful in demystifying the install process. In fact, once I had hand-installed the various base programs, I was able to use rpm to build and install the rest from the srpms:
docbook-style-dssl-1.78-2
passivetex-1.24-2.1
xhtml1-dtds-1.0-5
docbook-utils-0.6.13-7
docbook-utils-pdf-0.6.13-7
docbook-dtds-1.0-22.1
docbook-style-xsl-1.61.2-2.1
xmltex-20000118-14.1
jadetex-3.12-9
perl-SGMLpm-103ii-12
linuxdoc-tools-0.9.21-1


5) Doing it the RedHat way enabled me to produce a system which could actually build our documentation using the db2* utils. The cygnus style sheets are actually quite nice, once you get used to them.

6) You really shouldn't use update-sgml-catalog, it is preferred that one use:
xmlcatalog --sgml --noout --add /etc/sgml/openjade-1.3.3.cat /usr/share/sgml/openjade-1.3.3/openjade-1.3.3.cat
instead. See the spec files for some of those packages to get the basic jist of the situation.


I don't consider myself an authority on the subject, but trying to get a perfected full blown docbook system has been a year-long project for me. Sure it's easy to get a semi-working system, but trying to work out all the rough edges is a bit more challenging and required me to learn more about SGML/XML/DocBook then I would have cared to. Anyhow, if you're interested, I'd be happy to share my patches/specfiles/procedures/pitfalls. Please feel free to contact me off list...

Cheers,
Nicholas


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]