.\" $XFree86: xc/programs/xfs/xfs.man,v 3.15 2001/04/18 16:13:22 dawes Exp $ .\" .\" Copyright 1991, 1998 The Open Group .\" .\" Permission to use, copy, modify, distribute, and sell this software and its .\" documentation for any purpose is hereby granted without fee, provided that .\" the above copyright notice appear in all copies and that both that .\" copyright notice and this permission notice appear in supporting .\" documentation. .\" .\" The above copyright notice and this permission notice shall be included in .\" all copies or substantial portions of the Software. .\" .\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR .\" IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, .\" FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL .\" THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, .\" WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF .\" OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE .\" SOFTWARE. .\" .\" Except as contained in this notice, the name of The Open Group shall not .\" be used in advertising or otherwise to promote the sale, use or other .\" dealing in this Software without prior written authorization from the .\" The Open Group. .\" Copyright 1991 Network Computing Devices .\" .\" Permission to use, copy, modify, distribute, and sell this software and .\" its documentation for any purpose is hereby granted without fee, provided .\" that the above copyright notice appear in all copies and that both that .\" copyright notice and this permission notice appear in supporting .\" documentation, and that the name of Network Computing Devices .\" not be used in advertising or .\" publicity pertaining to distribution of the software without specific, .\" written prior permission. Network Computing Devices make .\" no representations about the .\" suitability of this software for any purpose. It is provided "as is" .\" without express or implied warranty. .\" $Xorg: xfs.man,v 1.4 2001/02/09 02:05:42 xorgcvs Exp $ .TH XFS 1 __xorgversion__ .SH NAME xfs \- X font server .SH SYNOPSIS .B "xfs" [\-config \fIconfiguration_file\fP] [\-daemon] [\-droppriv] [\-ls \fIlisten_socket\fP] [\-nodaemon] [\-port \fItcp_port\fP] [\-user \fIusername\fP] .SH DESCRIPTION .PP .I Xfs is the X Window System font server. It supplies fonts to X Window System display servers. .SH "STARTING THE SERVER" The server is usually run by a system administrator, and started via boot files like \fI/etc/rc.local\fR. Users may also wish to start private font servers for specific sets of fonts. .SH "OPTIONS" .TP 8 .B \-config configuration_file Specifies the configuration file the font server will use. If this parameter is not specified, the default file, \fI__configdir__/config\fR will be used. .TP 8 .B \-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. .TP 8 .B \-port tcp_port Specifies the TCP port number on which the server will listen for connections. The default port number is 7100. .TP 8 .B \-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 xfs was built to daemonize by default). .TP 8 .B \-droppriv If specified, xfs will attempt to run as user and group \fIxfs\fR (unless the .B \-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. With 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. .TP 8 .B \-nodaemon When xfs is built to daemonize (run in the background) by default, this prevents that and starts xfs up as a regular process. .TP 8 .B \-user username This is equivalent to .B \-droppriv except that xfs will run as user \fIusername\fR. .SH "SIGNALS" .TP 8 .I SIGTERM This causes the font server to exit cleanly. .TP 8 .I SIGUSR1 This signal is used to cause the server to re-read its configuration file. .TP 8 .I SIGUSR2 This signal is used to cause the server to flush any cached data it may have. .TP 8 .I SIGHUP This signal is used to cause the server to reset, closing all active connections and re-reading the configuration file. .SH "CONFIGURATION" The configuration language is a list of keyword and value pairs. Each keyword is followed by an '=' and then the desired value. .PP Recognized keywords include: .sp .\" .IP "cache-size (cardinal)" .\" Size in bytes of the font server cache. .IP "catalogue (list of string)" Ordered list of font path element names. 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: entry. See the CATALOGUE DIR section below for details. .IP "alternate-servers (list of string)" List of alternate servers for this font server. .IP "client-limit (cardinal)" Number of clients this font server will support before refusing service. This is useful for tuning the load on each individual font server. .IP "clone-self (boolean)" Whether this font server should attempt to clone itself when it reachs the client-limit. .IP "default-point-size (cardinal)" The default pointsize (in decipoints) for fonts that don't specify. The default is 120. .IP "default-resolutions (list of resolutions)" Resolutions the server supports by default. This information may be used as a hint for pre-rendering, and substituted for scaled fonts which do not specify a resolution. A resolution is a comma-separated pair of x and y resolutions in pixels per inch. Multiple resolutions are separated by commas. .IP "error-file (string)" Filename of the error file. All warnings and errors will be logged here. .IP "no-listen (trans-type)" Disable a transport type. For example, TCP/IP connections can be disabled with no-listen tcp .IP "port (cardinal)" TCP port on which the server will listen for connections. .IP "use-syslog (boolean)" Whether syslog(3) (on supported systems) is to be used for errors. .IP "deferglyphs (string)" Set the mode for delayed fetching and caching of glyphs. Value is "none", meaning deferred glyphs is disabled, "all", meaning it is enabled for all fonts, and "16", meaning it is enabled only for 16-bits fonts. .\" .IP "trusted-clients (list of string)" .\" Those clients the fontserver will talk to. Others .\" will be refused for the initial connection. An empty .\" list means the server will talk to any client. .SH "CATALOGUE DIR" You can specify a special kind of font path in the form \fBcatalogue:\fR. The directory specified after the catalogue: prefix will be scanned for symlinks and each symlink destination will be added as a local fontfile FPE. .PP The symlink can be suffixed by attributes such as '\fBunscaled\fR', which will be passed through to the underlying fontfile FPE. The only exception is the newly introduced '\fBpri\fR' attribute, which will be used for ordering the font paths specified by the symlinks. An example configuration: .nf 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 .fi This will add /usr/share/X11/fonts/misc as the first FPE with the attribute 'unscaled', second FPE will be /usr/share/X11/fonts/75dpi, also with the attribute unscaled etc. This is functionally equivalent to setting the following font path: .nf /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 .fi .SH "EXAMPLE" .nf XCOMM XCOMM sample font server configuration file XCOMM XCOMM allow a max of 10 clients to connect to this font server client-limit = 10 XCOMM when a font server reaches its limit, start up a new one clone-self = on XCOMM alternate font servers for clients to use alternate-servers = hansen:7101,hansen:7102 XCOMM where to look for fonts XCOMM the first is a set of Speedo outlines, the second is a set of XCOMM misc bitmaps and the last is a set of 100dpi bitmaps XCOMM catalogue = /usr/X11R6/lib/X11/fonts/speedo, /usr/X11R6/lib/X11/fonts/misc, /usr/X11R6/lib/X11/fonts/100dpi/ XCOMM in 12 points, decipoints default-point-size = 120 XCOMM 100 x 100 and 75 x 75 default-resolutions = 100,100,75,75 use-syslog = off .fi .sp .SH "FONT SERVER NAMES" One of the following forms can be used to name a font server that accepts TCP connections: .sp .nf tcp/\fIhostname\fP:\fIport\fP tcp/\fIhostname\fP:\fIport\fP/\fIcataloguelist\fP .fi .PP The \fIhostname\fP specifies the name (or decimal numeric address) of the machine on which the font server is running. The \fIport\fP is the decimal TCP port on which the font server is listening for connections. The \fIcataloguelist\fP specifies a list of catalogue names, with '+' as a separator. .PP Examples: \fItcp/fs.x.org:7100\fP, \fItcp/18.30.0.212:7101/all\fP. .PP One of the following forms can be used to name a font server that accepts DECnet connections: .sp .nf decnet/\fInodename\fP::font$\fIobjname\fP decnet/\fInodename\fP::font$\fIobjname\fP/\fIcataloguelist\fP .fi .PP The \fInodename\fP specifies the name (or decimal numeric address) of the machine on which the font server is running. The \fIobjname\fP is a normal, case-insensitive DECnet object name. The \fIcataloguelist\fP specifies a list of catalogue names, with '+' as a separator. .PP Examples: \fIDECnet/SRVNOD::FONT$DEFAULT\fP, \fIdecnet/44.70::font$special/symbols\fP. .SH "SEE ALSO" X(__miscmansuffix__), \fIThe X Font Service Protocol\fP, .br \fIFont server implementation overview\fP .SH BUGS Multiple catalogues should be supported. .SH AUTHORS Dave Lemke, Network Computing Devices, Inc .br Keith Packard, Massachusetts Institute of Technology