man-page-additions-20071128
[openafs.git] / doc / man-pages / README
index 15074a9..e2cc192 100644 (file)
@@ -61,10 +61,14 @@ POD and Man Page Generation
   OpenAFS source tree (this will also regenerate the Autoconf scripts).
 
   Conversion to HTML can be done via any of the POD to HTML converters
-  available (there are many of them).  Evaluation of the best tool to use
-  for OpenAFS and exactly how to do the conversion to get the highest
-  quality results is still underway; when complete, details will be
-  included here.
+  available (there are many of them), but for best results (particularly
+  for crosslinks), use the generate-html script in this directory.  You
+  will need to have the Pod::Simple Perl module installed.  If your Perl
+  is not in /usr/bin, run generate-html explicitly with:
+
+      perl generate-html
+
+  It will generate HTML pages in the html subdirectory of this directory.
 
 Formatting Standards
 
@@ -74,7 +78,10 @@ Formatting Standards
   documents common options, and discusses the general use of the suite.
   Then, each operation code in the suite should have a separate man page,
   named after the command with the space between the command suite and the
-  operation code replaced with an underscore.
+  operation code replaced with an underscore.  The NAME section of the
+  operation man page must also use an underscore (fs_listacl, not fs
+  listacl) for compatibility with some man programs.  The SYNOPSIS section
+  should, of course, use a space, since that's what the user must type.
 
   All man pages must follow the standard layout for man page sections and
   formatting.  The best general reference is the pod2man man page,
@@ -119,7 +126,11 @@ Formatting Standards
   References to functions should be noted like function() with the
   trailing parens.  The POD converters know how to format these sorts of
   references appropriately.  References to other sections in the same page
-  should be given as L<SECTION>.
+  should be given as L<SECTION>.  Man pages for all other AFS commands or
+  file formats referenced in the page should be listed in the SYNOPSIS.
+  List each reference on its own line for easier addition of other
+  references later, but don't put blank lines between them.  Don't forget
+  the commas at the end of each line but the last.
 
   Command and output examples should be indented three spaces.  Commands
   entered by the user should be given on a line beginning with %.  If the
@@ -177,40 +188,30 @@ How You Can Help
   the bug number so that I'm aware of it, as I don't always notice new
   bugs.
 
+  You can test your new POD documentation by running the check-pod script
+  in this directory with "prove check-pod".  (And check other people's
+  documentation and find any problems that have crept in.)  You will need
+  to have Test::Pod installed.
+
 Known Problems
 
   The current man pages have the following known deficiencies.  Please
   don't just report the deficiency again, but any contributions towards
   fixing it are greatly appreciated.
 
-   * The section five and section eight man pages have not yet had an
-     initial editing pass and many of the section five man pages are
-     missing because the original reference page names didn't easily
-     convert to man page names.  This is currently being fixed.  Please do
-     not start working on the section five or section eight man pages yet
-     or bother reporting problems with them; they will be changing
-     significantly in the near future.
+   * The following installed commands have no man pages:
 
-   * The following commands have no man pages:
-
-       fs getcalleraccess
-       fs getcrypt
-       fs listaliases
-       fs newalias
+       copyauth
        fs rxstatpeer
        fs rxstatproc
        fs setcbaddr
-       fs setcrypt
-       pts interactive
-       pts quit
-       pts sleep
-       pts source
-       vos changeloc
+       restorevol
+       rmtsysd
+       vldb_convert
        vos clone
-       vos convertROtoRW
-       vos copy
+       vos setfields
        vos shadow
-       vos size
+       vsys
 
    * klog.krb, pagsh.krb, and tokens.krb need to be listed as alternative
      names in the NAME line of the non-.krb man pages, links should be
@@ -223,6 +224,58 @@ Known Problems
    * fs sysname documentation needs to include the possibility of setting
      multiple sysnames and the resulting behavior.
 
+   * bos listkeys and the KeyFile man page assume that you're using the
+     kaserver.
+
+   * bos addkey should be marked deprecated in favor of using asetkey with
+     a keytab.
+
+   * I'm fairly sure that the fileserver man page no longer documents all
+     of the fileserver options.
+
+   * There are lingering references to AFS Development or AFS Product
+     Support in descriptions of options that one should generally not
+     use.  Also, all of the manual references refer to the "IBM" manual.
+     We should decide how to handle this terminology-wise.
+
+   * The salvager actually creates a bunch of SalvageLog files and then
+     combines them, but the SalvageLog man page doesn't reflect this.
+
+   * The CellServDB documentation hasn't been updated for -dynroot.
+
+   * In the suite introduction pages (pts, vos, etc.), each of the
+     subcommands in the initial list should be a link to the relevant
+     page in the HTML output.  This has been done for the fs intro page
+     and the same transform needs to be applied to the other pages.  See
+     the fs intro page for the details.
+
+   * The references to the other OpenAFS manuals, such as the Quick Start
+     guide and the Admin Guide, should be links, probably to the documents
+     on openafs.org.
+
+   * There's no mention of the Kerberos v5 support.  At least, we need
+     some disclaimers under klog and friends talking about sites without
+     kaserver (and possibly without fakeka), and deprecation warnings
+     on the .krb varient commands.
+
+   * We need a way to add links to other man pages (kinit most notably)
+     without creating dangling links in the HTML output.  This probably
+     means that the HTML conversion script needs to generate at startup
+     a list of all valid man page link targets and not linkify the ones
+     that don't match a valid target.
+
+   * Provide a way to substitute the correct paths into the HTML output
+     from Autoconf results.
+
+   * Currently, the man pages are built by regen.sh, which is somewhat
+     annoying since it takes a long time.  Figure out how better to do this
+     during the release process so that end users don't have to have
+     pod2man.
+
+   * Review the sections used for all man pages against what directories
+     the commands are installed into.  (In some cases, it may be better to
+     change the directory than the section of the man page.)
+
   If you notice other problems, please send them to the openafs-doc list
   even if you don't have time to fix them.  Someone else might, and we
   want to track all of the issues.