[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#53763: [PROPOSED] policy for X font packages



Package: debian-policy
Version: 3.1.1.1
Severity: wishlist

Documents existing practice.

To stave off the inevitable question...

This proposal does not address TrueType fonts because:
1) TTF's are not supported by XFree86 natively (yet), either by the X
   servers or by the font server
2) currently available font servers that do understand TTF's (i.e., not
   xfs) will have their own configuration files which can point to an
   appropriate FHS-compliant location for TrueType fonts
3) when we ship an XFree86 that understands TTF's I will revisit this
   policy
4) I do not currently maintain anything that has to do with TrueType fonts,
   and am not going to make policy proposals about them in my state of
   ignorance

-- 
G. Branden Robinson            |
Debian GNU/Linux               |    The noble soul has reverence for itself.
branden@ecn.purdue.edu         |    -- Friedrich Nietzsche
roger.ecn.purdue.edu/~branden/ |

--- policy.sgml.orig	Wed Dec 29 17:01:51 1999
+++ policy.sgml	Thu Dec 30 12:26:24 1999
@@ -3140,6 +3140,95 @@
 	  without) of your package.</p>
 	  
 	<p>
+	  <em>Packages that provide fonts for the X Window System</em> must
+	  do a number of things to ensure that they are both available
+	  without modification of the X or font server configuration, and
+	  that they do not corrupt files used by other font packages to
+	  register information about themselves.
+	  <enumlist>
+	    <item>BDF fonts should be converted to PCF fonts with the
+	    <tt>bdftopcf</tt> utility (available in the
+	    <tt>xbase-clients</tt> package, <tt>gzip</tt>ped, and placed in
+	    a directory that corresponds to their resolution:
+	    <list>
+	      <item>100 dpi fonts should be placed in
+	      <tt>/usr/X11R6/lib/X11/fonts/100dpi/</tt>.</item>
+	      <item>75 dpi fonts should be placed in
+	      <tt>/usr/X11R6/lib/X11/fonts/75dpi/</tt>.</item>
+	      <item>Character-cell fonts, cursor fonts, and other
+	      low-resolution fonts should be placed in
+	      <tt>/usr/X11R6/lib/X11/fonts/misc/</tt>.</item>
+	    </list></item>
+	    <item>Speedo fonts should be placed in
+	    <tt>/usr/X11R6/lib/X11/fonts/Speedo/</tt>.</item>
+	    <item>Type 1 fonts should be placed in
+	    /usr/X11R6/lib/X11/fonts/Type1/</tt>.</item>
+	    <item>Subdirectories of <tt>/usr/X11R6/lib/X11/fonts/</tt>
+	    other than those listed above should be neither created nor
+	    used.  (The <tt>PEX</tt> and <tt>cyrillic</tt> directories are
+	    excepted for historical reasons, but installation of files into
+	    these directories remains discouraged.)</item>
+	    <item>Font packages may, instead of placing files directly in
+	    the X font directories listed above, provide a symbolic link in
+	    the font directory which points to the font's actual location
+	    in the filesystem.  Such a location should comply with the
+	    FHS.</item>
+	    <item>Font packages should not contain both 75dpi and 100dpi
+	    versions of a font.  If both are available, they should be
+	    provided in separate binary packages with "-75dpi" or "-100dpi"
+	    appended to the names of the packages containing the
+	    corresponding fonts.</item>
+	    <item>Fonts destined for the <tt>misc</tt> subdirectory should
+	    not be included in the same package as 75dpi or 100dpi fonts if
+	    both are available; instead, they should be provided in a
+	    separate package with "-misc" appended to its name.  (For
+	    instance, if a source package provides 75dpi, 100dpi, and
+	    character-cell fonts, three binary packages should be created.
+	    If only 75dpi and character-cell fonts are available, they may
+	    all go into one binary package.)</item>
+	    <item>Font packages <em>must not</em> provide
+	    <tt>fonts.dir</tt>, <tt>fonts.alias</tt>, or
+	    <tt>fonts.scale</tt> in a font directory.
+	    <list>
+	      <item><tt>fonts.dir</tt> files should not be provided at
+	      all.</item>
+	      <item><tt>fonts.alias</tt> and <tt>fonts.scale</tt> files, if
+	      needed, should be provided in the directory
+	      <tt>/etc/X11/fonts/<em>fontdir</em>/<em>package</em>.<em>extension</em></tt>,
+	      where <em>fontdir</em> is the name of the subdirectory of of
+	      <tt>/usr/X11R6/lib/X11/fonts/</tt> where the package's
+	      corresponding fonts are stored (e.g., <tt>75dpi</tt> or
+	      <tt>misc</tt>), <em>package</em> is the name of the package
+	      that provides these fonts, and <em>extension</em> is either
+	      <tt>scale</tt> or <tt>alias</tt>, whichever corresponds to
+	      the file contents.</item>
+	    </list></item>
+	    <item>Font packages must declare a dependency on
+	    <tt>xbase-clients</tt> and, in the package post-installation
+	    and post-removal scripts, invoke the <tt>mkfontdir</tt> command
+	    on each directory into which they installed fonts.</item>
+	    <item>Font packages that provide one or more
+	    <tt>fonts.scale</tt> files as described above must declare a
+	    versioned dependency on <tt>xbase-clients (&gt;=
+	    3.3.3.1-5)</tt> and invoke <tt>update-fonts-scale</tt> on each
+	    directory into which they installed fonts <em>before</em>
+	    invoking <tt>mkfontdir</tt> on that directory.  This invocation
+	    must occur in both the post-installation and post-removal
+	    scripts.</item>
+	    <item>Font packages that provide one or more
+	    <tt>fonts.alias</tt> files as described above must declare a
+	    versioned dependency on <tt>xbase-clients (&gt;=
+	    3.3.3.1-5)</tt> and, in the package post-installation and
+	    post-removal scripts, invoke <tt>update-fonts-alias</tt> on
+	    each directory into which they installed fonts.</item>
+	    <item>Font packages must not provide alias names for the
+	    fonts they include which collide with alias names already in
+	    use by fonts already packaged.</item>
+	    <item>Font packages must not provide fonts with the same XLFD
+	    registry name as another font already packaged.</item>
+	  </enumlist>
+	</p>
+	<p>
 	  <em>Application defaults</em> files have to be installed in
 	  the directory <tt>/usr/X11R6/lib/X11/app-defaults/</tt>.
 	  They are considered as part of the program code.  Thus, they


Reply to: