Skip site navigation (1)Skip section navigation (2)

FreeBSD Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
xfs(1)                  FreeBSD General Commands Manual                 xfs(1)

NAME
       xfs - X font server

SYNOPSIS
       xfs [ -config configuration_file ] [ -daemon ] [ -droppriv ] [ -inetd ]
       [ -ls listen_socket ] [ -nodaemon ] [ -port tcp_port ] [ -user username
       ] [ -version ]

DESCRIPTION
       xfs is the X Window System font server.  It supplies fonts to X Window
       System display servers.  The server is usually run by a system
       administrator, and started via init(8) or inetd(8).  Users may also
       wish to start private font servers for specific sets of fonts.

       To connect to a font server, see the documentation for your X server;
       it likely supports the syntax documented in the "FONT SERVER NAMES"
       section of X(7).

OPTIONS
       -config configuration_file
              specifies the configuration file xfs will use.  If this
              parameter is not specified, xfs will read its configuration from
              the default file, /usr/local/etc/X11/fs/config.

       -daemon
              instructs xfs to fork and go into the background automatically
              at startup.  If this option is not specified, xfs will run as a
              regular process (unless it was built to daemonize by default).
              When running as a daemon, xfs will attempt to create a file in
              which it stores its process ID, and will delete that file upon
              exit;

       -droppriv
              instructs xfs to attempt to run as user and group xfs (unless
              the -user option is used).  This has been implemented for
              security reasons, as xfs may have undiscovered buffer overflows
              or other paths for possible exploit, both local and remote.
              When using this option, you may also wish to specify `no-listen
              = tcp' in the config file, which ensures that xfs will not to
              use a TCP port at all.  By default, xfs runs with the user and
              group IDs of the user who invoked it.

       -inetd informs xfs that it is being started by inetd, and that a
              listening socket on the appropriate port is being passed as
              standard input.   Assumes that inetd is configured to "wait"
              mode, and will thus allow xfs to handle listening for and
              accepting further connections on this port.   This allows xfs to
              be started on demand when the first font client connects.  When
              using this option, the -daemon and -port flags are ignored.

       -ls listen_socket
              specifies a file descriptor which is already set up to be used
              as the listen socket.  This option is only intended to be used
              by the font server itself when automatically spawning another
              copy of itself to handle additional connections.

       -nodaemon
              instructs xfs not to daemonize (fork and detach from its
              controlling terminal).  This option only has an effect if xfs is
              built to daemonize by default, which is not the stock
              configuration.

       -port tcp_port
              specifies the TCP port number on which the server will listen
              for connections.  The default port number is 7100.  This option
              is ignored if xfs is configured to not listen to TCP transports
              at all (see "Configuration File Format" below).

       -user username
              instructs xfs to run as the user username.  See -droppriv for
              why this may be desired.  By default, xfs runs with the user and
              group IDs of the user who invoked it.

       -version
              instructs xfs to print the program version and exit.

INPUT FILES
       xfs reads and serves any font file format recognized by the X server
       itself.  It locates font files through the specification of a
       catalogue, which is declared in xfs's configuration file.

   Configuration File Format
       xfs reads its configuration from a text file (see the -config option in
       the "OPTIONS" section above).  The configuration language is a list of
       keyword and value pairs.  Each keyword is followed by an equals sign
       (`=') and then the desired value.

       Recognized keywords include:

       alternate-servers (list of strings)
              lists alternate servers for this font server.  See the "FONT
              SERVER NAMES" section of X(7) for the syntax of the string.

       catalogue (list of strings)
              declares as ordered list of font path element names from which
              fonts will be served.  The current implementation only supports
              a single catalogue ("all") containing all of the specified
              fonts. A special directory with symlinks to font paths can be
              specified using a catalogue:<dir> entry. See the CATALOGUE DIR
              section below for details.

       client-limit (cardinal)
              determines the number of clients this font server will support
              before refusing service.  This is useful for tuning the load on
              each individual font server.

       clone-self (boolean)
              indicates whether this font server should attempt to clone
              itself when the number of connected clients reaches the
              client-limit.

       default-point-size (cardinal)
              The default pointsize (in decipoints) for font requests that
              don't specify a point size.  The default is 120.

       default-resolutions (list of resolutions)
              indicates the resolutions the server supports by default.  This
              information may be used as a hint for pre-rendering, and
              substituted into requests for scaled fonts which do not specify
              a resolution.  A resolution is a comma-separated pair of
              horizontal and vertical resolutions in pixels per inch.
              Multiple resolutions are separated by commas.

       deferglyphs (string)
              sets the mode for delayed fetching and caching of glyphs.
              string should be one of `none', meaning glyphs deferment is
              disabled, `all', meaning it is enabled for all fonts, and `16',
              meaning it is enabled only for 16-bit fonts.

       error-file (string)
              indicates the filename of the error file.  All warnings and
              errors will be logged here, unless use-syslog is set to a true
              value (see below).

       no-listen (trans-type)
              disables the specified transport type.  For example, TCP/IP
              connections can be disabled with `no-listen = tcp'.

       port (cardinal)
              indicates the TCP port on which the server will listen for
              connections.

       use-syslog (boolean)
              determines whether errors and diagnostics should be reported via
              syslog(3) (on supported systems) instead of being written to the
              error-file (see above).

CATALOGUE DIR
       You can specify a special kind of font path in the form
       catalogue:<dir>.  The directory specified after the catalogue: prefix
       will be scanned for symlinks and each symlink destination will be added
       as a local fontfile FPE.

       The symlink can be suffixed by attributes such as 'unscaled', which
       will be passed through to the underlying fontfile FPE. The only
       exception is the newly introduced 'pri' attribute, which will be used
       for ordering the font paths specified by the symlinks.

       An example configuration:

           75dpi:unscaled:pri=20 -> /usr/share/X11/fonts/75dpi
           ghostscript:pri=60 -> /usr/share/fonts/default/ghostscript
           misc:unscaled:pri=10 -> /usr/share/X11/fonts/misc
           type1:pri=40 -> /usr/share/X11/fonts/Type1
           type1:pri=50 -> /usr/share/fonts/default/Type1

       This will add /usr/share/X11/fonts/misc as the first FPE with the
       attribute the attribute unscaled etc. This is functionally equivalent
       to setting the following font path:

           /usr/share/X11/fonts/misc:unscaled,
           /usr/share/X11/fonts/75dpi:unscaled,
           /usr/share/X11/fonts/Type1,
           /usr/share/fonts/default/Type1,
           /usr/share/fonts/default/ghostscript

   Example Configuration File
        #
        # sample font server configuration file
        #

        # allow a max of 10 clients to connect to this font server.
        client-limit = 10

        # When a font server reaches the above limit, start up a new one.
        clone-self = on

        # Identify alternate font servers for clients to use.
        alternate-servers = hansen:7101,hansen:7102

        # Look for fonts in the following directories.  The first is a set of
        # TrueType outlines, the second is a set of misc bitmaps (such as terminal
        # and cursor fonts), and the last is a set of 100dpi bitmaps.
        #
        catalogue = /usr/share/X11/fonts/TTF,
                    /usr/share/X11/fonts/misc,
                    /usr/share/X11/fonts/100dpi/

        # in 12 points, decipoints
        default-point-size = 120

        # 100 x 100 and 75 x 75
        default-resolutions = 100,100,75,75

        # Specify our log filename.
        error-file = /var/log/xfs.log

        # Direct diagnostics to our own log file instead of using syslog.
        use-syslog = off

OUTPUT FILES
       When operating in daemon mode, xfs sends diagnostic messages (errors
       and warnings) to the log file specified by the error-file configuration
       variable by default.  However, these messages can be sent to an
       alternate location via the error-file and use-syslog configuration
       variables; see "Configuration File Format", above.

ASYNCHRONOUS EVENTS
       xfs handles the following signals specially:

       SIGTERM
              causes the font server to exit cleanly.

       SIGUSR1
              causes xfs to re-read its configuration file.

       SIGUSR2
              causes xfs to flush any cached data it may have.

       SIGHUP causes xfs to reset, closing all active connections and re-
              reading the configuration file.

BUGS
       Multiple catalogues should be supported.

FUTURE DIRECTIONS
       Significant further development of xfs is unlikely.  One of the
       original motivations behind it was the single-threaded nature of the X
       server -- a user's X session could seem to `freeze up' while the X
       server took a moment to rasterize a font.  This problem with the X
       server, which remains single-threaded in all popular implementations to
       this day, has been mitigated on two fronts: machines have gotten much
       faster, and client-side font rendering (particularly via the Xft
       library) is the norm in contemporary software.

AUTHORS
       Dave Lemke, Network Computing Devices, Inc
       Keith Packard, Massachusetts Institute of Technology

SEE ALSO
       X(7), xfsinfo(1), fslsfonts(1), init(8), inetd(8), syslog(3), The X
       Font Service Protocol, Font Server Implementation Overview

X Version 11                       xfs 1.1.4                            xfs(1)

NAME | SYNOPSIS | DESCRIPTION | OPTIONS | INPUT FILES | CATALOGUE DIR | OUTPUT FILES | ASYNCHRONOUS EVENTS | BUGS | FUTURE DIRECTIONS | AUTHORS | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=xfs&manpath=FreeBSD+10.3-RELEASE+and+Ports>

home | help