Linux Today: Linux News On Internet Time.

More on LinuxToday

Release Digest: GNU, May 6, 2003

May 07, 2003, 05:00 (0 Talkback[s])

groff 1.19

groff 1.19 has been released.
It is available from and mirrors of that site
(see list of mirror sites at  Current
snapshots are available from
groff is the GNU implementation of troff, a document formatting system.
Included in this release are implementations of troff, pic, eqn, tbl, grn,
refer, -man, -mdoc, -mom, and -ms macros, and drivers for PostScript, TeX dvi
format, HP LaserJet 4 printers, Canon CAPSL printers, HTML format (still
alpha), and typewriter-like devices.  Also included is a modified version of
the Berkeley -me macros, an enhanced version of the X11 xditview previewer,
and an implementation of the -mm macros.
See below for the relevant snippet from the NEWS file.
Bug reports should go to



o Input encoding files for latin-9 (a.k.a. latin-0 and ISO 8859-15) and
  latin-2 (ISO 8859-2) have been added.  Example use:
    groff -Tdvi -mlatin9 my_file > my_file.dvi
  You still need proper fonts with the necessary glyphs.  Out of the box,
  the groff package supports latin-9 only for -Tps, -Tdvi, and -Tutf8,
  and latin-2 only for -Tdvi and -Tutf8.
o Composite glyphs are now supported.  To do this, a subset of the Adobe
  Glyph List (AGL) Algorithm as described in
  is used to construct glyph names based on Unicode character codes.  The
  existing groff glyph names are frozen; no glyph names which can't be
  constructed algorithmically will be added in the future.
  The [...] escape sequence has been extended to specify multiple glyph
  components.  Example:
    [A ho]
  this accesses a glyph with the name `u0041_0328'.
  Some groff glyphs which are useful as composites map to `wrong' Unicode
  code points.  For example, `ho' maps to U+02DB which is a spacing
  ogonek, whereas a non-spacing ogonek U+0328 is needed for composite
  glyphs.  The new request
    .composite from to
  will change the mapping while a composite glyph name is constructed.
  To make [A ho] yield the expected result,
    .composite ho u0328
  is needed.  [The new file `composite.tmac' loaded at start-up already
  contains proper calls to `.composite'.]
  Please refer to the info pages of groff and to the groff_char man page
  for more details.
o A new request `fschar' has been added to define font-specific fallback
  characters.  They are searched after the list of fonts declared with the
  `fspecial' request but before the list of fonts declared with `special'.
o Fallback characters defined with `fschar' can be removed with the
  new `rfschar' request.
o A new request `schar' has been added to define global fallback
  characters.  They are searched after the list of fonts declared with the
  `special' request but before the already mounted special fonts.
o In groff versions 1.18 and 1.18.1, D'f ...' didn't move the current
  point horizontally.  Despite of being silly, this change has been
  reverted for backwards compatibility.  Consequently, the intermediate
  output command `Df' also moves the position horizontally again.
  D'f ...' is deprecated since it depends on the horizontal resolution of
  the output device (given with the `hor' parameter in the DESC file).
  Use the new D'Fg ...' escape instead.
o For orthogonality, new D subcommands to change the fill color are
    D'Fr ...' (rgb)
    D'Fc ...' (cmy)
    D'Fg ...' (gray)
    D'Fk ...' (cmyk)
    D'Fd'     (default color)
  The arguments are the same as with the `defcolor' request.  The current
  position is not changed.
o The values set with H and S are now available in number registers
  n[.height] and n[.slant], respectively.
o The `.pe' number register isn't new but hasn't been documented before.
  It is set to 1 during a page ejection caused by the `bp' request.
o The new glyph symbol `tno' is a textual variant of `no'.
o The new glyph symbol `+e' represents U+03F5, GREEK LUNATE EPSILON SYMBOL.
  (Well, it is not really new since it has been previously supported by
  grolj4.)  The mapping for both the dvi and lj4 symbol font has been
  changed accordingly so that Greek small letter epsilon, `*e', has the
  same glyph shape as with other devices.
o The font `freeeuro.pfa' has been added to provide various default glyph
  shapes for `eu' and `Eu'.
o It is now possible to access all glyphs in a Type 1 font, not only 256
  (provided the font file created by afmtodit has proper entries).  grops
  constructs additional encoding vectors on the fly if necessary.
o The paper size is now emitted via the %%DocumentMedia and PageSize
  mechanisms so that it is no longer required to tell `gv' or `ps2pdf'
  about the paper size.  The `broken' flag value 16 omits this feature
  (the used PostScript command `setpagedevice' is a LanguageLevel 2
  extension).  Patch by Egil Kvaleberg <>.
o Non-slanted PostScript metrics have been changed again; they no longer
  contain negative left italic correction values.  This assures correct
  spacing with eqn.
