svn commit: r42905 - head/en_US.ISO8859-1/books/handbook/x11
Dru Lavigne
dru at FreeBSD.org
Tue Oct 8 21:38:25 UTC 2013
Author: dru
Date: Tue Oct 8 21:38:24 2013
New Revision: 42905
URL: http://svnweb.freebsd.org/changeset/doc/42905
Log:
This patch does the following:
- adds pkg instructions to 6.3. Installing Xorg
- adds a Caveats section to 6.4. Xorg Configuration
- temporarily moves the extra config stuff to a new section called 6.8. Troubleshooting--this text has not yet been reviewed and this section may end up being instead called 6.8. Advanced Configuration or shuffled elsewhere in a subsequent patch
- replaces instances of X and X11 with the entity for xorg
- some updates to Synopsis, there will be more updates as the chapter is reviewed and shuffled
Approved by: bcr (mentor)
Modified:
head/en_US.ISO8859-1/books/handbook/x11/chapter.xml
Modified: head/en_US.ISO8859-1/books/handbook/x11/chapter.xml
==============================================================================
--- head/en_US.ISO8859-1/books/handbook/x11/chapter.xml Tue Oct 8 21:32:37 2013 (r42904)
+++ head/en_US.ISO8859-1/books/handbook/x11/chapter.xml Tue Oct 8 21:38:24 2013 (r42905)
@@ -7,7 +7,7 @@
<chapter id="x11">
<chapterinfo>
- <authorgroup>
+ <!--<authorgroup>
<author>
<firstname>Ken</firstname>
<surname>Tom</surname>
@@ -17,7 +17,7 @@
<firstname>Marc</firstname>
<surname>Fonvieille</surname>
</author>
- </authorgroup>
+ </authorgroup>-->
</chapterinfo>
<title>The X Window System</title>
@@ -25,19 +25,25 @@
<sect1 id="x11-synopsis">
<title>Synopsis</title>
- <para>FreeBSD uses X11 to provide users with
- a powerful graphical user interface. X11
- is a freely available version of the X Window System that
- is implemented in <application>&xorg;</application>
- (and other software packages not discussed here). The
- default and official flavor of X11 in &os; is
- <application>&xorg;</application>, the X11 server developed by
- the X.Org Foundation under a license very similar to the one
- used by &os;.</para>
-
- <para>For more information on the video hardware that X11
- supports, check the
- <ulink url="http://www.x.org/">&xorg;</ulink> web site.</para>
+ <para>An installation of &os; using
+ <application>bsdinstall</application> does not automatically
+ install a graphical user interface. This chapter describes
+ how to install and configure <application>&xorg;</application>,
+ which provides the open source X Window System used to provide
+ a graphical environment. It then describes how to find and
+ install a desktop environment or window manager.</para>
+
+ <note>
+ <para>Users who prefer an installation method that automatically
+ configures the <application>&xorg;</application> and offers
+ a choice of window managers during installation should
+ refer to the <ulink
+ url="http://www.pcbsd.org/">pcbsd.org</ulink> website.</para>
+ </note>
+
+ <para>For more information on the video hardware that <application>&xorg;</application>
+ supports, refer to the
+ <ulink url="http://www.x.org/">x.org</ulink> website.</para>
<para>After reading this chapter, you will know:</para>
@@ -48,15 +54,16 @@
</listitem>
<listitem>
- <para>How to install and configure X11.</para>
+ <para>How to install and configure <application>&xorg;</application>.</para>
</listitem>
<listitem>
- <para>How to install and use different window managers.</para>
+ <para>How to install and configure several window managers
+ and desktop environments.</para>
</listitem>
<listitem>
- <para>How to use &truetype; fonts in X11.</para>
+ <para>How to use &truetype; fonts in <application>&xorg;</application>.</para>
</listitem>
<listitem>
@@ -70,7 +77,7 @@
<itemizedlist>
<listitem>
<para>Know how to install additional third-party
- software (<xref linkend="ports"/>).</para>
+ software as described in <xref linkend="ports"/>.</para>
</listitem>
</itemizedlist>
</sect1>
@@ -224,16 +231,20 @@
</sect1>
<sect1 id="x-install">
- <title>Installing X11</title>
+ <title>Installing <application>&xorg;</application></title>
- <para><application>&xorg;</application> is the X11
- implementation for &os;. <application>&xorg;</application>
- is the X server of the open source X Window System
- implementation released by the X.Org Foundation.
- <application>&xorg;</application> is based on the code of
- <application>&xfree86; 4.4RC2</application> and X11R6.6.
- The version of <application>&xorg;</application> currently
- available in the &os; Ports Collection is &xorg.version;.</para>
+ <para><application>&xorg;</application> is the
+ implementation of the open source X Window System
+ released by the X.Org Foundation. In &os;, it
+ can be installed as a package or port. The meta-port for the
+ complete distribution which includes X servers, clients,
+ libraries, and fonts is located in <filename
+ role="package">x11/xorg</filename>. A minimal distribution
+ is located in <filename
+ role="package">x11/xorg-minimal</filename>, with separate
+ ports available for docs, libraries, and apps.
+ The examples in this section install the complete
+ <application>&xorg;</application> distribution.</para>
<para>To build and install <application>&xorg;</application>
from the Ports Collection:</para>
@@ -243,57 +254,38 @@
<note>
<para>To build <application>&xorg;</application> in its
- entirety, be sure to have at least 4 GB of free space
+ entirety, be sure to have at least 4 GB of free disk space
available.</para>
</note>
- <para>Alternatively, X11 can be installed directly from packages.
- Binary packages to use with &man.pkg.add.1; tool are also
- available for X11. When the remote fetching feature of
- &man.pkg.add.1; is used, the version number of the package must
- be removed. &man.pkg.add.1; will automatically fetch the latest
- version of the application.</para>
-
- <para>So to fetch and install the package of
- <application>&xorg;</application>, simply type:</para>
+ <para>Alternatively, <application>&xorg;</application> can be installed directly from packages.
+ To install the package using
+ <application>pkg_add</application>, type:</para>
<screen>&prompt.root; <userinput>pkg_add -r xorg</userinput></screen>
- <note>
- <para>The examples above will install the complete X11
- distribution including the servers, clients, fonts etc.
- Separate packages and ports of X11 are also available.</para>
-
- <para>To install a minimal X11 distribution you can
- alternatively install
- <filename role="package">x11/xorg-minimal</filename>.</para>
- </note>
+ <para>To instead install the package using
+ <application>pkg</application>, type:</para>
- <para>The rest of this chapter will explain how to configure
- X11, and how to set up a productive desktop
- environment.</para>
+ <screen>&prompt.root; <userinput>pkg install xorg</userinput></screen>
</sect1>
<sect1 id="x-config">
<sect1info>
- <authorgroup>
+ <!--<authorgroup>
<author>
<firstname>Christopher</firstname>
<surname>Shumway</surname>
- <contrib>Contributed by </contrib>
- <!-- July 2001 -->
+ <contrib>Contributed in July 2001 by</contrib>
</author>
- </authorgroup>
+ </authorgroup>-->
</sect1info>
- <title>X11 Configuration</title>
+ <title><application>&xorg;</application> Configuration</title>
<indexterm><primary>&xorg;</primary></indexterm>
- <indexterm><primary>X11</primary></indexterm>
-
- <sect2>
- <title>Before Starting</title>
+ <indexterm><primary><application>&xorg;</application></primary></indexterm>
- <para>In most cases, X11 is self-configuring. Those with older
+ <para>In most cases, <application>&xorg;</application> is self-configuring. Those with older
or unusual equipment may find it helpful to gather some
hardware information before beginning configuration.</para>
@@ -342,68 +334,84 @@
<para>Video card memory determines the maximum resolution and
color depth which can be displayed.</para>
- </sect2>
+
+ <sect2>
+ <title>Caveats</title>
+
+ <para>The ability to configure optimal resolution is dependent
+ upon the video hardware and the
+ support provided by its driver.
+ At this time, driver support is as follows:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>NVIDIA: several NVIDIA drivers are available in the
+ x11 category of the FreeBSD Ports Collection. Install
+ the driver that matches the model of the NVIDIA
+ hardware.</para>
+ </listitem>
+
+ <listitem>
+ <para>Intel: as of FreeBSD 9.1, 3D acceleration on most
+ Intel graphics, including IronLake, SandyBridge, and
+ IvyBridge, is supported. Due to the current KMS
+ implementation, it is not possible to switch between the
+ graphical console and a virtual console using
+ Crtl+Alt+F#.</para>
+ </listitem>
+
+ <listitem>
+ <para>ATI/Radeon: 3D acceleration will not work on ATI or
+ Radeon cards until FreeBSD completes its TTM work. These
+ cards will need to be configured with the 2D driver, and
+ if that does not work, with the Vesa driver.</para>
+ </listitem>
+
+ <listitem>
+ <para>Optimus: currently there is no switching support
+ between the two graphics adapters provided by Optimus.
+ Optimus implementations vary, so FreeBSD may or may not
+ be able to successfully load a graphics driver on all
+ hardware. If you get a blank screen, check if the BIOS
+ has an option to disable one of the graphics adapters or
+ to set <quote>discrete</quote> mode.</para>
+ </listitem>
+ </itemizedlist>
+ </sect2>
<sect2>
- <title>Configuring X11</title>
+ <title>Configuring <application>&xorg;</application></title>
<para><application>&xorg;</application> uses
<acronym>HAL</acronym> to autodetect keyboards and mice. The
<filename role="package">sysutils/hal</filename> and
<filename role="package">devel/dbus</filename> ports are
- installed as dependencies of
+ automatically installed as dependencies of
<filename role="package">x11/xorg</filename>, but must be
- enabled by the following entries in the
- <filename>/etc/rc.conf</filename> file:</para>
+ enabled by adding the following entries to
+ <filename>/etc/rc.conf</filename>:</para>
<programlisting>hald_enable="YES"
dbus_enable="YES"</programlisting>
- <para>These services should be started (either manually or by
- rebooting) before further <application>&xorg;</application>
- configuration or use is attempted.</para>
-
- <para><application>&xorg;</application> can often work without
- any further configuration steps by simply typing at
- prompt:</para>
-
- <screen>&prompt.user; <userinput>startx</userinput></screen>
-
- <para>The automatic configuration may fail to work with some
- hardware, or may not set things up quite as desired. In
- these cases, manual configuration will be necessary.</para>
+ <para>Start these services
+ before configuring <application>&xorg;</application>:</para>
- <note>
- <para>Desktop environments like
- <application>GNOME</application>,
- <application>KDE</application> or
- <application>Xfce</application> have tools allowing the user
- to easily set the screen parameters such as the resolution.
- So if the default configuration is not acceptable and you
- planned to install a desktop environment then just continue
- with the installation of the desktop environment and use the
- appropriate screen settings tool.</para>
- </note>
+ <screen>&prompt.root; <userinput>service hald start</userinput>
+&prompt.root; <userinput>service dbus start</userinput></screen>
- <para>Configuration of X11 is a multi-step process. The first
- step is to build an initial configuration file. As the super
- user, simply run:</para>
+ <para>Once these services are started, check if
+ <application>&xorg;</application> auto-configures itself by
+ typing:</para>
<screen>&prompt.root; <userinput>Xorg -configure</userinput></screen>
- <para>This will generate an X11 configuration skeleton file in
- the <filename>/root</filename> directory called
- <filename>xorg.conf.new</filename> (whether you &man.su.1; or
- do a direct login affects the inherited supervisor
- <envar>$HOME</envar> directory variable). The X11 program
- will attempt to probe the graphics hardware on the system and
- write a configuration file to load the proper drivers for the
- detected hardware on the target system.</para>
-
- <para>The next step is to test the existing
- configuration to verify that <application>&xorg;</application>
- can work with the graphics
- hardware on the target system. Type:</para>
+ <para>This will generate a file named
+ <filename>/root/xorg.conf.new</filename> which attempts
+ to load the proper drivers for the
+ detected hardware. Next, test that the automatically generated
+ configuration file works with the graphics hardware by
+ typing:</para>
<screen>&prompt.root; <userinput>Xorg -config xorg.conf.new -retro</userinput></screen>
@@ -462,423 +470,162 @@ dbus_enable="YES"</programlisting>
<programlisting>Option "DontZap" "off"</programlisting>
</note>
- <para>If the mouse does not work, you will need to first
- configure it before proceeding. See <xref linkend="mouse"/>
- in the &os; install chapter. In recent
- <application>Xorg</application> versions,
- the <literal>InputDevice</literal> sections in
- <filename>xorg.conf</filename> are ignored in favor of the
- autodetected devices. To restore the old behavior, add the
- following line to the <literal>ServerLayout</literal> or
- <literal>ServerFlags</literal> section of this file:</para>
-
- <programlisting>Option "AutoAddDevices" "false"</programlisting>
-
- <para>Input devices may then be configured as in previous
- versions, along with any other options needed (e.g., keyboard
- layout switching).</para>
+ <para>If the test is unsuccessful, skip ahead to <xref
+ linkend="x11-understanding"/>. Once the test is successful,
+ copy the configuration file to
+ <filename>/etc/X11/xorg.conf</filename>:</para>
+ <screen>&prompt.root; <userinput>cp xorg.conf.new /etc/X11/xorg.conf</userinput></screen>
+
<note>
- <para>As previously explained the
- <application>hald</application> daemon will, by default,
- automatically detect your keyboard. There are chances that
- your keyboard layout or model will not be correct, desktop
- environments like <application>GNOME</application>,
+ <para>Desktop environments like
+ <application>GNOME</application>,
<application>KDE</application> or
- <application>Xfce</application> provide tools to configure
- the keyboard. However, it is possible to set the keyboard
- properties directly either with the help of the
- &man.setxkbmap.1; utility or with a
- <application>hald</application>'s configuration rule.</para>
-
- <para>For example if one wants to use a PC 102 keys keyboard
- coming with a french layout, we have to create a keyboard
- configuration file for <application>hald</application>
- called <filename>x11-input.fdi</filename> and saved in the
- <filename
- class="directory">/usr/local/etc/hal/fdi/policy</filename>
- directory. This file should contain the following
- lines:</para>
-
- <programlisting><?xml version="1.0" encoding="iso-8859-1"?>
-<deviceinfo version="0.2">
- <device>
- <match key="info.capabilities" contains="input.keyboard">
- <merge key="input.x11_options.XkbModel" type="string">pc102</merge>
- <merge key="input.x11_options.XkbLayout" type="string">fr</merge>
- </match>
- </device>
-</deviceinfo></programlisting>
+ <application>Xfce</application> provide graphical tools
+ to set parameters such as video resolution.
+ If the default configuration works, skip to <xref linkend="x11-wm"/>
+ for examples on how to
+ install a desktop environment.</para>
+ </note>
+ </sect2>
+ </sect1>
- <para>If this file already exists, just copy and add to your
- file the lines regarding the keyboard configuration.</para>
+ <sect1 id="x-fonts">
+ <sect1info>
+ <!--<authorgroup>
+ <author>
+ <firstname>Murray</firstname>
+ <surname>Stokely</surname>
+ <contrib>Contributed by </contrib>
+ </author>
+ </authorgroup>-->
+ </sect1info>
+ <title>Using Fonts in <application>&xorg;</application></title>
- <para>You will have to reboot your machine to force
- <application>hald</application> to read this file.</para>
+ <sect2 id="type1">
+ <title>Type1 Fonts</title>
- <para>It is possible to do the same configuration from an X
- terminal or a script with this command line:</para>
+ <para>The default fonts that ship with <application>&xorg;</application> are less than ideal
+ for typical desktop publishing applications. Large
+ presentation fonts show up jagged and unprofessional looking,
+ and small fonts are almost completely unintelligible.
+ However, there are several free, high quality Type1
+ (&postscript;) fonts available which can be readily used with
+ <application>&xorg;</application>. For instance, the URW font collection
+ (<filename role="package">x11-fonts/urwfonts</filename>)
+ includes high quality versions of standard type1 fonts
+ (<trademark class="registered">Times Roman</trademark>,
+ <trademark class="registered">Helvetica</trademark>,
+ <trademark class="registered">Palatino</trademark> and
+ others). The Freefonts collection
+ (<filename role="package">x11-fonts/freefonts</filename>)
+ includes many more fonts, but most of them are intended for
+ use in graphics software such as the
+ <application>Gimp</application>, and are not complete enough
+ to serve as screen fonts. In addition, <application>&xorg;</application> can be configured
+ to use &truetype; fonts with a minimum of effort. For more
+ details on this, see the &man.X.7; manual page or the
+ <link linkend="truetype">section on &truetype;
+ fonts</link>.</para>
- <screen>&prompt.user; <userinput>setxkbmap -model pc102 -layout fr</userinput></screen>
+ <para>To install the above Type1 font collections from the
+ Ports Collection, run the following commands:</para>
- <para>The
- <filename>/usr/local/share/X11/xkb/rules/base.lst</filename>
- file lists the various keyboard, layouts and options
- available.</para>
- </note>
+ <screen>&prompt.root; <userinput>cd /usr/ports/x11-fonts/urwfonts</userinput>
+&prompt.root; <userinput>make install clean</userinput></screen>
- <indexterm><primary>X11 tuning</primary></indexterm>
+ <para>And likewise with the freefont or other collections. To
+ have the X server detect these fonts, add an appropriate line
+ to the X server configuration file
+ (<filename>/etc/X11/xorg.conf</filename>), which reads:</para>
- <para>The <filename>xorg.conf.new</filename> configuration file
- may now be tuned to taste. Open the file in a text editor
- such as &man.emacs.1; or &man.ee.1;. If the monitor is an
- older or unusual model that does not support autodetection of
- sync frequencies, those settings can be added to
- <filename>xorg.conf.new</filename> under the
- <literal>"Monitor"</literal> section:</para>
+ <programlisting>FontPath "/usr/local/lib/X11/fonts/URW/"</programlisting>
- <programlisting>Section "Monitor"
- Identifier "Monitor0"
- VendorName "Monitor Vendor"
- ModelName "Monitor Model"
- HorizSync 30-107
- VertRefresh 48-120
-EndSection</programlisting>
+ <para>Alternatively, at the command line in the X session
+ run:</para>
- <para>Most monitors support sync frequency autodetection,
- making manual entry of these values unnecessary. For the few
- monitors that do not support autodetection, avoid potential
- damage by only entering values provided by the
- manufacturer.</para>
+ <screen>&prompt.user; <userinput>xset fp+ /usr/local/lib/X11/fonts/URW</userinput>
+&prompt.user; <userinput>xset fp rehash</userinput></screen>
- <para>X allows DPMS (Energy Star) features to be used with
- capable monitors. The &man.xset.1; program controls the
- time-outs and can force standby, suspend, or off modes. If
- you wish to enable DPMS features for your monitor, you must
- add the following line to the monitor section:</para>
+ <para>This will work but will be lost when the X session is
+ closed, unless it is added to the startup file
+ (<filename>~/.xinitrc</filename> for a normal
+ <command>startx</command> session, or
+ <filename>~/.xsession</filename> when logging in through a
+ graphical login manager like <application>XDM</application>).
+ A third way is to use the new
+ <filename>/usr/local/etc/fonts/local.conf</filename> file: see
+ the section on
+ <link linkend="antialias">anti-aliasing</link>.</para>
+ </sect2>
- <programlisting>Option "DPMS"</programlisting>
+ <sect2 id="truetype">
+ <title>&truetype; Fonts</title>
<indexterm>
- <primary><filename>xorg.conf</filename></primary>
+ <primary>TrueType Fonts</primary>
+ </indexterm>
+ <indexterm>
+ <primary>fonts</primary>
+ <secondary>TrueType</secondary>
</indexterm>
- <para>While the <filename>xorg.conf.new</filename>
- configuration file is still open in an editor, select the
- default resolution and color depth desired. This is defined
- in the <literal>"Screen"</literal> section:</para>
+ <para><application>&xorg;</application> has built in support for
+ rendering &truetype; fonts. There are two different modules
+ that can enable this functionality. The freetype module is
+ used in this example because it is more consistent with the
+ other font rendering back-ends. To enable the freetype module
+ just add the following line to the <literal>"Module"</literal>
+ section of the <filename>/etc/X11/xorg.conf</filename>
+ file.</para>
- <programlisting>Section "Screen"
- Identifier "Screen0"
- Device "Card0"
- Monitor "Monitor0"
- DefaultDepth 24
- SubSection "Display"
- Viewport 0 0
- Depth 24
- Modes "1024x768"
- EndSubSection
-EndSection</programlisting>
+ <programlisting>Load "freetype"</programlisting>
- <para>The <literal>DefaultDepth</literal> keyword describes the
- color depth to run at by default. This can be overridden with
- the <option>-depth</option> command line switch to
- &man.Xorg.1;. The <literal>Modes</literal> keyword describes
- the resolution to run at for the given color depth. Note that
- only VESA standard modes are supported as defined by the
- target system's graphics hardware. In the example above, the
- default color depth is twenty-four bits per pixel. At this
- color depth, the accepted resolution is 1024 by 768
- pixels.</para>
+ <para>Now make a directory for the &truetype; fonts (for
+ example,
+ <filename>/usr/local/lib/X11/fonts/TrueType</filename>) and
+ copy all of the &truetype; fonts into this directory. Keep in
+ mind that &truetype; fonts cannot be directly taken from a
+ &macintosh;; they must be in &unix;/&ms-dos;/&windows; format
+ for use by <application>&xorg;</application>. Once the files have been copied into this
+ directory, use <application>ttmkfdir</application> to create a
+ <filename>fonts.dir</filename> file, so that the X font
+ renderer knows that these new files have been installed.
+ <command>ttmkfdir</command> is available from the FreeBSD
+ Ports Collection as
+ <filename role="package">x11-fonts/ttmkfdir</filename>.</para>
- <para>Finally, write the configuration file and test it using
- the test mode given above.</para>
+ <screen>&prompt.root; <userinput>cd /usr/local/lib/X11/fonts/TrueType</userinput>
+&prompt.root; <userinput>ttmkfdir -o fonts.dir</userinput></screen>
- <note>
- <para>One of the tools available to assist you during
- troubleshooting process are the X11 log files, which contain
- information on each device that the X11 server attaches to.
- <application>&xorg;</application> log file names are in the
- format of <filename>/var/log/Xorg.0.log</filename>. The
- exact name of the log can vary from
- <filename>Xorg.0.log</filename> to
- <filename>Xorg.8.log</filename> and so forth.</para>
- </note>
+ <para>Now add the &truetype; directory to the font path. This
+ is just the same as described above for
+ <link linkend="type1">Type1</link> fonts, that is, use</para>
- <para>If all is well, the configuration file needs to be
- installed in a common location where &man.Xorg.1; can find it.
- This is typically <filename>/etc/X11/xorg.conf</filename> or
- <filename>/usr/local/etc/X11/xorg.conf</filename>.</para>
+ <screen>&prompt.user; <userinput>xset fp+ /usr/local/lib/X11/fonts/TrueType</userinput>
+&prompt.user; <userinput>xset fp rehash</userinput></screen>
- <screen>&prompt.root; <userinput>cp xorg.conf.new /etc/X11/xorg.conf</userinput></screen>
+ <para>or add a <literal>FontPath</literal> line to the
+ <filename>xorg.conf</filename> file.</para>
- <para>The X11 configuration process is now complete.
- <application>&xorg;</application> may be now started with the
- &man.startx.1; utility. The X11 server may also be started
- with the use of &man.xdm.1;.</para>
- </sect2>
-
- <sect2>
- <title>Advanced Configuration Topics</title>
-
- <sect3>
- <title>Configuration with &intel; <literal>i810</literal>
- Graphics Chipsets</title>
-
- <indexterm>
- <primary>Intel i810 graphic chipset</primary>
- </indexterm>
-
- <para>Configuration with &intel; i810 integrated chipsets
- requires the <devicename>agpgart</devicename> AGP
- programming interface for X11 to drive the card. See the
- &man.agp.4; driver manual page for more information.</para>
-
- <para>This will allow configuration of the hardware as any
- other graphics board. Note on systems without the
- &man.agp.4; driver compiled in the kernel, trying to load
- the module with &man.kldload.8; will not work. This driver
- has to be in the kernel at boot time through being compiled
- in or using <filename>/boot/loader.conf</filename>.</para>
- </sect3>
-
- <sect3>
- <title>Adding a Widescreen Flatpanel to the Mix</title>
-
- <indexterm>
- <primary>widescreen flatpanel configuration</primary>
- </indexterm>
-
- <para>This section assumes a bit of advanced configuration
- knowledge. If attempts to use the standard configuration
- tools above have not resulted in a working configuration,
- there is information enough in the log files to be of use in
- getting the setup working. Use of a text editor will be
- necessary.</para>
-
- <para>Current widescreen (WSXGA, WSXGA+, WUXGA, WXGA, WXGA+,
- et.al.) formats support 16:10 and 10:9 formats or aspect
- ratios that can be problematic. Examples of some common
- screen resolutions for 16:10 aspect ratios are:</para>
-
- <itemizedlist>
- <listitem>
- <para>2560x1600</para>
- </listitem>
-
- <listitem>
- <para>1920x1200</para>
- </listitem>
-
- <listitem>
- <para>1680x1050</para>
- </listitem>
-
- <listitem>
- <para>1440x900</para>
- </listitem>
-
- <listitem>
- <para>1280x800</para>
- </listitem>
- </itemizedlist>
-
- <para>At some point, it will be as easy as adding one of these
- resolutions as a possible <literal>Mode</literal> in the
- <literal>Section "Screen"</literal> as such:</para>
-
- <programlisting>Section "Screen"
-Identifier "Screen0"
-Device "Card0"
-Monitor "Monitor0"
-DefaultDepth 24
-SubSection "Display"
- Viewport 0 0
- Depth 24
- Modes "1680x1050"
-EndSubSection
-EndSection</programlisting>
-
- <para><application>&xorg;</application> is smart enough to
- pull the resolution information from the widescreen via
- I2C/DDC information so it knows what the monitor can handle
- as far as frequencies and resolutions.</para>
-
- <para>If those <literal>ModeLines</literal> do not exist in
- the drivers, one might need to give
- <application>&xorg;</application> a little hint. Using
- <filename>/var/log/Xorg.0.log</filename> one can extract
- enough information to manually create a
- <literal>ModeLine</literal> that will work. Simply look for
- information resembling this:</para>
-
- <programlisting>(II) MGA(0): Supported additional Video Mode:
-(II) MGA(0): clock: 146.2 MHz Image Size: 433 x 271 mm
-(II) MGA(0): h_active: 1680 h_sync: 1784 h_sync_end 1960 h_blank_end 2240 h_border: 0
-(II) MGA(0): v_active: 1050 v_sync: 1053 v_sync_end 1059 v_blanking: 1089 v_border: 0
-(II) MGA(0): Ranges: V min: 48 V max: 85 Hz, H min: 30 H max: 94 kHz, PixClock max 170 MHz</programlisting>
-
- <para>This information is called EDID information. Creating a
- <literal>ModeLine</literal> from this is just a matter of
- putting the numbers in the correct order:</para>
-
- <programlisting>ModeLine <name> <clock> <4 horiz. timings> <4 vert. timings></programlisting>
-
- <para>So that the <literal>ModeLine</literal> in
- <literal>Section "Monitor"</literal> for this example would
- look like this:</para>
-
- <programlisting>Section "Monitor"
-Identifier "Monitor1"
-VendorName "Bigname"
-ModelName "BestModel"
-ModeLine "1680x1050" 146.2 1680 1784 1960 2240 1050 1053 1059 1089
-Option "DPMS"
-EndSection</programlisting>
-
- <para>Now having completed these simple editing steps, X
- should start on your new widescreen monitor.</para>
- </sect3>
- </sect2>
- </sect1>
-
- <sect1 id="x-fonts">
- <sect1info>
- <authorgroup>
- <author>
- <firstname>Murray</firstname>
- <surname>Stokely</surname>
- <contrib>Contributed by </contrib>
- </author>
- </authorgroup>
- </sect1info>
- <title>Using Fonts in X11</title>
-
- <sect2 id="type1">
- <title>Type1 Fonts</title>
-
- <para>The default fonts that ship with X11 are less than ideal
- for typical desktop publishing applications. Large
- presentation fonts show up jagged and unprofessional looking,
- and small fonts are almost completely unintelligible.
- However, there are several free, high quality Type1
- (&postscript;) fonts available which can be readily used with
- X11. For instance, the URW font collection
- (<filename role="package">x11-fonts/urwfonts</filename>)
- includes high quality versions of standard type1 fonts
- (<trademark class="registered">Times Roman</trademark>,
- <trademark class="registered">Helvetica</trademark>,
- <trademark class="registered">Palatino</trademark> and
- others). The Freefonts collection
- (<filename role="package">x11-fonts/freefonts</filename>)
- includes many more fonts, but most of them are intended for
- use in graphics software such as the
- <application>Gimp</application>, and are not complete enough
- to serve as screen fonts. In addition, X11 can be configured
- to use &truetype; fonts with a minimum of effort. For more
- details on this, see the &man.X.7; manual page or the
- <link linkend="truetype">section on &truetype;
- fonts</link>.</para>
-
- <para>To install the above Type1 font collections from the
- Ports Collection, run the following commands:</para>
-
- <screen>&prompt.root; <userinput>cd /usr/ports/x11-fonts/urwfonts</userinput>
-&prompt.root; <userinput>make install clean</userinput></screen>
-
- <para>And likewise with the freefont or other collections. To
- have the X server detect these fonts, add an appropriate line
- to the X server configuration file
- (<filename>/etc/X11/xorg.conf</filename>), which reads:</para>
-
- <programlisting>FontPath "/usr/local/lib/X11/fonts/URW/"</programlisting>
-
- <para>Alternatively, at the command line in the X session
- run:</para>
-
- <screen>&prompt.user; <userinput>xset fp+ /usr/local/lib/X11/fonts/URW</userinput>
-&prompt.user; <userinput>xset fp rehash</userinput></screen>
-
- <para>This will work but will be lost when the X session is
- closed, unless it is added to the startup file
- (<filename>~/.xinitrc</filename> for a normal
- <command>startx</command> session, or
- <filename>~/.xsession</filename> when logging in through a
- graphical login manager like <application>XDM</application>).
- A third way is to use the new
- <filename>/usr/local/etc/fonts/local.conf</filename> file: see
- the section on
- <link linkend="antialias">anti-aliasing</link>.</para>
- </sect2>
-
- <sect2 id="truetype">
- <title>&truetype; Fonts</title>
-
- <indexterm>
- <primary>TrueType Fonts</primary>
- </indexterm>
- <indexterm>
- <primary>fonts</primary>
- <secondary>TrueType</secondary>
- </indexterm>
-
- <para><application>&xorg;</application> has built in support for
- rendering &truetype; fonts. There are two different modules
- that can enable this functionality. The freetype module is
- used in this example because it is more consistent with the
- other font rendering back-ends. To enable the freetype module
- just add the following line to the <literal>"Module"</literal>
- section of the <filename>/etc/X11/xorg.conf</filename>
- file.</para>
-
- <programlisting>Load "freetype"</programlisting>
-
- <para>Now make a directory for the &truetype; fonts (for
- example,
- <filename>/usr/local/lib/X11/fonts/TrueType</filename>) and
- copy all of the &truetype; fonts into this directory. Keep in
- mind that &truetype; fonts cannot be directly taken from a
- &macintosh;; they must be in &unix;/&ms-dos;/&windows; format
- for use by X11. Once the files have been copied into this
- directory, use <application>ttmkfdir</application> to create a
- <filename>fonts.dir</filename> file, so that the X font
- renderer knows that these new files have been installed.
- <command>ttmkfdir</command> is available from the FreeBSD
- Ports Collection as
- <filename role="package">x11-fonts/ttmkfdir</filename>.</para>
-
- <screen>&prompt.root; <userinput>cd /usr/local/lib/X11/fonts/TrueType</userinput>
-&prompt.root; <userinput>ttmkfdir -o fonts.dir</userinput></screen>
-
- <para>Now add the &truetype; directory to the font path. This
- is just the same as described above for
- <link linkend="type1">Type1</link> fonts, that is, use</para>
-
- <screen>&prompt.user; <userinput>xset fp+ /usr/local/lib/X11/fonts/TrueType</userinput>
-&prompt.user; <userinput>xset fp rehash</userinput></screen>
-
- <para>or add a <literal>FontPath</literal> line to the
- <filename>xorg.conf</filename> file.</para>
-
- <para>That's it. Now <application>Gimp</application>,
- <application>Apache OpenOffice</application>, and all of the
- other X applications should now recognize the installed
- &truetype; fonts. Extremely small fonts (as with text in a
- high resolution display on a web page) and extremely large
- fonts (within <application>&staroffice;</application>) will
- look much better now.</para>
+ <para>That's it. Now <application>Gimp</application>,
+ <application>Apache OpenOffice</application>, and all of the
+ other X applications should now recognize the installed
+ &truetype; fonts. Extremely small fonts (as with text in a
+ high resolution display on a web page) and extremely large
+ fonts (within <application>&staroffice;</application>) will
+ look much better now.</para>
</sect2>
<sect2 id="antialias">
<sect2info>
- <authorgroup>
+ <!--<authorgroup>
<author>
<firstname>Joe Marcus</firstname>
<surname>Clarke</surname>
- <contrib>Updated by </contrib>
- <!-- May 2003 -->
+ <contrib>Updated in May 2003 by</contrib>
</author>
- </authorgroup>
+ </authorgroup>-->
</sect2info>
<title>Anti-Aliased Fonts</title>
@@ -890,7 +637,7 @@ EndSection</programlisting>
<secondary>anti-aliased</secondary>
</indexterm>
- <para>All fonts in X11 that are found in
+ <para>All fonts in <application>&xorg;</application> that are found in
<filename>/usr/local/lib/X11/fonts/</filename> and
<filename>~/.fonts/</filename> are automatically made
available for anti-aliasing to Xft-aware applications. Most
@@ -1060,13 +807,13 @@ EndSection</programlisting>
<sect1 id="x-xdm">
<sect1info>
- <authorgroup>
+ <!--<authorgroup>
<author>
<firstname>Seth</firstname>
<surname>Kingsley</surname>
<contrib>Contributed by </contrib>
</author>
- </authorgroup>
+ </authorgroup>-->
</sect1info>
<title>The X Display Manager</title>
@@ -1230,7 +977,7 @@ EndSection</programlisting>
chooser and login screens. In it, the appearance
of the login program can be modified. The format is
identical to the app-defaults file described in the
- X11 documentation.</para>
+ <application>&xorg;</application> documentation.</para>
</sect3>
<sect3>
@@ -1321,14 +1068,13 @@ DisplayManager.requestPort: 0</scree
<sect1 id="x11-wm">
<sect1info>
- <authorgroup>
+ <!--<authorgroup>
<author>
<firstname>Valentino</firstname>
<surname>Vaschetto</surname>
- <contrib>Contributed by </contrib>
+ <contrib>Contributed in June 2001 by </contrib>
</author>
- <!-- June 2001 -->
- </authorgroup>
+ </authorgroup>-->
</sect1info>
<title>Desktop Environments</title>
@@ -1718,4 +1464,283 @@ DisplayManager.requestPort: 0</scree
</sect3>
</sect2>
</sect1>
+
+ <sect1 id="x11-understanding">
+
+ <title>Troubleshooting</title>
+
+ <para>If the mouse does not work, you will need to first
+ configure it before proceeding. See <xref linkend="mouse"/>
+ in the &os; install chapter. In recent
+ <application>Xorg</application> versions,
+ the <literal>InputDevice</literal> sections in
+ <filename>xorg.conf</filename> are ignored in favor of the
+ autodetected devices. To restore the old behavior, add the
+ following line to the <literal>ServerLayout</literal> or
+ <literal>ServerFlags</literal> section of this file:</para>
+
+ <programlisting>Option "AutoAddDevices" "false"</programlisting>
+
+ <para>Input devices may then be configured as in previous
+ versions, along with any other options needed (e.g., keyboard
+ layout switching).</para>
+
+ <note>
+ <para>As previously explained the
+ <application>hald</application> daemon will, by default,
+ automatically detect your keyboard. There are chances that
+ your keyboard layout or model will not be correct, desktop
+ environments like <application>GNOME</application>,
+ <application>KDE</application> or
+ <application>Xfce</application> provide tools to configure
+ the keyboard. However, it is possible to set the keyboard
+ properties directly either with the help of the
+ &man.setxkbmap.1; utility or with a
+ <application>hald</application>'s configuration rule.</para>
+
+ <para>For example if, one wants to use a PC 102 keys keyboard
+ coming with a french layout, we have to create a keyboard
+ configuration file for <application>hald</application>
+ called <filename>x11-input.fdi</filename> and saved in the
+ <filename
+ class="directory">/usr/local/etc/hal/fdi/policy</filename>
+ directory. This file should contain the following
+ lines:</para>
+
+ <programlisting><?xml version="1.0" encoding="iso-8859-1"?>
+<deviceinfo version="0.2">
+ <device>
+ <match key="info.capabilities" contains="input.keyboard">
+ <merge key="input.x11_options.XkbModel" type="string">pc102</merge>
+ <merge key="input.x11_options.XkbLayout" type="string">fr</merge>
+ </match>
+ </device>
+</deviceinfo></programlisting>
+
+ <para>If this file already exists, just copy and add to your
+ file the lines regarding the keyboard configuration.</para>
+
+ <para>You will have to reboot your machine to force
+ <application>hald</application> to read this file.</para>
+
+ <para>It is possible to do the same configuration from an X
+ terminal or a script with this command line:</para>
+
+ <screen>&prompt.user; <userinput>setxkbmap -model pc102 -layout fr</userinput></screen>
+
+ <para>The
+ <filename>/usr/local/share/X11/xkb/rules/base.lst</filename>
+ file lists the various keyboard, layouts and options
+ available.</para>
+ </note>
+
+ <indexterm><primary><application>&xorg;</application> tuning</primary></indexterm>
+
+ <para>The <filename>xorg.conf.new</filename> configuration file
+ may now be tuned to taste. Open the file in a text editor
+ such as &man.emacs.1; or &man.ee.1;. If the monitor is an
+ older or unusual model that does not support autodetection of
+ sync frequencies, those settings can be added to
+ <filename>xorg.conf.new</filename> under the
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
More information about the svn-doc-all
mailing list