diff options
author | Giorgos Keramidas <keramida@FreeBSD.org> | 2002-08-25 23:44:31 +0000 |
---|---|---|
committer | Giorgos Keramidas <keramida@FreeBSD.org> | 2002-08-25 23:44:31 +0000 |
commit | 105d40844f69d55ac3e6c1e541e32afbb5cb0f33 (patch) | |
tree | 080d9eb52fb5b69c2cf364bfa5ace0d27d9b655e /en_US.ISO8859-1 | |
parent | 51f361fa4e130e7000766fdde18b541f7a39bd19 (diff) | |
download | doc-105d40844f69d55ac3e6c1e541e32afbb5cb0f33.tar.gz doc-105d40844f69d55ac3e6c1e541e32afbb5cb0f33.zip |
Whitespace cleanup.
This can safely be ignonred by translators.
. Indent <screen> and <programlisting>.
. Add spacing to <listitems>.
. Wrap lines longer than 80 chars
. Remove eol whitespace.
Notes
Notes:
svn path=/head/; revision=14016
Diffstat (limited to 'en_US.ISO8859-1')
-rw-r--r-- | en_US.ISO8859-1/books/handbook/x11/chapter.sgml | 1615 |
1 files changed, 841 insertions, 774 deletions
diff --git a/en_US.ISO8859-1/books/handbook/x11/chapter.sgml b/en_US.ISO8859-1/books/handbook/x11/chapter.sgml index c085458dd9..8f2b9486b5 100644 --- a/en_US.ISO8859-1/books/handbook/x11/chapter.sgml +++ b/en_US.ISO8859-1/books/handbook/x11/chapter.sgml @@ -10,24 +10,41 @@ <sect1> <title>Synopsis</title> - <para>FreeBSD uses <application>XFree86</application> to provide users with a powerful - graphical user interface. <application>XFree86</application> is an open-source - implementation of the X Window System. This chapter - will cover installation and configuration of <application>XFree86</application> on a - FreeBSD system. For more information on <application>XFree86</application> and - video hardware that it supports, check the <ulink - url="http://www.XFree86.org/">XFree86</ulink> web site.</para> + <para>FreeBSD uses <application>XFree86</application> to provide users with + a powerful graphical user interface. <application>XFree86</application> + is an open-source implementation of the X Window System. This chapter + will cover installation and configuration of + <application>XFree86</application> on a FreeBSD system. For more + information on <application>XFree86</application> and video hardware that + it supports, check the <ulink + url="http://www.XFree86.org/">XFree86</ulink> web site.</para> <para>After reading this chapter, you will know:</para> + <itemizedlist> <listitem> - <para>The various components of the X Window System, and how they - interoperate.</para> + <para>The various components of the X Window System, and how they + interoperate.</para> + </listitem> + + <listitem> + <para>How to install and configure + <application>XFree86</application>.</para> + </listitem> + + <listitem> + <para>How to install and use different window managers.</para> + </listitem> + + <listitem> + <para>How to use TrueType fonts in + <application>XFree86</application>.</para> + </listitem> + + <listitem> + <para>How to setup your system for graphical logins + (<application>XDM</application>).</para> </listitem> - <listitem><para>How to install and configure <application>XFree86</application>.</para></listitem> - <listitem><para>How to install and use different window managers.</para></listitem> - <listitem><para>How to use TrueType fonts in <application>XFree86</application>.</para></listitem> - <listitem><para>How to setup your system for graphical logins (<application>XDM</application>).</para></listitem> </itemizedlist> <para>Before reading this chapter, you should:</para> @@ -53,13 +70,13 @@ <title>Why X?</title> <para>X is not the first window system written for Unix, but it is the - most popular. X's original development team had worked on another - window system before writing X. That system's name was - <quote>W</quote> (for <quote>Window</quote>). X is just the next - letter in the Roman alphabet.</para> + most popular. X's original development team had worked on another + window system before writing X. That system's name was + <quote>W</quote> (for <quote>Window</quote>). X is just the next + letter in the Roman alphabet.</para> <para>X can be called <quote>X</quote>, <quote>X Window System</quote>, - <quote>X11</quote>, and other terms. Calling X11 + <quote>X11</quote>, and other terms. Calling X11 <quote>X Windows</quote> can offend some people; see &man.X.1; for a bit more insight on this.</para> </sect2> @@ -68,154 +85,155 @@ <title>The X Client/Server Model</title> <para>X was designed from the beginning to be network-centric, and - adopts a <quote>client-server</quote> model. In the X model, the - <quote>X server</quote> runs on the computer that has the keyboard, - monitor, and mouse attached. The server is responsible for managing - the display, handling input from the keyboard and mouse, and so on. - Each X application (such as <application>XTerm</application>, or - <application>Netscape</application>) is a <quote>client</quote>. A - client sends messages to the server such as <quote>Please draw a - window at these coordinates</quote>, and the server sends back - messages such as <quote>The user just clicked on the OK - button</quote>.</para> + adopts a <quote>client-server</quote> model. In the X model, the + <quote>X server</quote> runs on the computer that has the keyboard, + monitor, and mouse attached. The server is responsible for managing + the display, handling input from the keyboard and mouse, and so on. + Each X application (such as <application>XTerm</application>, or + <application>Netscape</application>) is a <quote>client</quote>. A + client sends messages to the server such as <quote>Please draw a + window at these coordinates</quote>, and the server sends back + messages such as <quote>The user just clicked on the OK + button</quote>.</para> <para>If there is only one computer involved, such as in a home or small - office environment, the X server and the X clients will be running on - the same computer. However, it is perfectly possible to run the X - server on a less powerful desktop computer, and run X applications - (the clients) on, say, the powerful and expensive machine that serves - the office. In this scenario the communication between the X client - and server takes place over the network.</para> - + office environment, the X server and the X clients will be running on + the same computer. However, it is perfectly possible to run the X + server on a less powerful desktop computer, and run X applications + (the clients) on, say, the powerful and expensive machine that serves + the office. In this scenario the communication between the X client + and server takes place over the network.</para> + <para>This confuses some people, because the X terminology is - exactly backward to what they expect. They expect the <quote>X - server</quote> to be the big powerful machine down the hall, and - the <quote>X client</quote> to be the machine on their desk.</para> + exactly backward to what they expect. They expect the <quote>X + server</quote> to be the big powerful machine down the hall, and + the <quote>X client</quote> to be the machine on their desk.</para> <para>Remember that the X server is the machine with the monitor and - keyboard, and the X clients are the programs that display the - windows.</para> - + keyboard, and the X clients are the programs that display the + windows.</para> + <para>There is nothing in the protocol that forces the client and - server machines to be running the same operating system, or even to - be running on the same type of computer. It is certainly possible to - run an X server on Microsoft Windows or Apple's MacOS, and there are - various free and commercial applications available that do exactly - that.</para> + server machines to be running the same operating system, or even to + be running on the same type of computer. It is certainly possible to + run an X server on Microsoft Windows or Apple's MacOS, and there are + various free and commercial applications available that do exactly + that.</para> <para>The X server that ships with FreeBSD is called - <application>XFree86</application>, and is available for free, under a - license very similar to the FreeBSD license. Commercial X servers for - FreeBSD are also available.</para> + <application>XFree86</application>, and is available for free, under a + license very similar to the FreeBSD license. Commercial X servers for + FreeBSD are also available.</para> </sect2> <sect2> <title>The Window Manager</title> <para>The X design philosophy is much like the Unix design philosophy, - <quote>tools, not policy</quote>. This means that X does not try to - dictate how a task is to be accomplished. Instead, tools are provided - to the user, and it is the user's responsibility to decide how to use - those tools.</para> + <quote>tools, not policy</quote>. This means that X does not try to + dictate how a task is to be accomplished. Instead, tools are provided + to the user, and it is the user's responsibility to decide how to use + those tools.</para> <para>This philosophy extends to X not dictating what windows should - look like on screen, how to move them around with the mouse, what - keystrokes should be used to move between windows (i.e., - <keycombo action="simul"> - <keycap>Alt</keycap> - <keycap>Tab</keycap> - </keycombo>, in the case of Microsoft Windows), what the title bars - on each window should look like, whether or not they have close - buttons on them, and so on.</para> + look like on screen, how to move them around with the mouse, what + keystrokes should be used to move between windows (i.e., + <keycombo action="simul"> + <keycap>Alt</keycap> + <keycap>Tab</keycap> + </keycombo>, in the case of Microsoft Windows), what the title bars + on each window should look like, whether or not they have close + buttons on them, and so on.</para> <para>Instead, X delegates this responsibility to an application called - a <quote>Window Manager</quote>. There are dozens of window - managers available for X: <application>AfterStep</application>, - <application>Blackbox</application>, <application>ctwm</application>, - <application>Enlightenment</application>, - <application>fvwm</application>, <application>Sawfish</application>, - <application>twm</application>, - <application>Window Maker</application>, and more. Each of these - window managers provides a different look and feel; some of them - support <quote>virtual desktops</quote>; some of them allow customized - keystrokes to manage the desktop; some have a <quote>Start</quote> - button or similar device; some are <quote>themeable</quote>, allowing - a complete change of look-and-feel by applying a new theme. These - window managers, and many more, are available in the - <filename>x11-wm</filename> category of the Ports Collection.</para> - - <para>In addition, the <application>KDE</application> and <application>GNOME</application> desktop environments both have - their own window managers which integrate with the desktop.</para> + a <quote>Window Manager</quote>. There are dozens of window + managers available for X: <application>AfterStep</application>, + <application>Blackbox</application>, <application>ctwm</application>, + <application>Enlightenment</application>, + <application>fvwm</application>, <application>Sawfish</application>, + <application>twm</application>, + <application>Window Maker</application>, and more. Each of these + window managers provides a different look and feel; some of them + support <quote>virtual desktops</quote>; some of them allow customized + keystrokes to manage the desktop; some have a <quote>Start</quote> + button or similar device; some are <quote>themeable</quote>, allowing + a complete change of look-and-feel by applying a new theme. These + window managers, and many more, are available in the + <filename>x11-wm</filename> category of the Ports Collection.</para> + + <para>In addition, the <application>KDE</application> and + <application>GNOME</application> desktop environments both have their + own window managers which integrate with the desktop.</para> <para>Each window manager also has a different configuration mechanism; - some expect configuration file written by hand, others feature - GUI tools for most of the configuration tasks; at least one - (<application>sawfish</application>) has a configuration file written - in a dialect of the Lisp language.</para> + some expect configuration file written by hand, others feature + GUI tools for most of the configuration tasks; at least one + (<application>sawfish</application>) has a configuration file written + in a dialect of the Lisp language.</para> <note> - <title>Focus Policy</title> - - <para>Another feature the window manager is responsible for is the - mouse <quote>focus policy</quote>. Every windowing system - needs some means of choosing a window to be actively receiving - keystrokes, and should visibly indicate which window is active as - well.</para> - - <para>A familiar focus policy is called <quote>click-to-focus</quote>. - This is the model utilized by Microsoft Windows, in which a window - becomes active upon receiving a mouse click.</para> - - <para>X does not support any particular focus policy. Instead, the - window manager controls which window has the focus at any one time. - Different window managers will support different focus methods. All - of them support click to focus, and the majority of them support - several others.</para> - - <para>The most popular focus policies are:</para> - - <variablelist> - <varlistentry> - <term>focus-follows-mouse</term> - - <listitem> - <para>The window that is under the mouse pointer is the - window that has the focus. This may not necessarily be - the window that is on top of all the other windows. - The focus is changed by pointing at another window, there - is no need to click in it as well.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term>sloppy-focus</term> - - <listitem> - <para>This policy is a small extension to focus-follows-mouse. - With focus-follows-mouse, if the mouse is moved over the - root window (or background) then no window has the focus, - and keystrokes are simply lost. With sloppy-focus, focus is - only changed when the cursor enters a new window, and not - when exiting the current window.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term>click-to-focus</term> - - <listitem> - <para>The active window is selected by mouse click. The - window may then be <quote>raised</quote>, and appear in - front of all other windows. All keystrokes will now be - directed to this window, even if the cursor is moved to - another window.</para> - </listitem> - </varlistentry> - </variablelist> - - <para>Many window managers support other policies, as well as - variations on these. Be sure to consult the documentation for - the window manager itself.</para> + <title>Focus Policy</title> + + <para>Another feature the window manager is responsible for is the + mouse <quote>focus policy</quote>. Every windowing system + needs some means of choosing a window to be actively receiving + keystrokes, and should visibly indicate which window is active as + well.</para> + + <para>A familiar focus policy is called <quote>click-to-focus</quote>. + This is the model utilized by Microsoft Windows, in which a window + becomes active upon receiving a mouse click.</para> + + <para>X does not support any particular focus policy. Instead, the + window manager controls which window has the focus at any one time. + Different window managers will support different focus methods. All + of them support click to focus, and the majority of them support + several others.</para> + + <para>The most popular focus policies are:</para> + + <variablelist> + <varlistentry> + <term>focus-follows-mouse</term> + + <listitem> + <para>The window that is under the mouse pointer is the + window that has the focus. This may not necessarily be + the window that is on top of all the other windows. + The focus is changed by pointing at another window, there + is no need to click in it as well.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term>sloppy-focus</term> + + <listitem> + <para>This policy is a small extension to focus-follows-mouse. + With focus-follows-mouse, if the mouse is moved over the + root window (or background) then no window has the focus, + and keystrokes are simply lost. With sloppy-focus, focus is + only changed when the cursor enters a new window, and not + when exiting the current window.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term>click-to-focus</term> + + <listitem> + <para>The active window is selected by mouse click. The + window may then be <quote>raised</quote>, and appear in + front of all other windows. All keystrokes will now be + directed to this window, even if the cursor is moved to + another window.</para> + </listitem> + </varlistentry> + </variablelist> + + <para>Many window managers support other policies, as well as + variations on these. Be sure to consult the documentation for + the window manager itself.</para> </note> </sect2> @@ -223,69 +241,67 @@ <title>Widgets</title> <para>The X approach of providing tools and not policy extends to the - widgets that seen on screen in each application.</para> + widgets that seen on screen in each application.</para> <para><quote>Widget</quote> is a term for all the items in the user - interface that can be clicked or manipulated in some way; buttons, - check boxes, radio buttons, icons, lists, and so on. Microsoft - Windows calls these <quote>controls</quote>.</para> + interface that can be clicked or manipulated in some way; buttons, + check boxes, radio buttons, icons, lists, and so on. Microsoft + Windows calls these <quote>controls</quote>.</para> <para>Microsoft Windows and Apple's MacOS both have a very rigid widget - policy. Application developers are supposed to ensure that their - applications share a common look and feel. With X, it was not - considered sensible to mandate a particular graphical style, or set - of widgets to adhere to.</para> + policy. Application developers are supposed to ensure that their + applications share a common look and feel. With X, it was not + considered sensible to mandate a particular graphical style, or set + of widgets to adhere to.</para> <para>As a result, do not expect X applications to have a common - look and feel. There are several popular widget sets and - variations, including the original Athena widget set from MIT, - <application>Motif</application> (on which the widget set in - Microsoft Windows was modeled, all bevelled edges and three shades of - grey), <application>OpenLook</application>, and others.</para> + look and feel. There are several popular widget sets and + variations, including the original Athena widget set from MIT, + <application>Motif</application> (on which the widget set in + Microsoft Windows was modeled, all bevelled edges and three shades of + grey), <application>OpenLook</application>, and others.</para> <para>Most newer X applications today will use a modern-looking widget - set, either Qt, used by <application>KDE</application>, or - <application>GTK</application>, used by the - <application>GNOME</application> - project. In this respect, there is some convergence in - look-and-feel of the Unix desktop, which certainly makes things - easier for the novice user.</para> + set, either Qt, used by <application>KDE</application>, or + <application>GTK</application>, used by the + <application>GNOME</application> + project. In this respect, there is some convergence in + look-and-feel of the Unix desktop, which certainly makes things + easier for the novice user.</para> </sect2> </sect1> <sect1 id="x-install"> <title>Installing XFree86</title> - <para>Before installing <application>XFree86</application>, decide on which version to - run. <application>XFree86 3.X</application> is a maintenance - branch of <application>XFree86</application> development. It is very stable, and it - supports a huge number of graphics cards. However, no new + <para>Before installing <application>XFree86</application>, decide on which + version to run. <application>XFree86 3.X</application> is a maintenance + branch of <application>XFree86</application> development. It is very + stable, and it supports a huge number of graphics cards. However, no new development is being done on the software. <application>XFree86 - 4.X</application> is a complete redesign of the system with many - new features such as better support for fonts and - anti-aliasing. Unfortunately this new architecture requires - that the video drivers be rewritten, and some of the older - cards that were supported in 3.X are not yet supported in 4.X. As all - new developments and support for new graphics cards are done on that - branch, <application>XFree86 4.X</application> is now the default - version of the X Window System on FreeBSD.</para> + 4.X</application> is a complete redesign of the system with many new + features such as better support for fonts and anti-aliasing. + Unfortunately this new architecture requires that the video drivers be + rewritten, and some of the older cards that were supported in 3.X are not + yet supported in 4.X. As all new developments and support for new + graphics cards are done on that branch, <application>XFree86 + 4.X</application> is now the default version of the X Window System on + FreeBSD.</para> <para>The FreeBSD setup program offers users the opportunity to install - and configure <application>XFree86 4.X</application> during installation (covered in - <xref linkend="x-server">). To install and run + and configure <application>XFree86 4.X</application> during installation + (covered in <xref linkend="x-server">). To install and run <application>XFree86 3.X</application>, wait until after the base - FreeBSD system is installed, and then install <application>XFree86</application>. For example, - to build and install <application>XFree86 3.X</application> from the - ports collection:</para> + FreeBSD system is installed, and then install + <application>XFree86</application>. For example, to build and install + <application>XFree86 3.X</application> from the ports collection:</para> <screen>&prompt.root; <userinput>cd /usr/ports/x11/XFree86</userinput> &prompt.root; <userinput>make all install clean</userinput></screen> - <para>Alternatively, either version of <application>XFree86</application> can be - installed - directly from the FreeBSD - binaries provided on the <ulink - url="http://www.XFree86.org/">XFree86 web site</ulink>. A binary + <para>Alternatively, either version of <application>XFree86</application> + can be installed directly from the FreeBSD binaries provided on the + <ulink url="http://www.XFree86.org/">XFree86 web site</ulink>. A binary package to use with &man.pkg.add.1; tool is also available for <application>XFree86 4.X</application>. When the remote fetching feature of &man.pkg.add.1; is used, the version number of the @@ -294,7 +310,7 @@ package of <application>XFree86 4.X</application>, simply type:</para> <screen>&prompt.root; <userinput>pkg_add -r XFree86</userinput></screen> - + <para>You can also use the ports collection to install <application>XFree86 4.X</application>, for that you simply need to type the following commands:</para> @@ -303,7 +319,8 @@ &prompt.root; <userinput>make install clean</userinput></screen> <para>The rest of this chapter will explain how to configure - <application>XFree86</application>, and how to setup a productive desktop environment.</para> + <application>XFree86</application>, and how to setup a productive desktop + environment.</para> <!-- Easiest way is from sysinstall for XFree86 4.X --> @@ -322,7 +339,7 @@ </sect1info> <title>XFree86 Configuration</title> - + <indexterm><primary>XFree86 4.X</primary></indexterm> <indexterm><primary>XFree86</primary></indexterm> @@ -330,35 +347,35 @@ <title>Before Starting</title> <para>Before configuration of <application>XFree86 4.X</application>, - the following information about the target system is needed:</para> + the following information about the target system is needed:</para> <itemizedlist> - <listitem><para>Monitor specifications</para></listitem> - <listitem><para>Video Adapter chipset</para></listitem> - <listitem><para>Video Adapter memory</para></listitem> + <listitem><para>Monitor specifications</para></listitem> + <listitem><para>Video Adapter chipset</para></listitem> + <listitem><para>Video Adapter memory</para></listitem> </itemizedlist> <indexterm><primary>horizontal scan rate</primary></indexterm> <indexterm><primary>vertical scan rate</primary></indexterm> <para>The specifications for the monitor are used by - <application>XFree86</application> to determine the resolution and - refresh rate to run at. These specifications can usually be - obtained from the documentation that came with the monitor or from - the manufacturer's website. There are two ranges of numbers that - are needed, the horizontal scan rate and the vertical synchronization - rate.</para> + <application>XFree86</application> to determine the resolution and + refresh rate to run at. These specifications can usually be + obtained from the documentation that came with the monitor or from + the manufacturer's website. There are two ranges of numbers that + are needed, the horizontal scan rate and the vertical synchronization + rate.</para> <para>The video adapter's chipset defines what driver module - <application>XFree86</application> uses to talk to the graphics - hardware. With most chipsets, this can be automatically - determined, but it is still useful to know in case the automatic - detection does not work correctly.</para> + <application>XFree86</application> uses to talk to the graphics + hardware. With most chipsets, this can be automatically + determined, but it is still useful to know in case the automatic + detection does not work correctly.</para> <para>Video memory on the graphic adapter determines the - resolution and color depth which the system can run at. This is - important to know so the user knows the limitations of the - system.</para> + resolution and color depth which the system can run at. This is + important to know so the user knows the limitations of the + system.</para> </sect2> @@ -366,47 +383,47 @@ <title>Configuring XFree86 4.X</title> <para>Configuration of <application>XFree86 4.X</application> is - a multi-step process. The first step is to build an initial - configuration file with the <option>-configure</option> option to - <application>XFree86</application>. As the super user, simply - run:</para> + a multi-step process. The first step is to build an initial + configuration file with the <option>-configure</option> option to + <application>XFree86</application>. As the super user, simply + run:</para> <screen>&prompt.root; <userinput>XFree86 -configure</userinput></screen> <para>This will generate a skeleton - <application>XFree86</application> configuration file in the - current working directory called - <filename>XF86Config.new</filename>. The - <application>XFree86</application> program will attempt to probe - the graphics hardware on the system and will write a - configuration file to load the proper drivers for the detected - hardware on the target system.</para> + <application>XFree86</application> configuration file in the + current working directory called + <filename>XF86Config.new</filename>. The + <application>XFree86</application> program will attempt to probe + the graphics hardware on the system and will 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>XFree86</application> - can work with the graphics - hardware on the target system. To perform this task, the user - needs to run:</para> + configuration to verify that <application>XFree86</application> + can work with the graphics + hardware on the target system. To perform this task, the user + needs to run:</para> <screen>&prompt.root; <userinput>XFree86 -xf86config XF86Config.new</userinput></screen> <para>If a black and grey grid and an X mouse cursor appear, - the configuration was successful. To exit the test, just press - <keycombo action="simul"> - <keycap>Ctrl</keycap> - <keycap>Alt</keycap> - <keycap>Backspace</keycap> - </keycombo> simultaneously.</para> + the configuration was successful. To exit the test, just press + <keycombo action="simul"> + <keycap>Ctrl</keycap> + <keycap>Alt</keycap> + <keycap>Backspace</keycap> + </keycombo> simultaneously.</para> <indexterm><primary>XFree86 4 Tuning</primary></indexterm> <para>Next, tune the <filename>XF86Config.new</filename> - configuration file to taste. Open the file in a text editor such - as &man.emacs.1; or &man.ee.1;. First, add the - frequencies for the target system's monitor. These are usually - expressed as a horizontal and vertical synchronization rate. These - values are added to the <filename>XF86Config.new</filename> file - under the <literal>"Monitor"</literal> section:</para> + configuration file to taste. Open the file in a text editor such + as &man.emacs.1; or &man.ee.1;. First, add the + frequencies for the target system's monitor. These are usually + expressed as a horizontal and vertical synchronization rate. These + values are added to the <filename>XF86Config.new</filename> file + under the <literal>"Monitor"</literal> section:</para> <programlisting>Section "Monitor" Identifier "Monitor0" @@ -417,32 +434,32 @@ EndSection</programlisting> <para>The <varname>HorizSync</varname> and - <varname>VertRefresh</varname> keywords may not exist in the - configuration file. If they do not, they need to be added, with - the correct horizontal synchronization rate placed after the - <varname>Horizsync</varname> keyword and the vertical - synchronization rate after the <varname>VertRefresh</varname> - keyword. In the example above the target monitor's rates were - entered.</para> + <varname>VertRefresh</varname> keywords may not exist in the + configuration file. If they do not, they need to be added, with + the correct horizontal synchronization rate placed after the + <varname>Horizsync</varname> keyword and the vertical + synchronization rate after the <varname>VertRefresh</varname> + keyword. In the example above the target monitor's rates were + entered.</para> <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> - + <programlisting> Option "DPMS"</programlisting> <indexterm> <primary><command>XF86Config</command></primary> </indexterm> - + <para>While the <filename>XF86Config.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> - + 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> + <programlisting>Section "Screen" Identifier "Screen0" Device "Card0" @@ -455,81 +472,81 @@ EndSection</programlisting> EndSection</programlisting> <para>The <varname>DefaultDepth</varname> keyword describes - the color depth to run at by default. This can be overridden - with the <command>-bpp</command> command line switch to - &man.XFree86.1;. + the color depth to run at by default. This can be overridden + with the <command>-bpp</command> command line switch to + &man.XFree86.1;. The <varname>Modes</varname> keyword - describes the resolution to run at for the given color depth. - In the example above, the default color depth is twenty-four - bits per pixel. At this color depth, the accepted resolution is - one thousand twenty-four pixels by seven hundred and sixty-eight - pixels.</para> + describes the resolution to run at for the given color depth. + In the example above, the default color depth is twenty-four + bits per pixel. At this color depth, the accepted resolution is + one thousand twenty-four pixels by seven hundred and sixty-eight + pixels.</para> <para>To run at a resolution of one thousand twenty-four pixels by - seven hundred sixty-eight pixels at twenty-four bits per pixel, - add the <varname>DefaultDepth</varname> keyword with the - value of twenty-four, and add to the <literal>"Display"</literal> - subsection with the desired <varname>Depth</varname> the <varname>Modes</varname> keyword with the - resolution the user wishes to run at. Note that only VESA - standard modes are supported as defined by the target system's - graphics hardware.</para> + seven hundred sixty-eight pixels at twenty-four bits per pixel, + add the <varname>DefaultDepth</varname> keyword with the + value of twenty-four, and add to the <literal>"Display"</literal> + subsection with the desired <varname>Depth</varname> the + <varname>Modes</varname> keyword with the resolution the user wishes to + run at. Note that only VESA standard modes are supported as defined by + the target system's graphics hardware.</para> <para>Finally, write the configuration file and test it using - the test mode given above. If all is well, the configuration - file needs to be installed in a common location where - &man.XFree86.1; + the test mode given above. If all is well, the configuration + file needs to be installed in a common location where + &man.XFree86.1; can find it. - This is typically <filename>/etc/X11/XF86Config</filename> or - <filename>/usr/X11R6/etc/X11/XF86Config</filename>.</para> + This is typically <filename>/etc/X11/XF86Config</filename> or + <filename>/usr/X11R6/etc/X11/XF86Config</filename>.</para> <screen>&prompt.root; <userinput>cp XF86Config.new /etc/X11/XF86Config</userinput></screen> <para>Once the configuration file has been placed in a common - location, configuration is complete. In order to start - <application>XFree86 4.X</application> with &man.startx.1;, - install the <filename role="package">x11/wrapper</filename> port. - <application>XFree86 4.X</application> can also be started with - &man.xdm.1;.</para> + location, configuration is complete. In order to start + <application>XFree86 4.X</application> with &man.startx.1;, + install the <filename role="package">x11/wrapper</filename> port. + <application>XFree86 4.X</application> can also be started with + &man.xdm.1;.</para> </sect2> <sect2> <title>Advanced Configuration Topics</title> - + <sect3> - <title>Configuration with Intel i810 Graphics Chipsets</title> + <title>Configuration with Intel i810 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 <application>XFree86</application> - to drive the card. To use <devicename>agpgart</devicename>, - the <filename>agp.ko</filename> kernel loadable module needs to - be loaded into the kernel with &man.kldload.8;. This can be - done automatically with the &man.loader.8; at boot time. - Simply add this line to - <filename>/boot/loader.conf</filename>:</para> + <para>Configuration with Intel i810 integrated chipsets + requires the <devicename>agpgart</devicename> + AGP programming interface for <application>XFree86</application> + to drive the card. To use <devicename>agpgart</devicename>, + the <filename>agp.ko</filename> kernel loadable module needs to + be loaded into the kernel with &man.kldload.8;. This can be + done automatically with the &man.loader.8; at boot time. + Simply add this line to + <filename>/boot/loader.conf</filename>:</para> - <programlisting>agp_load="YES"</programlisting> + <programlisting>agp_load="YES"</programlisting> - <para>Next, a device node needs to be created for the - programming interface. To create the AGP device node, run - &man.MAKEDEV.8; in the <filename>/dev</filename> - directory:</para> + <para>Next, a device node needs to be created for the + programming interface. To create the AGP device node, run + &man.MAKEDEV.8; in the <filename>/dev</filename> + directory:</para> - <screen>&prompt.root; <userinput>cd /dev</userinput> + <screen>&prompt.root; <userinput>cd /dev</userinput> &prompt.root; <userinput>sh MAKEDEV agpgart</userinput></screen> - <para>This will allow configuration of the hardware as any other - graphics board.</para> + <para>This will allow configuration of the hardware as any other + graphics board.</para> - <para>If you are using <application>XFree86 4.1.0</application> (or later) and messages - about unresolved symbols like + <para>If you are using <application>XFree86 4.1.0</application> (or + later) and messages about unresolved symbols like <literal>fbPictureInit</literal> appear, try adding the following line after <literal>Driver "i810"</literal> in the <application>XFree86</application> configuration file:</para> - <programlisting>Option "NoDDC"</programlisting> + <programlisting>Option "NoDDC"</programlisting> </sect3> </sect2> </sect1> @@ -551,50 +568,49 @@ EndSection</programlisting> <para>The default fonts that ship with <application>XFree86</application> are less than ideal for typical desktop publishing applications. Large presentation fonts show up - jagged and unprofessional looking, and small fonts in <application>Netscape</application> are - almost completely unintelligible. However, there are several - free, high quality Type1 (PostScript) fonts available which - can be readily used - with <application>XFree86</application>, either version 3.X or - version 4.X. For instance, the URW font collection + jagged and unprofessional looking, and small fonts in + <application>Netscape</application> are almost completely unintelligible. + However, there are several free, high quality Type1 (PostScript) fonts + available which can be readily used + with <application>XFree86</application>, either version 3.X or + version 4.X. For instance, the URW font collection (<filename role="package">x11-fonts/urwfonts</filename>) includes - high quality versions of standard type1 fonts (Times Roman, + high quality versions of standard type1 fonts (Times Roman, Helvetica, Palatino and others). The Freefont collection (<filename role="package">x11-fonts/freefont</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, + 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>XFree86</application> can be configured to use TrueType fonts with a minimum of effort: see the <link linkend="truetype">section on TrueType fonts</link> later.</para> <para>To install the above Type1 font collections from the ports - collection, run the following commands:</para> + collection, run the following commands:</para> - <screen>&prompt.root; <userinput>cd /usr/ports/x11-fonts/urwfonts</userinput> + <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 tell the X server - that these fonts exist, add an appropriate line to the - <filename>XF86Config</filename> file (in - <filename>/etc/</filename> for <application>XFree86</application> - version 3, or in <filename>/etc/X11/</filename> for version 4), - which reads:</para> - -<programlisting>FontPath "/usr/X11R6/lib/X11/fonts/URW/"</programlisting> + + <para>And likewise with the freefont or other collections. To tell the X + server that these fonts exist, add an appropriate line to the + <filename>XF86Config</filename> file (in <filename>/etc/</filename> for + <application>XFree86</application> version 3, or in + <filename>/etc/X11/</filename> for version 4), which reads:</para> + + <programlisting>FontPath "/usr/X11R6/lib/X11/fonts/URW/"</programlisting> <para>Alternatively, at the command line in the X session - run:</para> - -<screen>&prompt.user; <userinput>xset fp+ /usr/X11R6/lib/X11/fonts/URW</userinput> + run:</para> + + <screen>&prompt.user; <userinput>xset fp+ /usr/X11R6/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 + graphical login manager like <application>XDM</application>). + A third way is to use the new <filename>XftConfig</filename> file: see the section on <link linkend="antialias">anti-aliasing</link>. </para> @@ -617,7 +633,8 @@ EndSection</programlisting> TrueType font server is needed. <application>Xfstt</application> is commonly used for this purpose. To install <application>Xfstt</application>, - simply install the port <filename role="package">x11-servers/Xfstt</filename>.</para> + simply install the port + <filename role="package">x11-servers/Xfstt</filename>.</para> <para>Now make a directory for the TrueType fonts (for example, <filename>/usr/X11R6/lib/X11/fonts/TrueType</filename>) @@ -630,9 +647,10 @@ EndSection</programlisting> <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> + Ports Collection as + <filename role="package">x11-fonts/ttmkfdir</filename>.</para> -<screen>&prompt.root; <userinput>cd /usr/X11R6/lib/X11/fonts/TrueType</userinput> + <screen>&prompt.root; <userinput>cd /usr/X11R6/lib/X11/fonts/TrueType</userinput> &prompt.root; <userinput>ttmkfdir > fonts.dir</userinput></screen> <para>Now add the TrueType directory to the font @@ -644,15 +662,15 @@ EndSection</programlisting> <para>or add a <option>FontPath</option> line to the <filename>XF86Config</filename> file.</para> - + <para>That's it. Now <application>Netscape</application>, - <application>Gimp</application>, - <application>StarOffice</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> + <application>Gimp</application>, + <application>StarOffice</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"> @@ -664,8 +682,8 @@ EndSection</programlisting> advantage of this new functionality. However, Qt (the toolkit for the <application>KDE</application> desktop) does; so if <application>XFree86 4.0.2</application> is used - (or higher), Qt 2.3 (or higher) and <application>KDE</application>, - all KDE/Qt applications can be made to use anti-aliased + (or higher), Qt 2.3 (or higher) and <application>KDE</application>, + all KDE/Qt applications can be made to use anti-aliased fonts.</para> <para>To configure anti-aliasing, create (or edit, if @@ -677,14 +695,14 @@ EndSection</programlisting> <para>First, tell the X server about the fonts that are to be anti-aliased. For each font directory, add a line similar to this:</para> - + <programlisting>dir "/usr/X11R6/lib/X11/Type1"</programlisting> - - <para>Likewise for the other font directories (URW, TrueType, etc) + + <para>Likewise for the other font directories (URW, TrueType, etc) containing fonts to be anti-aliased. Anti-aliasing makes sense only for scalable fonts (basically, Type1 and TrueType) so do not include bitmap font directories here. The - directories included here can now be commented out + directories included here can now be commented out of the <filename>XF86Config</filename> file.</para> <para>Anti-aliasing makes borders slightly fuzzy, which makes very @@ -692,36 +710,36 @@ EndSection</programlisting> large text, but can cause eyestrain if applied to normal text. To exclude point sizes between 9 and 13 from anti-aliasing, include these lines:</para> - + <programlisting>match any size > 8 any size < 14 edit antialias = false;</programlisting> - + <para>Spacing for some monospaced fonts may also be inappropriate with anti-aliasing. This seems to be an issue with <application>KDE</application>, in particular. One possible fix for this is to force the spacing for such fonts to be 100. Add the following lines:</para> - + <programlisting>match any family == "fixed" edit family =+ "mono"; match any family == "console" edit family =+ "mono";</programlisting> - - <para>(this aliases the other common names for fixed fonts as <literal>"mono"</literal>), - and then add:</para> - + + <para>(this aliases the other common names for fixed fonts as + <literal>"mono"</literal>), and then add:</para> + <programlisting>match any family == "mono" edit spacing = 100;</programlisting> - + <para>Supposing the - <literal>Lucidux</literal> fonts as desired whenever - monospaced fonts are required (these look nice, and do not seem - to suffer from the spacing problem), replace that last - line with these:</para> + <literal>Lucidux</literal> fonts as desired whenever + monospaced fonts are required (these look nice, and do not seem + to suffer from the spacing problem), replace that last + line with these:</para> <programlisting>match any family == "mono" edit family += "LuciduxMono"; match any family == "Lucidux Mono" edit family += "LuciduxMono"; -match any family == "LuciduxMono" edit family =+ "Lucidux Mono";</programlisting> +match any family == "LuciduxMono" edit family =+ "Lucidux Mono";</programlisting> <para>(the last lines alias different equivalent family names).</para> @@ -732,34 +750,34 @@ match any family == "LuciduxMono" edit family =+ "Lucidux Mono";</programl <programlisting>includeif "~/.xftconfig"</programlisting> <para>One last point: with an LCD screen, sub-pixel sampling may be - desired. This basically treats the (horizontally separated) - red, green and blue components separately to improve the horizontal - resolution; the results can be dramatic. To enable this, add the - line somewhere in the <filename>XftConfig</filename> file</para> - + desired. This basically treats the (horizontally separated) + red, green and blue components separately to improve the horizontal + resolution; the results can be dramatic. To enable this, add the + line somewhere in the <filename>XftConfig</filename> file</para> + <programlisting>match edit rgba=rgb;</programlisting> - + <para>(depending on the sort of display, the last word may need to - be changed from <quote>rgb</quote> to <quote>bgr</quote>, <quote>vrgb</quote> - or <quote>vbgr</quote>: experiment and see which works best.)</para> + be changed from <quote>rgb</quote> to <quote>bgr</quote>, + <quote>vrgb</quote> or <quote>vbgr</quote>: experiment and see which + works best.)</para> - <para>Anti-aliasing should be enabled the next time the X server is - started. However, note that programs must know how to take - advantage of it. At the present time, the toolkit - Qt does, so the entire <application>KDE</application> environment - can use anti-aliased fonts - (see <xref linkend="x11-wm-kde-antialias"> on - <application>KDE</application> for - details); there are patches for GTK+ to do the same, + started. However, note that programs must know how to take + advantage of it. At the present time, the toolkit + Qt does, so the entire <application>KDE</application> environment + can use anti-aliased fonts + (see <xref linkend="x11-wm-kde-antialias"> on + <application>KDE</application> for + details); there are patches for GTK+ to do the same, so if compiled against such a patched GTK+, the GNOME environment and Mozilla can also use anti-aliased fonts. In fact, there - is now a port called <filename role="package">x11/gdkxft</filename> which allows one - to use antialiased fonts without recompiling: see - <xref linkend="x11-wm-gnome-antialias"> for details.</para> + is now a port called <filename role="package">x11/gdkxft</filename> + which allows one to use antialiased fonts without recompiling: see + <xref linkend="x11-wm-gnome-antialias"> for details.</para> - <para>Anti-aliasing is still new to FreeBSD and - <application>XFree86</application>; + <para>Anti-aliasing is still new to FreeBSD and + <application>XFree86</application>; configuring it should get easier with time, and it will soon be supported by many more applications.</para> </sect2> @@ -768,232 +786,233 @@ match any family == "LuciduxMono" edit family =+ "Lucidux Mono";</programl <sect1 id="x-xdm"> <sect1info> <authorgroup> - <author> - <firstname>Seth</firstname> - <surname>Kingsley</surname> - <contrib>Contributed by </contrib> - </author> + <author> + <firstname>Seth</firstname> + <surname>Kingsley</surname> + <contrib>Contributed by </contrib> + </author> </authorgroup> </sect1info> <title>The X Display Manager</title> <sect2> <title>Overview</title> <para>The X Display Manager (<application>XDM</application>) is - an optional part of the X Window System that is used for login - session management. This is useful for several types of - situations, including minimal <quote>X Terminals</quote>, - desktops, and large network display - servers. Since the X Window System is network and protocol - independent, there are a wide variety of possible configurations - for running X clients and servers on different machines - connected by a network. <application>XDM</application> provides - a graphical interface for choosing which display server to - connect to, and entering authorization information such as a - login and password combination.</para> - + an optional part of the X Window System that is used for login + session management. This is useful for several types of + situations, including minimal <quote>X Terminals</quote>, + desktops, and large network display + servers. Since the X Window System is network and protocol + independent, there are a wide variety of possible configurations + for running X clients and servers on different machines + connected by a network. <application>XDM</application> provides + a graphical interface for choosing which display server to + connect to, and entering authorization information such as a + login and password combination.</para> + <para>Think of <application>XDM</application> as - providing the same functionality to the user as the - &man.getty.8; utility (see <xref linkend="term-config"> for - details). That is, it performs system logins to the display - being connected to and then runs a session manager on behalf of - the user (usually an X window - manager). <application>XDM</application> then waits for this - program to exit, signaling that the user is done and should be - logged out of the display. At this point, - <application>XDM</application> can display the login and display - chooser screens for the next user to login.</para> + providing the same functionality to the user as the + &man.getty.8; utility (see <xref linkend="term-config"> for + details). That is, it performs system logins to the display + being connected to and then runs a session manager on behalf of + the user (usually an X window + manager). <application>XDM</application> then waits for this + program to exit, signaling that the user is done and should be + logged out of the display. At this point, + <application>XDM</application> can display the login and display + chooser screens for the next user to login.</para> </sect2> <sect2> <title>Using XDM</title> <para>The <application>XDM</application> daemon program is - located in <filename>/usr/X11R6/bin/xdm</filename>. This program - can be run at any time as <username>root</username> and it will - start managing the X display on the local machine. If - <application>XDM</application> is to be run every - time the machine boots up, a convenient way to do this is by - adding an entry to <filename>/etc/ttys</filename>. For more - information about the format and usage of this file, see <xref - linkend="term-etcttys">. There is a line in the default - <filename>/etc/ttys</filename> file for running the - <application>XDM</application> daemon on a virtual terminal:</para> - -<screen>ttyv8 "/usr/X11R6/bin/xdm -nodaemon" xterm off secure</screen> + located in <filename>/usr/X11R6/bin/xdm</filename>. This program + can be run at any time as <username>root</username> and it will + start managing the X display on the local machine. If + <application>XDM</application> is to be run every + time the machine boots up, a convenient way to do this is by + adding an entry to <filename>/etc/ttys</filename>. For more + information about the format and usage of this file, see <xref + linkend="term-etcttys">. There is a line in the default + <filename>/etc/ttys</filename> file for running the + <application>XDM</application> daemon on a virtual terminal:</para> + + <screen>ttyv8 "/usr/X11R6/bin/xdm -nodaemon" xterm off secure</screen> <para>By default this entry is disabled; in order to enable it - change field 5 from <literal>off</literal> to - <literal>on</literal> and restart &man.init.8; using the - directions in <xref linkend="term-hup">. The first field, the - name of the terminal this program will manage, is - <literal>ttyv8</literal>. This means that - <application>XDM</application> will start running on the 9th - virtual terminal.</para> + change field 5 from <literal>off</literal> to + <literal>on</literal> and restart &man.init.8; using the + directions in <xref linkend="term-hup">. The first field, the + name of the terminal this program will manage, is + <literal>ttyv8</literal>. This means that + <application>XDM</application> will start running on the 9th + virtual terminal.</para> </sect2> <sect2> <title>Configuring XDM</title> <para>The <application>XDM</application> configuration directory - is located in <filename>/usr/X11R6/lib/X11/xdm</filename>. In - this directory there are several files used to change the - behavior and appearance of - <application>XDM</application>. Typically these files will - be found:</para> - - <informaltable frame="none"> - <tgroup cols="2"> - <thead> - <row> - <entry>File</entry> - <entry>Description</entry> - </row> - </thead> - - <tbody> - <row> - <entry><filename>Xaccess</filename></entry> - <entry>Client authorization ruleset.</entry> - </row> - - <row> - <entry><filename>Xresources</filename></entry> - <entry>Default X resource values.</entry> - </row> - - <row> - <entry><filename>Xservers</filename></entry> - <entry>List of remote and local displays to manage.</entry> - </row> - - <row> - <entry><filename>Xsession</filename></entry> - <entry>Default session script for logins.</entry> - </row> - - <row> - <entry><filename>Xsetup_</filename>*</entry> - <entry>Script to launch applications before the login - interface.</entry> - </row> - - <row> - <entry><filename>xdm-config</filename></entry> - <entry>Global configuration for all displays running on - this machine.</entry> - </row> - - <row> - <entry><filename>xdm-errors</filename></entry> - <entry>Errors generated by the server program.</entry> - </row> - - <row> - <entry><filename>xdm-pid</filename></entry> - <entry>The process ID of the currently running XDM.</entry> - </row> - </tbody> - </tgroup> - </informaltable> + is located in <filename>/usr/X11R6/lib/X11/xdm</filename>. In + this directory there are several files used to change the + behavior and appearance of + <application>XDM</application>. Typically these files will + be found:</para> + + <informaltable frame="none"> + <tgroup cols="2"> + <thead> + <row> + <entry>File</entry> + <entry>Description</entry> + </row> + </thead> + + <tbody> + <row> + <entry><filename>Xaccess</filename></entry> + <entry>Client authorization ruleset.</entry> + </row> + + <row> + <entry><filename>Xresources</filename></entry> + <entry>Default X resource values.</entry> + </row> + + <row> + <entry><filename>Xservers</filename></entry> + <entry>List of remote and local displays to manage.</entry> + </row> + + <row> + <entry><filename>Xsession</filename></entry> + <entry>Default session script for logins.</entry> + </row> + + <row> + <entry><filename>Xsetup_</filename>*</entry> + <entry>Script to launch applications before the login + interface.</entry> + </row> + + <row> + <entry><filename>xdm-config</filename></entry> + <entry>Global configuration for all displays running on + this machine.</entry> + </row> + + <row> + <entry><filename>xdm-errors</filename></entry> + <entry>Errors generated by the server program.</entry> + </row> + + <row> + <entry><filename>xdm-pid</filename></entry> + <entry>The process ID of the currently running XDM.</entry> + </row> + </tbody> + </tgroup> + </informaltable> <para>Also in this directory are a few scripts and programs used - to setup the desktop when <application>XDM</application> is - running. The purpose of each of these files will be briefly - described. The exact syntax and usage of all of these files is - described in &man.xdm.1;.</para> + to setup the desktop when <application>XDM</application> is + running. The purpose of each of these files will be briefly + described. The exact syntax and usage of all of these files is + described in &man.xdm.1;.</para> <para>The default configuration is a simple rectangular login - window with the hostname of the machine displayed at the top in - a large font and <quote>Login:</quote> and - <quote>Password:</quote> prompts below. This is a good starting - point for changing the look and feel of - <application>XDM</application> screens.</para> + window with the hostname of the machine displayed at the top in + a large font and <quote>Login:</quote> and + <quote>Password:</quote> prompts below. This is a good starting + point for changing the look and feel of + <application>XDM</application> screens.</para> <sect3> - <title>Xaccess</title> - - <para>The protocol for connecting to - <application>XDM</application> controlled displays is called - the X Display Manager Connection Protocol (XDMCP). This file - is a ruleset for controlling XDMCP connections from remote - machines. By default, it allows any client to connect, but - that does not matter unless the <filename>xdm-config</filename> - is changed to listen for remote connections.</para> + <title>Xaccess</title> + + <para>The protocol for connecting to + <application>XDM</application> controlled displays is called + the X Display Manager Connection Protocol (XDMCP). This file + is a ruleset for controlling XDMCP connections from remote + machines. By default, it allows any client to connect, but + that does not matter unless the <filename>xdm-config</filename> + is changed to listen for remote connections.</para> </sect3> <sect3> - <title>Xresources</title> - <para>This is an application-defaults file for the display - chooser and the login screens. This is where the appearance - of the login program can be modified. The format is identical - to the app-defaults file described in the - <application>XFree86</application> documentation.</para> + <title>Xresources</title> + <para>This is an application-defaults file for the display + chooser and the login screens. This is where the appearance + of the login program can be modified. The format is identical + to the app-defaults file described in the + <application>XFree86</application> documentation.</para> </sect3> <sect3> - <title>Xservers</title> - <para>This is a list of the remote displays the chooser should - provide as choices.</para> + <title>Xservers</title> + <para>This is a list of the remote displays the chooser should + provide as choices.</para> </sect3> <sect3> - <title>Xsession</title> - <para>This is the default session script for - <application>XDM</application> to run after a user has logged - in. Normally each user will have a customized session script - in <filename>~/.xsessionrc</filename> that overrides this - script.</para> + <title>Xsession</title> + <para>This is the default session script for + <application>XDM</application> to run after a user has logged + in. Normally each user will have a customized session script + in <filename>~/.xsessionrc</filename> that overrides this + script.</para> </sect3> <sect3> - <title>Xsetup_*</title> - <para>These will be run automatically before displaying the - chooser or login interfaces. There is a script for each - display being used, named <filename>Xsetup_</filename> followed - by the local display number (for instance - <filename>Xsetup_0</filename>). Typically these scripts will - run one or two programs in the background such as - <command>xconsole</command>.</para> + <title>Xsetup_*</title> + <para>These will be run automatically before displaying the + chooser or login interfaces. There is a script for each + display being used, named <filename>Xsetup_</filename> followed + by the local display number (for instance + <filename>Xsetup_0</filename>). Typically these scripts will + run one or two programs in the background such as + <command>xconsole</command>.</para> </sect3> <sect3> - <title>xdm-config</title> - <para>This contains settings in the form of app-defaults - that are applicable to every display that this installation - manages.</para> + <title>xdm-config</title> + <para>This contains settings in the form of app-defaults + that are applicable to every display that this installation + manages.</para> </sect3> <sect3> - <title>xdm-errors</title> - <para>This contains the output of the X servers that - <application>XDM</application> is trying to run. If a display - that <application>XDM</application> is trying to start hangs - for some reason, this is a good place to look for error - messages. These messages are also written to the user's - <filename>~/.xsession-errors</filename> file on a per-session - basis.</para> + <title>xdm-errors</title> + <para>This contains the output of the X servers that + <application>XDM</application> is trying to run. If a display + that <application>XDM</application> is trying to start hangs + for some reason, this is a good place to look for error + messages. These messages are also written to the user's + <filename>~/.xsession-errors</filename> file on a per-session + basis.</para> </sect3> </sect2> <sect2> <title>Running a Network Display Server</title> + <para>In order for other clients to connect to the display - server, edit the access control rules, and enable the connection - listener. By default these are set to conservative values. - To make <application>XDM</application> listen for connections, - first comment out a line in the <filename>xdm-config</filename> - file:</para> + server, edit the access control rules, and enable the connection + listener. By default these are set to conservative values. + To make <application>XDM</application> listen for connections, + first comment out a line in the <filename>xdm-config</filename> + file:</para> -<screen>! SECURITY: do not listen for XDMCP or Chooser requests + <screen>! SECURITY: do not listen for XDMCP or Chooser requests ! Comment out this line if you want to manage X terminals with xdm DisplayManager.requestPort: 0</screen> <para>and then restart <application>XDM</application>. Remember that - comments in app-defaults files begin with a <quote>!</quote> - character, not the usual <quote>#</quote>. More strict - access controls may be desired. Look at the example - entries in <filename>Xaccess</filename>, and refer to the - &man.xdm.1; manual page.</para> + comments in app-defaults files begin with a <quote>!</quote> + character, not the usual <quote>#</quote>. More strict + access controls may be desired. Look at the example + entries in <filename>Xaccess</filename>, and refer to the + &man.xdm.1; manual page.</para> </sect2> <sect2> @@ -1013,12 +1032,12 @@ DisplayManager.requestPort: 0</screen> <sect1 id="x11-wm"> <sect1info> <authorgroup> - <author> - <firstname>Valentino</firstname> - <surname>Vaschetto</surname> - <contrib>Contributed by </contrib> - </author> - <!-- June 2001 --> + <author> + <firstname>Valentino</firstname> + <surname>Vaschetto</surname> + <contrib>Contributed by </contrib> + </author> + <!-- June 2001 --> </authorgroup> </sect1info> @@ -1027,7 +1046,7 @@ DisplayManager.requestPort: 0</screen> <para>This section describes the different desktop environments available for X on FreeBSD. A <quote>desktop environment</quote> can mean anything ranging from a simple window manager to a - complete suite of desktop applications, such as + complete suite of desktop applications, such as <application>KDE</application> or <application>GNOME</application>. </para> @@ -1038,62 +1057,63 @@ DisplayManager.requestPort: 0</screen> <title>About GNOME</title> <para><application>GNOME</application> is a user-friendly - desktop environment that enables users to easily use and - configure their computers. <application>GNOME</application> - includes a panel (for starting applications and displaying - status), a desktop (where data and applications can be - placed), a set of standard desktop tools and applications, and - a set of conventions that make it easy for applications to - cooperate and be consistent with each other. Users of other - operating systems or environments should feel right at home - using the powerful graphics-driven environment that - <application>GNOME</application> provides.</para> + desktop environment that enables users to easily use and + configure their computers. <application>GNOME</application> + includes a panel (for starting applications and displaying + status), a desktop (where data and applications can be + placed), a set of standard desktop tools and applications, and + a set of conventions that make it easy for applications to + cooperate and be consistent with each other. Users of other + operating systems or environments should feel right at home + using the powerful graphics-driven environment that + <application>GNOME</application> provides.</para> </sect3> <sect3 id="x11-wm-gnome-install"> <title>Installing GNOME</title> - <para>The easiest way to install + <para>The easiest way to install <application>GNOME</application> is through the <quote>Desktop Configuration</quote> menu during the FreeBSD - installation process as described in <xref linkend="default-desktop"> of Chapter 2. It can also - be easily installed from a package or the ports - collection:</para> + installation process as described in <xref + linkend="default-desktop"> of Chapter 2. It can also + be easily installed from a package or the ports + collection:</para> <para>To install the <application>GNOME</application> package - from the network, simply type:</para> + from the network, simply type:</para> <screen>&prompt.root; <userinput>pkg_add -r gnome</userinput></screen> <para>To build <application>GNOME</application> from source, use - the ports tree:</para> + the ports tree:</para> <screen>&prompt.root; <userinput>cd /usr/ports/x11/gnome</userinput> &prompt.root; <userinput>make install clean</userinput></screen> <para>Once <application>GNOME</application> is installed, - the X server must be told to start - <application>GNOME</application> instead of a default window - manager. If a custom <filename>.xinitrc</filename> is already in - place, simply replace the line that starts the current window - manager with one that starts - <application>/usr/X11R6/bin/gnome-session</application> instead. - If nothing special has been done to configuration file, - then it is enough to simply type:</para> + the X server must be told to start + <application>GNOME</application> instead of a default window + manager. If a custom <filename>.xinitrc</filename> is already in + place, simply replace the line that starts the current window + manager with one that starts + <application>/usr/X11R6/bin/gnome-session</application> instead. + If nothing special has been done to configuration file, + then it is enough to simply type:</para> <screen>&prompt.user; <userinput>echo "/usr/X11R6/bin/gnome-session" > ~/.xinitrc</userinput></screen> <para>Next, type <command>startx</command>, and the <application>GNOME</application> desktop environment will be - started.</para> + started.</para> <note><para>If a display manager, like - <application>XDM</application>, is being used, this will not work. - Instead, create an executable <filename>.xsession</filename> - file with the same command in it. To do this, edit the file - and replace the existing window manager command with - <application>/usr/X11R6/bin/gnome-session</application>: - </para></note> + <application>XDM</application>, is being used, this will not work. + Instead, create an executable <filename>.xsession</filename> + file with the same command in it. To do this, edit the file + and replace the existing window manager command with + <application>/usr/X11R6/bin/gnome-session</application>: + </para></note> <screen>&prompt.user; <userinput>echo "#!/bin/sh" > ~/.xsession</userinput> &prompt.user; <userinput>echo "/usr/X11R6/bin/gnome-session" >> ~/.xsession</userinput> @@ -1109,50 +1129,47 @@ DisplayManager.requestPort: 0</screen> <sect3 id="x11-wm-gnome-antialias"> <title>Anti-aliased fonts with GNOME</title> - <para>While anti-aliased fonts made their first appearance on - <application>XFree86</application> desktops in the <application>KDE</application> environment and are supported - there in the standard installation, it is also possible to - use them with GTK applications such as the <application>GNOME</application> + <para>While anti-aliased fonts made their first appearance on + <application>XFree86</application> desktops in the + <application>KDE</application> environment and are supported there + in the standard installation, it is also possible to use them with + GTK applications such as the <application>GNOME</application> environment. The most straightforward way is probably by - using the <application>libgdkxft</application> library, in - the <filename role="package">x11/gdkxft</filename> port. After installing this - port, read the - <filename>/usr/X11R6/share/doc/gdkxft/README</filename> file - carefully.</para> - - <para>Then, all that is needed is to tell GTK - applications to look for their font-rendering functions in - <filename>libgdkxft.so</filename> before looking in the - standard place, <filename>libgdk.so</filename>. This is - easily accomplished by setting an environment variable to - point to the right place; with the Bourne shell - (<application>/bin/sh</application>) or similar shells, type - the command (to start <application>The Gimp</application>, - say)</para> - -<screen>&prompt.user; <userinput>LD_PRELOAD=/usr/X11R6/lib/libgdkxft.so gimp</userinput></screen> - - <para>and with csh and similar shells, type</para> - -<screen> -&prompt.user; <userinput>setenv LD_PRELOAD /usr/X11R6/lib/libgdkxft.so</userinput> -&prompt.user; <userinput>gimp</userinput> -</screen> - - <para>Or, the commands</para> - -<programlisting> -LD_PRELOAD=/usr/X11R6/lib/libgdkxft.so -export LD_PRELOAD -</programlisting> - - <para>can be put into <filename>.xinitrc</filename>, - <filename>.xsession</filename> or in the appropriate - place(s) in - <filename>/usr/X11R6/lib/X11/xdm/Xsession</filename>, - depending on how X is normally started. However, this - short-cut may cause problems if Linux GTK binaries are - run.</para> + using the <application>libgdkxft</application> library, in + the <filename role="package">x11/gdkxft</filename> port. After + installing this port, read the + <filename>/usr/X11R6/share/doc/gdkxft/README</filename> file + carefully.</para> + + <para>Then, all that is needed is to tell GTK + applications to look for their font-rendering functions in + <filename>libgdkxft.so</filename> before looking in the + standard place, <filename>libgdk.so</filename>. This is + easily accomplished by setting an environment variable to + point to the right place; with the Bourne shell + (<application>/bin/sh</application>) or similar shells, type + the command (to start <application>The Gimp</application>, + say)</para> + + <screen>&prompt.user; <userinput>LD_PRELOAD=/usr/X11R6/lib/libgdkxft.so gimp</userinput></screen> + + <para>and with csh and similar shells, type</para> + + <screen>&prompt.user; <userinput>setenv LD_PRELOAD /usr/X11R6/lib/libgdkxft.so</userinput> +&prompt.user; <userinput>gimp</userinput></screen> + + <para>Or, the commands</para> + + <programlisting>LD_PRELOAD=/usr/X11R6/lib/libgdkxft.so +export LD_PRELOAD</programlisting> + + <para>can be put into <filename>.xinitrc</filename>, + <filename>.xsession</filename> or in the appropriate + place(s) in + <filename>/usr/X11R6/lib/X11/xdm/Xsession</filename>, + depending on how X is normally started. However, this + short-cut may cause problems if Linux GTK binaries are + run.</para> </sect3> </sect2> @@ -1163,77 +1180,103 @@ export LD_PRELOAD <title>About KDE</title> <para><application>KDE</application> is an easy to use - contemporary desktop environment. Some of the things that - <application>KDE</application> brings to the user are:</para> - + contemporary desktop environment. Some of the things that + <application>KDE</application> brings to the user are:</para> + <itemizedlist> - <listitem><para>A beautiful contemporary desktop</para></listitem> - <listitem><para>A desktop exhibiting complete network transparency</para></listitem> - <listitem><para>An integrated help system allowing for convenient, - consistent access to help on the use of the + <listitem> + <para>A beautiful contemporary desktop</para> + </listitem> + + <listitem> + <para>A desktop exhibiting complete network transparency</para> + </listitem> + + <listitem> + <para>An integrated help system allowing for convenient, + consistent access to help on the use of the <application>KDE</application> desktop and its - applications</para></listitem> - <listitem><para>Consistent look and feel of all - <application>KDE</application> applications</para></listitem> - <listitem><para>Standardized menu and toolbars, keybindings, color-schemes, etc.</para></listitem> - <listitem><para>Internationalization: <application>KDE</application> - is available in more than 40 languages</para></listitem> - <listitem><para>Centralized consisted dialog driven desktop configuration</para></listitem> - <listitem><para>A great number of useful - <application>KDE</application> applications</para></listitem> + applications</para> + </listitem> + + <listitem> + <para>Consistent look and feel of all + <application>KDE</application> applications</para> + </listitem> + + <listitem> + <para>Standardized menu and toolbars, keybindings, color-schemes, + etc.</para> + </listitem> + + <listitem> + <para>Internationalization: <application>KDE</application> + is available in more than 40 languages</para> + </listitem> + + <listitem> + <para>Centralized consisted dialog driven desktop + configuration</para> + </listitem> + + <listitem> + <para>A great number of useful + <application>KDE</application> applications</para> + </listitem> </itemizedlist> <para><application>KDE</application> has an office application - suite based on <application>KDE</application>'s - <quote>KParts</quote> technology consisting - of a spread-sheet, a presentation application, an organizer, a - news client and more. <application>KDE</application> also - comes with a web browser called - <application>Konqueror</application>, which represents - a solid competitor to other existing web browsers on Unix - systems. More information on <application>KDE</application> - can be found on the <ulink url="http://www.kde.org/">KDE + suite based on <application>KDE</application>'s + <quote>KParts</quote> technology consisting + of a spread-sheet, a presentation application, an organizer, a + news client and more. <application>KDE</application> also + comes with a web browser called + <application>Konqueror</application>, which represents + a solid competitor to other existing web browsers on Unix + systems. More information on <application>KDE</application> + can be found on the <ulink url="http://www.kde.org/">KDE website.</ulink></para> </sect3> <sect3 id="x11-wm-kde-install"> <title>Installing KDE</title> - - <para>Just as with <application>GNOME</application> or any + + <para>Just as with <application>GNOME</application> or any other desktop environment, the easiest way to install <application>KDE</application> is through the <quote>Desktop Configuration</quote> menu during the FreeBSD installation - process as described in <xref linkend="default-desktop"> of Chapter 2. Once again, the software - can be easily installed from a package or from the ports - collection:</para> + process as described in <xref linkend="default-desktop"> of Chapter + 2. Once again, the software can be easily installed from a package + or from the ports collection:</para> <para>To install the <application>KDE</application> package - from the network, simply type:</para> + from the network, simply type:</para> <screen>&prompt.root; <userinput>pkg_add -r kde3</userinput></screen> <para>To build <application>KDE</application> from source, - use the ports tree:</para> + use the ports tree:</para> <screen>&prompt.root; <userinput>cd /usr/ports/x11/kde3</userinput> &prompt.root; <userinput>make install clean</userinput></screen> <para>After <application>KDE</application> has been installed, - the X server must be told to launch this application + the X server must be told to launch this application instead of the default window manager. This is accomplished by editing the <filename>.xinitrc</filename> file:</para> <screen>&prompt.user; <userinput>echo "exec startkde" > ~/.xinitrc</userinput></screen> - <para>Now, whenever the X Window System is invoked with <command>startx</command>, - <application>KDE</application> will be the desktop.</para> + <para>Now, whenever the X Window System is invoked with + <command>startx</command>, + <application>KDE</application> will be the desktop.</para> - <para>If a display manager such as - <application>xdm</application> is being used, the - configuration is slightly different. Edit the - <filename>.xsession</filename> file instead. Instructions - for <application>kdm</application> are described later in - this chapter.</para> + <para>If a display manager such as + <application>xdm</application> is being used, the + configuration is slightly different. Edit the + <filename>.xsession</filename> file instead. Instructions + for <application>kdm</application> are described later in + this chapter.</para> </sect3> </sect2> @@ -1244,7 +1287,7 @@ export LD_PRELOAD the system, most things can be discovered through the help pages, or just by pointing and clicking at various menus. Windows or Mac users will feel quite at home.</para> - + <para>The best reference for <application>KDE</application> is the on-line documentation. <application>KDE</application> comes with its own web browser, @@ -1257,63 +1300,64 @@ export LD_PRELOAD <title>The KDE display manager</title> <para>An administrator of a multi-user system may wish to have - a graphical login screen to welcome users. - <link linkend="x-xdm"><filename>xdm</filename></link> can be - used, as described earlier. However, - <application>KDE</application> includes an - alternative, <application>kdm</application>, which is designed - to look more attractive and include more login-time options. - In particular, users can easily choose (via a menu) which - desktop environment (<application>KDE</application>, - <application>GNOME</application>, or something else) to run + a graphical login screen to welcome users. + <link linkend="x-xdm"><filename>xdm</filename></link> can be + used, as described earlier. However, + <application>KDE</application> includes an + alternative, <application>kdm</application>, which is designed + to look more attractive and include more login-time options. + In particular, users can easily choose (via a menu) which + desktop environment (<application>KDE</application>, + <application>GNOME</application>, or something else) to run after logging on.</para> - <para>To begin with, run the <application>KDE</application> - control panel, <command>kcontrol</command>, as - <username>root</username>. It is generally considered - unsafe to run the entire X environment as - <username>root</username>. Instead, run the window manager - as a normal user, open a terminal window (such as - <filename>xterm</filename> or <application>KDE</application>'s - <filename>konsole</filename>), become <username>root</username> - with <userinput>su</userinput> (the user must be in the - <groupname>wheel</groupname> - group in <filename>/etc/group</filename> for this), and then - type <userinput>kcontrol</userinput>.</para> - - <para> Click on the icon on the left marked <guibutton>System</guibutton>, then on - <guibutton>Login manager</guibutton>. On the right there are - various configurable options, which the - <application>KDE</application> manual will explain in greater - detail. Click on <guibutton>sessions</guibutton> on the right. - Click <guibutton>New type</guibutton> to add various window - managers and desktop environments. These are just labels, - so they can say <application>KDE</application> and - <application>GNOME</application> rather than - <application>startkde</application> or - <application>gnome-session</application>. - Include a label <literal>failsafe</literal>.</para> - - <para> Play with the other menus as well, they are mainly + <para>To begin with, run the <application>KDE</application> + control panel, <command>kcontrol</command>, as + <username>root</username>. It is generally considered + unsafe to run the entire X environment as + <username>root</username>. Instead, run the window manager + as a normal user, open a terminal window (such as + <filename>xterm</filename> or <application>KDE</application>'s + <filename>konsole</filename>), become <username>root</username> + with <userinput>su</userinput> (the user must be in the + <groupname>wheel</groupname> + group in <filename>/etc/group</filename> for this), and then + type <userinput>kcontrol</userinput>.</para> + + <para>Click on the icon on the left marked + <guibutton>System</guibutton>, then on <guibutton>Login + manager</guibutton>. On the right there are + various configurable options, which the + <application>KDE</application> manual will explain in greater + detail. Click on <guibutton>sessions</guibutton> on the right. + Click <guibutton>New type</guibutton> to add various window + managers and desktop environments. These are just labels, + so they can say <application>KDE</application> and + <application>GNOME</application> rather than + <application>startkde</application> or + <application>gnome-session</application>. + Include a label <literal>failsafe</literal>.</para> + + <para>Play with the other menus as well, they are mainly cosmetic and self-explanatory. When you are done, click on <guibutton>Apply</guibutton> at the bottom, and quit the - control center.</para> - - <para> To make sure <application>kdm</application> understands - what the labels (<application>KDE</application>, - <application>GNOME</application> etc) mean, edit the files used - by <link linkend="x-xdm">xdm</link>. - <note><para>In <application>KDE 2.2</application> this has - changed: <application>kdm</application> now uses its own - configuration files. Please see the <application>KDE - 2.2</application> documentation for details.</para> - </note> - In a terminal window, as <username>root</username>, - edit the file - <filename>/usr/X11R6/lib/X11/xdm/Xsession</filename>. There is - a section in the middle like this:</para> - -<screen>case $# in + control center.</para> + + <para>To make sure <application>kdm</application> understands + what the labels (<application>KDE</application>, + <application>GNOME</application> etc) mean, edit the files used + by <link linkend="x-xdm">xdm</link>. + <note><para>In <application>KDE 2.2</application> this has + changed: <application>kdm</application> now uses its own + configuration files. Please see the <application>KDE + 2.2</application> documentation for details.</para> + </note> + In a terminal window, as <username>root</username>, + edit the file + <filename>/usr/X11R6/lib/X11/xdm/Xsession</filename>. There is + a section in the middle like this:</para> + + <screen>case $# in 1) case $1 in failsafe) @@ -1321,11 +1365,13 @@ export LD_PRELOAD ;; esac esac</screen> + <para>A few lines need to be added to this section. - Assuming the labels from used were <quote>KDE</quote> and - <quote>GNOME</quote>, - use the following:</para> -<screen>case $# in + Assuming the labels from used were <quote>KDE</quote> and + <quote>GNOME</quote>, + use the following:</para> + + <screen>case $# in 1) case $1 in kde) @@ -1341,36 +1387,39 @@ esac</screen> esac</screen> <para>For the <application>KDE</application> - login-time desktop background to be honored, - the following line needs to be added to - <filename>/usr/X11R6/lib/X11/xdm/Xsetup_0</filename>:</para> + login-time desktop background to be honored, + the following line needs to be added to + <filename>/usr/X11R6/lib/X11/xdm/Xsetup_0</filename>:</para> + <screen>/usr/local/bin/kdmdesktop</screen> - + <para>Now, make sure <application>kdm</application> is listed in - <filename>/etc/ttys</filename> to be started at the next bootup. - To do this, simply follow the instructions from the previous - section on <link linkend="x-xdm">xdm</link> and replace - references to the <command>/usr/X11R6/bin/xdm</command> - program with <command>/usr/local/bin/kdm</command>.</para> + <filename>/etc/ttys</filename> to be started at the next bootup. + To do this, simply follow the instructions from the previous + section on <link linkend="x-xdm">xdm</link> and replace + references to the <command>/usr/X11R6/bin/xdm</command> + program with <command>/usr/local/bin/kdm</command>.</para> </sect3> <sect3 id="x11-wm-kde-antialias"> <title>Anti-aliased Fonts</title> <para>Starting with version 4.0.2, - <application>XFree86</application> supports anti-aliasing via - its <quote>RENDER</quote> extension, and starting with version 2.3, Qt (the - toolkit used by <application>KDE</application>) supports this - extension. Configuring this is described in <xref - linkend="antialias"> on antialiasing X11 fonts. So, with - up-to-date software, anti-aliasing is possible on a - <application>KDE</application> desktop. Just go to the KDE - menu, go to <guimenuitem>Preferences</guimenuitem> -> <guimenuitem>Look and Feel</guimenuitem> -> <guimenuitem>Fonts</guimenuitem>, and click - on the check box - <guibutton>Use Anti-Aliasing for Fonts and Icons</guibutton>. - For a Qt application which is not part of - <application>KDE</application>, the environment variable <varname>QT_XFT</varname> - needs to be set to <literal>true</literal> before starting the program.</para> + <application>XFree86</application> supports anti-aliasing via + its <quote>RENDER</quote> extension, and starting with version 2.3, + Qt (the toolkit used by <application>KDE</application>) supports + this extension. Configuring this is described in <xref + linkend="antialias"> on antialiasing X11 fonts. So, with + up-to-date software, anti-aliasing is possible on a + <application>KDE</application> desktop. Just go to the KDE + menu, go to <guimenuitem>Preferences</guimenuitem> -> + <guimenuitem>Look and Feel</guimenuitem> -> + <guimenuitem>Fonts</guimenuitem>, and click on the check box + <guibutton>Use Anti-Aliasing for Fonts and Icons</guibutton>. + For a Qt application which is not part of + <application>KDE</application>, the environment variable + <varname>QT_XFT</varname> needs to be set to <literal>true</literal> + before starting the program.</para> </sect3> </sect2> @@ -1380,55 +1429,74 @@ esac</screen> <sect3 id="x11-wm-xfce-about"> <title>About XFce</title> - <para><application>XFce</application> is a desktop environment - based on the GTK - toolkit used by <application>GNOME</application>, but is much - more lightweight and meant for those who want a simple, - efficient desktop which is nevertheless easy to use and - configure. Visually, it looks very much like - <application>CDE</application>, found on commercial Unix - systems. Some of <application>XFce</application>'s features - are:</para> + <para><application>XFce</application> is a desktop environment + based on the GTK + toolkit used by <application>GNOME</application>, but is much + more lightweight and meant for those who want a simple, + efficient desktop which is nevertheless easy to use and + configure. Visually, it looks very much like + <application>CDE</application>, found on commercial Unix + systems. Some of <application>XFce</application>'s features + are:</para> <itemizedlist> - <listitem><para>A simple, easy-to-handle desktop</para></listitem> - <listitem><para>Fully configurable via mouse, with drag and - drop, etc </para></listitem> - <listitem><para>Main panel similar to <application>CDE</application>, with menus, applets and - app launchers</para></listitem> - <listitem><para>Integrated window manager, file manager, - sound manager, <application>GNOME</application> compliance module, and other things</para></listitem> - <listitem><para> Themeable (since it uses GTK) </para></listitem> - <listitem><para> Fast, light and efficient: ideal for - older/slower machines or machines with memory limitations</para></listitem> + <listitem> + <para>A simple, easy-to-handle desktop</para> + </listitem> + + <listitem> + <para>Fully configurable via mouse, with drag and + drop, etc </para> + </listitem> + + <listitem> + <para>Main panel similar to <application>CDE</application>, with + menus, applets and app launchers</para> + </listitem> + + <listitem> + <para>Integrated window manager, file manager, sound manager, + <application>GNOME</application> compliance module, and other + things</para> + </listitem> + + <listitem> + <para>Themeable (since it uses GTK)</para> + </listitem> + + <listitem> + <para>Fast, light and efficient: ideal for older/slower machines + or machines with memory limitations</para> + </listitem> </itemizedlist> - <para> More information on <application>XFce</application> - can be found on the <ulink url="http://www.xfce.org/">XFce - website</ulink>.</para> + <para>More information on <application>XFce</application> + can be found on the <ulink url="http://www.xfce.org/">XFce + website</ulink>.</para> </sect3> + <sect3 id="x11-wm-xfce-install"> <title>Installing XFce</title> - - <para>A binary package for <application>XFce</application> - exists (at the time of writing). To install, simply type:</para> + + <para>A binary package for <application>XFce</application> + exists (at the time of writing). To install, simply type:</para> <screen>&prompt.root; <userinput>pkg_add -r xfce</userinput></screen> - <para> Alternatively, to build from source, use the ports - collection:</para> + <para>Alternatively, to build from source, use the ports + collection:</para> <screen>&prompt.root; <userinput>cd /usr/ports/x11-wm/xfce</userinput> &prompt.root; <userinput>make install clean</userinput></screen> <para>Now, tell the X server to launch - <application>XFce</application> the next time X is started. - Simply type this:</para> + <application>XFce</application> the next time X is started. + Simply type this:</para> <screen>&prompt.user; <userinput>echo "/usr/X11R6/bin/startxfce" > ~/.xinitrc</userinput></screen> <para>The next time X is started, - <application>XFce</application> will be the desktop. + <application>XFce</application> will be the desktop. As before, if a display manager like <filename>xdm</filename> is being used, create an <filename>.xsession</filename>, as described in the @@ -1437,14 +1505,13 @@ esac</screen> command; or, configure the display manager to allow choosing a desktop at login time, as explained in the section on <link linkend="x11-wm-kde-kdm">kdm</link>.</para> - </sect3> </sect2> </sect1> </chapter> -<!-- +<!-- Local Variables: mode: sgml sgml-declaration: "../chapter.decl" |