o The font cmtex10 has been added as the special font `SC' to the DVI fonts.
  It is used as a font-specific special font for CW and CWI.
o New options -l and -p to set landscape orientation and the paper size.
  grodvi now emits a `papersize' special which is understood by DVI drivers
  like dvips.
  Consequently, the DESC file should contain a `papersize' keyword.
o The glyph shapes for [*f] and [*e] have been exchanged with [+f] and
  [+e], respectively, to be in sync with all other devices.
o Glyphs [HE] and [DI] have been replaced with [u2662] and [u2661],
  respectively, since the former two glyphs have a black (filled) shape
  which grodvi doesn't provide by default (it never has actually).
o The glyphs [*e] and [+e] have been exchanged to be in sync with
  all other devices.
o The glyph [~=] is now called [|=].  Similar to other devices, [~=]
  is now another name for glyph [~~].
o New option `-r'.  It is similar to the -i option except it tells grotty to
  use the `reverse video' attribute to render italic fonts.
o New command `figname' to set the name of a picture's output box in TeX
o The environment variable `REFER' to override the name of the default
  database isn't new but hasn't been documented before.
o New option `-r' to avoid emission of `.lf' lines.
o New option `-t' to emit TeX comment lines (giving current file and the
  line number) instead of `.lf' lines.
o Unencoded glyphs in an AFM file are output also (since grops can now emit
  multiple encoding vectors for a single font).
o New option `-m' to prevent negative left italic correction values.
o The mapping and encoding file together with file `DESC' are now searched
  in the default font directory also.  Please refer to the man page of
  afmtodit for more details.
Macro Packages
o Larry Kollar <> and others made the man macros more
  . New command line options -rFT, -rIN, and -rSN to set the vertical
    location of the footer line, the body text indentation, and the
    sub-subheading indentation.
  . New command line option -rHY (similar to the ms macros) to control
  . New macros `.PT' and `.BT' to print the header and footer strings.
    They can be replaced with a customized version in `man.local'.
  . The string `HF' now holds the typeface to print headings and
  . Similar to the ms macros, the LT register now defaults to LL if not
    explicitly specified on the command line.
o troff's start-up file `troffrc' now includes `papersize.tmac' to set
  the paper size with the command line option `-dpaper=<size>'.
  Possible values for `<size>' are the same as the predefined `papersize'
  values in the DESC file (only lowercase; see the groff_font man page)
  except a7-d7.  An appended `l' (ell) character denotes landscape
  orientation.  Examples: `a4', `c3l', `letterl'.
  Most output drivers need additional command line switches `-p' and
  `-l' to override the default paper length and orientation as set in
  the driver specific DESC file.
  For example, use the following for PS output on A4 paper in landscape
    groff -Tps -dpaper=a4l -P-pa4 -P-l -ms >


GnuPG 1.2.2

We are pleased to announce the availability of a new stable GnuPG
release: Version 1.2.2
The GNU Privacy Guard (GnuPG) is GNU's tool for secure communication
and data storage.  It is a complete and free replacement of PGP and
can be used to encrypt data and to create digital signatures.  It
includes an advanced key management facility and is compliant with the
proposed OpenPGP Internet standard as described in RFC2440.  This new
release implements most of OpenPGP's optional features, has somewhat
better interoperabilty with non-conforming OpenPGP implementations and
improved keyserver support.
  * Due to a bug found in the key validdation code, we strongly *
  * suggest to update to this release if you are relying on the *
  * Web-Of-Trust semantics.                                     *
Getting the Software
GnuPG 1.2.2 can be downloaded from one of the GnuPG mirror sites.
The list of mirrors can be found at
On the mirrors you should find the follwing files in the gnupg
directory: (2.1 MB)
      GnuPG 1.2 source compressed using BZIP2 and OpenPGP signature.
  gnupg-1.2.2.tar.gz/ (3.1 MB)
      GnuPG source compressed using GZIP and OpenPGP signature.
  gnupg-1.2.1-1.2.2.diff.gz/ (1.1 MB)
      A patch file to upgrade a 1.2.1 GnuPG source. This file is
      signed; you have to use GnuPG > 0.9.5 to verify the signature.
      GnuPG has a feature to allow clear signed patch files which can
      still be processed by the patch utility.
Select one of them. To shorten the download time, you probably want to
get the BZIP2 compressed file.  Please try another mirror if
exceptional your mirror is not yet up to date.  We have uploaded the
.gz tarbvall on May 1, so at least this one should be available at
the mirrors.
In the binary directory, you should find these files: (1.3 MB)
      GnuPG compiled for Microsoft Windows and OpenPGP signature.
      Note that this is a command line version and comes without a
      graphical installer tool.  You have to use an UNZIP utility to
      extract the files and install them manually.  The included file
      README.W32 has further instructions. 

Checking the Integrity
In order to check that the version of GnuPG which you are going to
install is an original and unmodified one, you can do it in one of
the following ways:
 * If you already have a trusted version of GnuPG installed, you
   can simply check the supplied signature.  For example to check the
   signature of the file you would use this command:
     gpg --verify gnupg-1.2.2.tar.bz2.sig/
   This checks whether the signature file matches the source file.
   You should see a message indicating that the signature is good and
   made by that signing key.  Make sure that you have the right key,
   either by checking the fingerprint of that key with other sources
   or by checking that the key has been signed by a trustworthy other
   key.  Note, that you can retrieve the signing key by 
   finger wk 'at' .
   Never use a GnuPG version you just downloaded to check the
   integrity of the source - use an existing GnuPG installation.
 * If you are not able to use an old version of GnuPG, you have to verify
   the MD5 checksum.  Assuming you downloaded the file, you would run the md5sum command like this:
   and check that the output matches the first line from the
   following list:
     01cf9c6b949603d0511f6fc07bc758d2  gnupg-1.2.2.tar.gz/
     bbb2691b0322f570c7e683049ba3c777  gnupg-1.2.1-1.2.2.diff.gz/

Upgrade Information
If you are upgrading from a version prior to 1.0.7, you should run the
script tools/convert-from-106 once.  Please note also that due to a
bug in versions prior to 1.0.6 it may not be possible to downgrade to
such versions unless you apply the patch .
If you have any problems, please see the FAQ and the mailing list
archive at  Please direct questions to the mailing list.

What's New
Here is a list of major user visible changes since 1.2.1:
    * A "convert-from-106" script has been added.  This is a simple
      script that automates the conversion from a 1.0.6 or earlier
      version of GnuPG to a 1.0.7 or later version.
  New features:
    * A "--trust-model always" option has been added to smooth the
      transition to a future GnuPG that has multiple trust models.
      This is identical to the current "--always-trust" option.
    * Care is taken to prevent compiler optimization from removing
      memory wiping code.
    * New option --no-mangle-dos-filenames so that filenames are not
      truncated in the W32 version.
    * New command "revuid" in the --edit-key menu to revoke a user ID.
      This is a simpler interface to the old method (which still
      works) of revoking the user ID self-signature.
    * Status VALIDSIG now also contains the primary key fingerprint,
      as well as the signature version, public key algorithm, hash
      algorithm, and signature class.
    * Add read-only support for the SHA-256 hash, and optional
      read-only support for the SHA-384 and SHA-512 hashes.
    * New option --enable-progress-filter for use with frontends.
  Incompatible changes:
    * Notation names that do not contain a '@' are no longer allowed
      unless --expert is set.  This is to help prevent pollution of
      the (as yet unused) IETF notation namespace.
    * Disabled keys are now skipped when selecting keys for
      encryption.  If you are using the --with-colons key listings to
      detect disabled keys, please see doc/DETAILS for a minor format
      change in this release.
  OpenPGP compatibility:
    * Fixed a compatibility problem with CryptoEx by increasing the
      window size of the uncompressor.
    * Note that the TIGER/192 digest algorithm is in the process of
      being dropped from the OpenPGP standard.  While this release of
      GnuPG still contains it, it is disabled by default.  To ensure
      you will still be able to use your messages with future versions
      of GnuPG and other OpenPGP programs, please do not use this
  Bug fixes:
    * A bug in key validation has been fixed.  This bug only affects
      keys with more than one user ID (photo IDs do not count here),
      and results in all user IDs on a given key being treated with
      the validity of the most-valid user ID on that key.
  Other changes:
    * Minor trustdb changes to make the trust calculations match
      common usage.
    * New translations: Finnish, Hungarian, Slovak, and Traditional

GnuPG comes with support for these langauges:
  American English            Hungarian (hu)                  
  Catalan (ca)                Indonesian (id)                 
  Czech (cs)                  Italian (it)                    
  Danish (da)[*]              Japanese (ja)                      
  Dutch (nl)[*]               Polish (pl)                        
  Esperanto (eo)[*]           Brazilian Portuguese (pt_BR)[*]    
  Estonian (et)               Portuguese (pt)                 
  Finnish (fi)                Slovak (sk)                     
  French (fr)                 Spanish (es)                    
  Galician (gl)               Swedish (sv)                    
  German (de)                 Traditional Chinese (zh_TW)     
  Greek (el)                  Turkish (tr)                    
Languages marked with [*] were not updated for this releases and you
may notice untranslated messages.  We may release an update of the
translations when we have received some translation updates.  Many
thanks to the translators for their ongoing support of GnuPG.

Happy Hacking,
  The GnuPG team (David, Stefan, Timo and Werner)