/[gentoo-dk]/gentoo-dk/pre1/desktop.xml
ViewVC logotype

Diff of /gentoo-dk/pre1/desktop.xml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.2 by mejlholm, Sat Nov 15 11:17:50 2003 UTC revision 1.3 by mejlholm, Thu Nov 20 17:47:33 2003 UTC
# Line 1  Line 1 
1  <?xml version='1.0' encoding="iso-8859-1"?>  <?xml version='1.0' encoding="UTF-8"?>
2    <!-- $Header$ -->
3    
4  <!DOCTYPE guide SYSTEM "/dtd/guide.dtd">  <!DOCTYPE guide SYSTEM "/dtd/guide.dtd">
5    
6  <guide link="/doc/da/desktop.xml">  <guide link="/doc/en/desktop.xml">
7          <title>Gentoo Linux Desktop Configuration Guide</title>  <title>Gentoo Linux Desktop Configuration Guide</title>
8                  <author title="Forfatter"><mail link="zhen@gentoo.org">John P. Davis</mail></author>  <author title="Author"><!-- zhen@gentoo.org -->
9                  <author title="Forfatter"><mail link="g2boojum@gentoo.org">Grant Goodyear</mail></author>    John P. Davis
10                  <author title="Redaktør"><mail link="swift@gentoo.org">Sven Vermeulen</mail></author>  </author>
11                  <author title="Redaktør"><mail link="klasikahl@gentoo.org">Zack Gilburd</mail></author>  <author title="Author">
12                  <author title="Redaktør"><mail link="bennyc@gentoo.org">Benny Chuang</mail></author>    <mail link="g2boojum@gentoo.org">Grant Goodyear</mail>
13                  <author title="Oversætter"><mail link="mejlholm@stud.auc.dk">Arne Mejlholm</mail></author>  </author>
14    <author title="Editor">
15          <abstract>    <mail link="swift@gentoo.org">Sven Vermeulen</mail>
16          Denne guide viser hvordan du konfigurer Gentoo Linux til at  </author>
17                  være et desktop system til alle formål. Specifikt vil  <author title="Editor">
18                  gennemgå installation og konfiguration af X, KDE,    <mail link="klasikahl@gentoo.org">Zack Gilburd</mail>
19                  GNOME, OSS(lyd), postfix (elektronisk mail) og samba  </author>
20                  (kommunikation mellem unix og windows).  <author title="Editor">
21          </abstract>    <mail link="bennyc@gentoo.org">Benny Chuang</mail>
22    </author>
23      <license/>  <author title="Editor">
24      <mail link="erwin@gentoo.org">Erwin</mail>
25          <version>1.4.6</version>  </author>
26          <date>September 30, 2003</date>  
27    <abstract>
28          <chapter>  This guide shows you configure Gentoo Linux to be a full-purpose
29                  <title>Indledende</title>  desktop system.  Specifically, we walk through installing and
30                          <section>  configuring X, KDE, GNOME, ALSA (sound), postfix (electronic mail),
31                            and samba (unix/windows interoperability).
32                                  <body>  </abstract>
33                            
34                                  <p>Needless to say, you first need to have Gentoo Linux installed  <license/>
35                                  (<uri>http://www.gentoo.org/doc/en/build.xml</uri>).  Having finished  
36                                  that rather enjoyable process, you also need to download the <e>Portage</e>  <version>1.4.13</version>
37                                  tree.  You really should read the Portage User Guide  <date>November 16, 2003</date>
38                                  (<uri>http://www.gentoo.org/doc/en/portage-user.xml</uri>), but if you're  
39                                  in a hurry you just need to type:  <chapter>
40                                  </p>  <title>Preliminaries</title>
41                            <section>
42                                  <pre caption = "Getting Current">  <body>
43    
44    <p>
45    Needless to say, you first need to have Gentoo Linux installed
46    (<uri>http://www.gentoo.org/doc/en/build.xml</uri>).  Having finished
47    that rather enjoyable process, you also need to download the <e>Portage</e>
48    tree.  You really should read the
49    <uri link="http://www.gentoo.org/doc/en/portage-user.xml">Portage
50    User Guide</uri>, but if you're in a hurry you just need to type:
51    </p>
52    
53    <pre caption = "Getting Current">
54  # <i>emerge sync</i>  # <i>emerge sync</i>
55  </pre>  </pre>
56    
57                                  <p>A quick note is in order about the packages that I have chosen to  <p>
58                                  discuss here.  Gentoo Linux has a considerable wealth of window managers,  A quick note is in order about the packages that I have chosen to
59                                  mail transport agents, etcetera that can easily be installed.  The specific  discuss here.  Gentoo Linux has a considerable wealth of window managers,
60                                  packages that I have chosen to cover are not preferred by Gentoo Linux, they  mail transport agents, etcetera that can easily be installed.  The specific
61                                  are simply packages that the author likes and/or knows how to configure.  packages that I have chosen to cover are not preferred by Gentoo Linux, they
62                                  In other words, they're the packages on the author's own desktop.</p>  are simply packages that the author likes and/or knows how to configure.
63    In other words, they're the packages on the author's own desktop.
64                                  <impo>  </p>
65                                  Depending on which desktop you are going to install, you might want to  
66                                  disable support for which desktops you are not using in <path>/etc/make.conf</path>.  <impo>
67                                  Under the <i>USE</i> section, add <e>-gnome -gtk</e> if you are using KDE, or add  Depending on which desktop you are going to install, you might want to
68                                  <e>-kde -qt</e> if you are going to use GNOME.  disable support for which desktops you are not using in
69                                  </impo>  <path>/etc/make.conf</path>. Under the <c>USE</c> section, add <c>-gnome
70    -gtk</c> if you are using KDE, or add <c>-kde -qt</c> if you are going to use
71                                  <warn>If you encounter a bug with any of these packages, report  GNOME.
72                                  them to <uri>http://bugs.gentoo.org/</uri>. <e>Do Not</e> report them to the  </impo>
73                                  package maintainers (i.e. KDE), the Gentoo Developers will move the bug  
74                                  upstream if necessary.  <warn>
75                                  </warn>  If you encounter a bug with any of these packages, report
76    them to <uri>http://bugs.gentoo.org/</uri>. <e>Do Not</e> report them to the
77                          </body>  package maintainers (i.e. KDE), the Gentoo Developers will move the bug
78                  </section>  upstream if necessary.
79          </chapter>  </warn>
80    
81          <chapter>  </body>
82          <title>Installing XFree86</title>  </section>
83                  <section>  </chapter>
84                          <title>Installation</title>  
85    <chapter>
86                          <body>  <title>Installing XFree86</title>
87    <section>
88                          <p>The emerge/install process of X will take awhile on even a quick system. The system  <title>Installation</title>
89                          is quite large, so be prepared to read a book, take a nap, etc.  <body>
                         </p>  
90    
91                          <p>To emerge X, all that you have to do is type:  <p>
92                          </p>  The emerge/install process of X will take awhile on even a quick system. The
93    system is quite large, so be prepared to read a book, take a nap, etc.
94    </p>
95    
96                          <pre caption = "Emerging XFree86">  <p>
97    To emerge X, all that you have to do is type:
98    </p>
99    
100    <pre caption = "Emerging XFree86">
101  # <i>emerge xfree</i>  # <i>emerge xfree</i>
102  # <i>env-update &amp;&amp; source /etc/profile</i>  # <i>env-update &amp;&amp; source /etc/profile</i>
103  </pre>  </pre>
104    
105                          <p>After this rather length process is completed, configuration will begin.  <p>
106                          </p>  After this rather long process is completed, configuration will begin.
107    </p>
                         </body>  
                 </section>  
108    
109                  <section>  </body>
110                          <title>Configuring X</title>  </section>
111    <section>
112    <title>Configuring X</title>
113    <body>
114    
115                          <body>  <p>
116    I like using the console-based <c>xf86config</c> program to configure X,
117                          <p>I like using the console-based <c>xf86config</c> program to configure X,  although the generated <path>/etc/X11/XF86Config</path> file is not very
118                          although the generated <path>/etc/X11/XF86Config</path> file is not very  elegant. Before you start, you'll need to know the horizontal and vertical
119                          elegant. Before you start, you'll need to know the horizontal and vertical refresh  refresh rates of your monitor (my viewsonic G773 has Horizontal: 30-69 KHz,
120                          rates of your monitor (my viewsonic G773 has Horizontal: 30-69 KHz,  Vertical: 55-90 KHz), the type and amount of ram (in KB) of your video card
121                          Vertical: 55-90 KHz), the type and amount of ram (in KB) of your video card  (a 32768 KB GeForce card, in my case), and the type and device of your
122                          (a 32768 KB GeForce card, in my case), and the type and device of your  mouse (an intellimouse plugged into the ps/2 port <path>/dev/psaux</path>).
123                          mouse (an intellimouse plugged into the ps/2 port <path>/dev/psaux</path>).  </p>
                         </p>  
124    
125                          <pre caption = "Running xf86config">  <pre caption = "Running xf86config">
126  # <i>/usr/X11R6/bin/xf86config</i>  # <i>/usr/X11R6/bin/xf86config</i>
127  </pre>  </pre>
128    
129                          <p>Because I have a three-button mouse I choose not to enable  <p>
130                          3-button emulation.  Don't  forget to add XKB support if you have an internation  Because I have a three-button mouse I choose not to enable
131                          keyboard or need multiple language support.  3-button emulation.  Don't forget to add XKB support if you have an
132                          You'll have to guess at a screen resolution and pixel depth that you'll like.  I happen  international keyboard or need multiple language support.
133                          to like 1280x1024 at 24bpp on my viewsonic, but that's only because it  You'll have to guess at a screen resolution and pixel depth that you'll like.  
134                          doesn't work at a higher resolution.  If you've never done this before,  I happen to like 1280x1024 at 24bpp on my viewsonic, but that's only because it
135                          don't be surprised if you end up running <c>xf86config</c> multiple  doesn't work at a higher resolution.  If you've never done this before,
136                          times.  don't be surprised if you end up running <c>xf86config</c> multiple
137                          </p>  times.
138    </p>
             <p>  
             Another way to configure XFree86 is to use <c>XFree86  
             -configure</c>. This command will create a default  
             (hopefully functional) <path>XF86Config</path> file in the  
             root homedir (<path>/root</path>). Afterwards you can edit  
             this file to your needs, and when everything seems correct,  
             copy the file to <path>/etc/X11/XF86Config</path>.  
             </p>  
   
             <p>See <uri link="http://www-106.ibm.com/developerworks/edu/os-dw-linuxxwin-i.html">this tutorial</uri>     for a more thorough X configuration.</p>  
   
                         <note>If you don't know the refresh rates of your monitor, try doing a  
                         google search, <uri>http://www.google.com/</uri>, on the model number and  
                         manufacturer of your monitor.  The refresh rates are generally given as  
                         part of the monitor specs.</note>  
   
             <note>  
             If you are using an international keyboard that needs dead  
             keys (such as &#232;, &#233;, &#234;, &#235;, &#242;, &#243; etc)  
             you need to define your locale before you start X. To do so, create  
             <path>/etc/env.d/02locale</path> and add <c>LC_CTYPE="xx_YY"</c> to  
             it, with <c>xx</c> being your language (f.i. "<c>nl</c>") and  
             <c>YY</c> being your country (f.i. "<c>BE</c>"). If you want EURO  
             support, you need to add "<c>@euro</c>" to that variable as well  
             (f.i. <c>LC_CTYPE="nl_BE@euro"</c>). Don't forget to run  
             <c>env-update &amp;&amp; source /etc/profile</c> after making these  
             changes.  
             </note>  
   
                         <p>If you're an X-configuring veteran, you may be used to making  
                         a symbolic link from your mouse device to <path>/dev/mouse</path>.  
                         Such symlinks used to be problematic with devfs, since they tended to go  
                         away after a reboot.  Gentoo Linux now handles symbolic links in  
                         <path>/dev</path> correctly.  Just make the <path>/dev/mouse</path> symlink  
                         using <c>ln -s</c> and it <e>will</e> be preserved upon rebooting.  
                         </p>  
   
                         <p>If you choose to use XFS (the XFontServer ), follow the appropriate instructions below.  
                         Using XFS is highly recommended, as it makes font configuration <e>much</e> easier. Please refer  
                         to this <uri link = "http://www.redhat.com/docs/manuals/linux/RHL-7.3-Manual/ref-guide/s1-x-fonts.html">RedHat</uri>  
                         article on XFS.  
                         </p>  
139    
140                          <pre caption = "Testing your Configuration">  <p>
141    Another way to configure XFree86 is to use <c>XFree86
142    -configure</c>. This command will create a default
143    (hopefully functional) <path>XF86Config</path> file in the
144    root homedir (<path>/root</path>). Afterwards you can edit
145    this file to your needs, and when everything seems correct,
146    copy the file to <path>/etc/X11/XF86Config</path>.
147    </p>
148    
149    <p>
150    See <uri
151    link="http://www-106.ibm.com/developerworks/edu/os-dw-linuxxwin-i.html">this
152    tutorial</uri>  for a more thorough X configuration.
153    </p>
154    
155    <note>
156    If you don't know the refresh rates of your monitor, try doing a
157    google search, <uri>http://www.google.com/</uri>, on the model number and
158    manufacturer of your monitor.  The refresh rates are generally given as
159    part of the monitor specs.
160    </note>
161    
162    <note>
163    If you are using an international keyboard that needs dead
164    keys (such as &#232;, &#233;, &#234;, &#235;, &#242;, &#243;)
165    you need to define your locale before you start X. To do so, create
166    <path>/etc/env.d/02locale</path> and add <c>LC_CTYPE="xx_YY"</c> to
167    it, with <c>xx</c> being your language (f.i. "<c>nl</c>") and
168    <c>YY</c> being your country (f.i. "<c>BE</c>"). If you want EURO
169    support, you need to add "<c>@euro</c>" to that variable as well
170    (f.i. <c>LC_CTYPE="nl_BE@euro"</c>). Don't forget to run
171    <c>env-update &amp;&amp; source /etc/profile</c> after making these
172    changes.
173    </note>
174    
175    <p>
176    If you're an X-configuring veteran, you may be used to making
177    a symbolic link from your mouse device to <path>/dev/mouse</path>.
178    Such symlinks used to be problematic with devfs, since they tended to go
179    away after a reboot.  Gentoo Linux now handles symbolic links in
180    <path>/dev</path> correctly.  Just make the <path>/dev/mouse</path> symlink
181    using <c>ln -s</c> and it <e>will</e> be preserved upon rebooting.
182    </p>
183    
184    <p>
185    If you choose to use XFS (the XFontServer ), follow the appropriate instructions
186    below. Using XFS is highly recommended, as it makes font configuration
187    <e>much</e> easier. Please refer to this <uri
188    link="http://www.redhat.com/docs/manuals/linux/RHL-7.3-Manual/ref-guide/s1-x-fonts.html">RedHat</uri>
189    article on XFS.
190    </p>
191    
192    <pre caption = "Testing your Configuration">
193  # <i>rc-update add xfs default</i>  # <i>rc-update add xfs default</i>
194  # <i>/etc/init.d/xfs start</i>  # <i>/etc/init.d/xfs start</i>
195  # <i>startx</i>  # <i>startx</i>
196  </pre>  </pre>
197                            
198                          <p>If you configured X properly, running <c>startx</c> should start an  <p>
199                          amazingly ugly X window manager (twm, to be specific).  If X comes up,  If you configured X properly, running <c>startx</c> should start an
200                          you're good to go.  Hit <c>&lt;ctrl&gt;&lt;alt&gt;&lt;backspace&gt;</c>  amazingly ugly X window manager (twm, to be specific).  If X comes up,
201                          to kill the X server.  you're good to go.  Hit <c>&lt;ctrl&gt;&lt;alt&gt;&lt;backspace&gt;</c>
202                          </p>  to kill the X server.
203    </p>
204                          <p><c>xf86config</c> will only create a default set of configuration options. NVIDIA cards,  
205                          USB mice and many other options have to be set manually. I will explore these options below,  <p>
206                          but I encourage you to take a look at the <i>XF86Config</i> file. It is not too cryptic,  <c>xf86config</c> will only create a default set of configuration options.
207                          and you might be able to tweak some interesting settings. A good place to start on tweaking  NVIDIA cards, USB mice and many other options have to be set manually. I will
208                          information would be <uri link = "http://www.tldp.org/HOWTO/mini/FDU/">here</uri>.  explore these options below, but I encourage you to take a look at the
209                          </p>  <path>XF86Config</path> file. It is not too cryptic, and you might be able to
210    tweak some interesting settings. A good place to start on tweaking
211                          </body>  information would be the <uri
212                  </section>  link="http://www.tldp.org/HOWTO/mini/FDU/">font de-uglification howto</uri>.
213    </p>
214                          <section>  
215                                  <title>Configuring a PS/2 Mouse</title>  </body>
216    </section>
217                                  <body>  <section>
218                                    <title>Configuring a PS/2 Mouse</title>
219                                  <p>If you have a wheel mouse you'll want to edit the XF86Config file  <body>
220                                  by hand:  
221                                  </p>  <p>
222                                    If you have a wheel mouse you'll want to edit the XF86Config file
223                                  <pre caption = "Editing XF86Config">  by hand:
224    </p>
225    
226    <pre caption = "Editing XF86Config">
227  # <i>cp /etc/X11/XF86Config /etc/X11/XF86Config.working</i>  # <i>cp /etc/X11/XF86Config /etc/X11/XF86Config.working</i>
228  # <i>nano -w /etc/X11/XF86Config</i>  # <i>nano -w /etc/X11/XF86Config</i>
229  </pre>  </pre>
230                                    
231                                  <pre caption="Pointer section of XF86Config">  <pre caption="Pointer section of XF86Config">
232  Section "InputDevice"  Section "InputDevice"
233    
234  #Identifier and driver  #Identifier and driver
# Line 208  Driver "mouse" Line 238  Driver "mouse"
238  <i>Option "Protocol"    "IMPS/2" </i>  <i>Option "Protocol"    "IMPS/2" </i>
239  Option "Device"      "/dev/psaux"  Option "Device"      "/dev/psaux"
240  <i>Option "ZAxisMapping"        "4 5"</i>  <i>Option "ZAxisMapping"        "4 5"</i>
                                   
241  </pre>  </pre>
                                   
                                 <p>Because I have an intellimouse I changed the "Protocol" from  
                                 "PS/2" to "IMPS/2".  Getting the wheel to scroll just requires  
                                 adding the 'Option "ZAxisMapping" "4 5"' line, where '4' and '5'  
                                 correspond to mouse wheel up and mouse wheel down.  
                                 </p>  
                                   
                                 <note>Netscape 4.x won't scroll with the wheel by default; you'll need  
                                 to create an .Xdefaults file first.  Go  
                                 <uri link="http://www-sop.inria.fr/koala/colas/mouse-wheel-scroll/">here</uri>  
                                 for instructions.  Better yet, use <c>konqueror</c>, <c>opera</c>,  
                                 <c>mozilla</c>, <c>galeon</c>, or some other real browser.</note>  
   
                                 <p>Run <c>startx</c> again just to make sure X still comes up.  
                                 </p>  
   
                         </body>  
                 </section>  
   
                 <section>  
                         <title>Configuring a USB Mouse</title>  
   
                         <body>  
                           
                         <p>A USB mouse is your friend on a high resolution screen. The kernel takes care  
                         of the scaling so you don't have to move your mouse five times across the pad to make it  
                         across the screen. </p>  
   
                         <p>The first thing that has to be done is the installation of the kernel modules. The modules that  
                         will be needed for a USB mouse to work are <i>usbmouse</i>, <i>mousedev</i>, <i>hid</i>,  
                         <i>usbcore</i>, <i>usb-uhci</i>, and <i>input</i>. After the necessary kernel  
                         configuration is done, <i>insmod</i> the modules.  
                         </p>  
                         <note>Use either <i>usbmouse</i> <b>OR</b> <i>hid</i>. If you install both, mouse will stop working.</note>  
                         <note>When configuring the Input Core support for the mouse, make sure to enter the screen  
                         resolution that you will be using in X. This makes the scaling all pretty and correct. </note>  
242    
243                          <p>Now, unplug the mouse, and plug it back in, and check your kernel log for a message that  <p>
244                          looks something like this </p>  Because I have an intellimouse I changed the "Protocol" from
245    "PS/2" to "IMPS/2".  Getting the wheel to scroll just requires
246    adding the 'Option "ZAxisMapping" "4 5"' line, where '4' and '5'
247    correspond to mouse wheel up and mouse wheel down.
248    </p>
249    
250    <p>
251    If you have a wheelmouse and <c>PS/2</c> doesn't work, try <c>IMPS/2</c>
252    even though you don't have an intellimouse. At least some logitech mice
253    need this.
254    </p>
255    
256    <note>
257    Netscape 4.x won't scroll with the wheel by default; you'll need
258    to create an .Xdefaults file first.  Visit <uri
259    link="http://www-sop.inria.fr/koala/colas/mouse-wheel-scroll/">Colas Nahaboo's
260    page</uri> about wheel mice under X for instructions.  Better yet, use
261    <c>konqueror</c>, <c>opera</c>, <c>mozilla</c>, <c>galeon</c>, or some other
262    real browser.
263    </note>
264    
265                          <pre caption = "Kernel Message">  <p>
266    Run <c>startx</c> again just to make sure X still comes up.
267    </p>
268    
269    </body>
270    </section>
271    <section>
272    <title>Configuring a USB Mouse</title>
273    <body>
274    
275    <p>
276    A USB mouse is your friend on a high resolution screen. The kernel takes care
277    of the scaling so you don't have to move your mouse five times across the pad
278    to make it across the screen.
279    </p>
280    
281    <p>
282    The first thing that has to be done is the installation of the kernel modules.
283    The modules that will be needed for a USB mouse to work are <c>usbmouse</c>,
284    <c>mousedev</c>, <c>hid</c>, <c>usbcore</c>, <c>usb-uhci</c>, and <c>input</c>.
285    After the necessary kernel configuration is done, <c>insmod</c> the modules.
286    </p>
287    
288    <note>
289    Use either <c>usbmouse</c> <b>OR</b> <c>hid</c>. If you install both, mouse
290    will stop working.
291    </note>
292    
293    <note>
294    When configuring the Input Core support for the mouse, make sure to enter the
295    screen resolution that you will be using in X. This makes the scaling all pretty
296    and correct.
297    </note>
298    
299    <p>
300    Now, unplug the mouse, and plug it back in, and check your kernel log for a
301    message that looks something like this:
302    </p>
303    
304    <pre caption = "Kernel Message">
305  hub.c: USB new device connect on bus1/1, assigned device number 2  hub.c: USB new device connect on bus1/1, assigned device number 2
306  input0,hiddev0: USB HID v1.00 Mouse [Microsoft Microsoft IntelliMouse Optical] on usb1:2.0  input0,hiddev0: USB HID v1.00 Mouse [Microsoft Microsoft IntelliMouse Optical] on usb1:2.0
307  </pre>  </pre>
308    
309                          <p>Now that the mouse is detected, check <path>/dev/input</path> to make sure that your mouse  <p>
310                          is there and working. </p>  Now that the mouse is detected, check <path>/dev/input</path> to make sure that
311    your mouse is there and working.
312    </p>
313    
314                          <pre caption = "Checking for USB Mouse">  <pre caption = "Checking for USB Mouse">
315  # <i>cd /dev/input</i>  # <i>cd /dev/input</i>
316  # <i>cat mice</i>  # <i>cat mice</i>
317  <comment>Move your mouse when you <i>cat</i> the device, you should see a lot  <comment>Move your mouse when you <i>cat</i> the device, you should see a lot
318  of garbage. To exit, simply press <c>control-C.</c> </comment>  of garbage. To exit, simply press <i>control-C.</i> </comment>
319  </pre>  </pre>
320    
321                          <p>Once the mouse is properly detected and installed, now we have to tell X to use the  <p>
322                          USB mouse. All that is required here is a slight change to what device X uses  Once the mouse is properly detected and installed, now we have to tell X to use
323                          for the mouse.  the USB mouse. All that is required here is a slight change to what device X
324                          </p>  uses for the mouse.
325    </p>
326    
327                          <pre caption = "Editing XF86Config">  <pre caption = "Editing XF86Config">
328  # <i>cp /etc/X11/XF86Config /etc/X11/XF86Config.working</i>  # <i>cp /etc/X11/XF86Config /etc/X11/XF86Config.working</i>
329  # <i>nano -w /etc/X11/XF86Config</i>  # <i>nano -w /etc/X11/XF86Config</i>
330  </pre>  </pre>
331    
332                          <pre caption="Pointer section of XF86Config">  <pre caption="Pointer section of XF86Config">
333  Section "InputDevice"  Section "InputDevice"
334    
335  # Identifier and driver  # Identifier and driver
# Line 285  Driver "mouse" Line 339  Driver "mouse"
339  <i>Option "Protocol"    "IMPS/2" </i>  <i>Option "Protocol"    "IMPS/2" </i>
340  Option "Device"      "/dev/input/mice"  Option "Device"      "/dev/input/mice"
341  <i>Option "ZAxisMapping"        "4 5"</i>  <i>Option "ZAxisMapping"        "4 5"</i>
   
342  </pre>  </pre>
343    
344                          <p>Okay, restart X, and the mouse should be working! </p>  <p>
345                          <p>Don't forget to add the modules that your mouse uses to <path>modules.autoload.d/kernel-2.4</path>. </p>  Okay, restart X, and the mouse should be working!
346    </p>
347    
348    <p>
349    Don't forget to add the modules that your mouse uses to
350    <path>modules.autoload.d/kernel-2.4</path>.
351    </p>
352    
353                          <pre caption = "Adding entries to modules.autoload.d/kernel-2.4">  <pre caption = "Adding entries to modules.autoload.d/kernel-2.4">
354  # <c>nano -w /etc/modules.autoload.d/kernel-2.4</c>  # <i>nano -w /etc/modules.autoload.d/kernel-2.4</i>
355  <comment> # We will add the following lines to the file.</comment>  <comment> # We will add the following lines to the file.</comment>
356  mousedev  mousedev
357  hid  hid
# Line 300  usbcore Line 359  usbcore
359  input  input
360  </pre>  </pre>
361    
362                          </body>  </body>
363                  </section>  </section>
364    <section>
365    <title>Configuring your NVIDIA Card</title>
366    <body>
367    
368                  <section>  <p>
369                          <title>Configuring your NVIDIA Card</title>  If you happen to have an NVIDIA card, now would be a good time to
370                            install the NVIDIA accelerated drivers.
371                          <body>  </p>
372                          <p>If you happen to have an NVIDIA card, now would be a good time to  
373                          install the NVIDIA accelerated drivers.</p>  <note>
374    If you recompile your kernel, you must also recompile <c>nvidia-kernel</c>.
375                          <note>If you recompile your kernel, you must also recompile <i>nvidia-kernel</i>. This has  This has to be done because the new kernel build will delete your nvidia
376                          to be done because the new kernel build will delete your nvidia modules.  modules.
377                          </note>  </note>
378                            
379                          <pre caption="NVIDIA owners only">  <pre caption="NVIDIA owners only">
380  # <i>emerge nvidia-glx</i>  # <i>emerge nvidia-glx</i>
381  # <i>emerge nvidia-kernel</i>  # <i>emerge nvidia-kernel</i>
382  # <i>nano -w /etc/X11/XF86Config</i>  # <i>nano -w /etc/X11/XF86Config</i>
# Line 322  input Line 384  input
384  </pre>  </pre>
385    
386  <note>  <note>
387          If you are using a kernel version other than 2.4, replace 2.4 with that version.  If you are using a kernel version other than 2.4, replace 2.4 with that version.
388          </note>  </note>
389    
390  <pre caption="/etc/modules.autoload.d/kernel-2.4 (NVIDIA owners only)">  <pre caption="/etc/modules.autoload.d/kernel-2.4 (NVIDIA owners only)">
391  # <c>nano -w /etc/modules.autoload.d/kernel-2.4</c>  # <i>nano -w /etc/modules.autoload.d/kernel-2.4</i>
392  <comment># We will add the following line to the file.</comment>  <comment>(We will add the following line to the file.)</comment>
393  nvidia  nvidia
394  </pre>  </pre>
395                            
396                          <pre caption="Enabling GLX in /etc/X11/XF86Config">  <pre caption="Enabling GLX in /etc/X11/XF86Config">
397  Section "Module"  Section "Module"
398    
399  # This loads the GLX module  # This loads the GLX module
400  #    Load       "glx" <comment>(Uncomment this line)</comment>  #    Load       "glx" <comment>(Uncomment this line)</comment>
401  </pre>  </pre>
402                            
403                          <pre caption="Tell X to use the NVIDIA driver in /etc/X11/XF86Config">  <pre caption="Tell X to use the NVIDIA driver in /etc/X11/XF86Config">
404  Section "Device"  Section "Device"
405          Identifier  "NVIDIA GeForce"  Identifier  "NVIDIA GeForce"
406          #Driver      "nv"  #Driver      "nv"
407          Driver      "nvidia"  Driver      "nvidia"
408          #VideoRam    32768  #VideoRam    32768
409          # Insert Clocks lines here if appropriate  # Insert Clocks lines here if appropriate
410  EndSection  EndSection
411  </pre>  </pre>
412    
413                          <p>Run <c>startx</c> one more time to make sure that X still comes up  <p>
414                          (this time with the NVIDIA splash screen, if you have installed the  Run <i>startx</i> one more time to make sure that X still comes up
415                          nvidia drivers).  (this time with the NVIDIA splash screen, if you have installed the
416                          </p>  nvidia drivers).
417    </p>
418                          <note>If you run into problems with X, consult the glx documentation in <path>/usr/share/doc/nvidia-glx-1.0.XXXX/README.gz</path>. There are many configuration variables which may affect your systems performance.</note>  
419    <note>
420                          </body>  If you run into problems with X, consult the glx documentation in
421                  </section>  <path>/usr/share/doc/nvidia-glx-1.0.XXXX/README.gz</path>. There are many
422          </chapter>  configuration variables which may affect your systems performance.
423    </note>
         <chapter>        
                 <title>Window Managers</title>  
   
                 <section>  
                         <title>Introduction</title>  
                         <body>  
   
                         <p>Generally, the first thing to do after installing X is to install a nice  
                         window manager. Of course, you can stick to tvm if you want a really ugly,  
                         I mean functional, window manager.  
                         </p>  
   
                         <p>There are many window managers to choose from. Some of these include KDE,  
                         GNOME, Fluxbox, Blackbox, the other *box 'es, Windowmaker, Sawfish, etc.  
                         As you can see, there is a nice selection of windowmanagers availible in  
                         Gentoo Linux.  
                         </p>  
                   
                         </body>  
                 </section>  
           
                 <section>  
                         <title>KDE</title>  
                         <body>  
   
                         <p>I am assuming that you are going to install KDE if you are reading this section.  
                         KDE is fully supported in Gentoo Linux, but there are a couple of things that you want  
                         to make sure of before you emerge KDE:  
                         </p>  
                           
                         <li>Make sure that "qt" and "kde" are in your USE variables in <i>make.conf</i>. </li>  
                         <li>Make sure that (optional) "-gnome" and "-gtk" are in your USE variables in <i>make.conf</i>. </li>  
                           
                         <p>Both of the above steps can be done by editing <path>/etc/make.conf</path> like so:  
                         </p>  
424    
425                          <pre caption = "Editing make.conf">  </body>
426  # <i>nano -w /etc/make.conf </i>  </section>
427  <comment>Inside of <i>make.conf</i></comment>  </chapter>
428    
429    <chapter>      
430    <title>Window Managers</title>
431    <section>
432    <title>Introduction</title>
433    <body>
434    
435    <p>
436    Generally, the first thing to do after installing X is to install a nice
437    window manager. Of course, you can stick to tvm if you want a really ugly,
438    I mean functional, window manager.
439    </p>
440    
441    <p>
442    There are many window managers to choose from. Some of these include KDE,
443    GNOME, Fluxbox, Blackbox, the other *box 'es, Windowmaker, Sawfish, etc.
444    As you can see, there is a nice selection of windowmanagers availible in
445    Gentoo Linux.
446    </p>
447    
448    </body>
449    </section>
450    <section>
451    <title>KDE</title>
452    <body>
453    
454    <p>
455    I am assuming that you are going to install KDE if you are reading this section.
456    KDE is fully supported in Gentoo Linux, but there are a couple of things that
457    you want to make sure of before you emerge KDE:
458    </p>
459    
460    <ul>
461    <li>
462      Make sure that "qt" and "kde" are in your USE variables in
463      <path>make.conf</path>.
464    </li>
465    <li>
466      Make sure that (optional) "-gnome" and "-gtk" are in your USE variables in
467      <path>make.conf</path>.
468    </li>
469    </ul>
470    
471    <p>
472    Both of the above steps can be done by editing <path>/etc/make.conf</path> like
473    so:
474    </p>
475    
476    <pre caption = "Editing make.conf">
477    # <i>nano -w /etc/make.conf </i>
478    <comment>Inside of make.conf</comment>
479  USE="qt kde -gnome -gtk"  USE="qt kde -gnome -gtk"
                                   
480  </pre>  </pre>
481    
482                          <p>To find out more about USE variables, please reference the  <p>
483                          <uri link="http://www.gentoo.org/doc/en/use-howto.xml">USE HOWTO</uri>.  To find out more about USE variables, please reference the
484                          </p>  <uri link="http://www.gentoo.org/doc/en/use-howto.xml">USE HOWTO</uri>.
485                            </p>
486                          <p>It's always useful to use the <c>--pretend</c> flag before doing  
487                          an <c>emerge</c> to see what dependencies are going to be installed, and in our  <p>
488                          case it's quite a lot.  It's always useful to use the <c>--pretend</c> flag before doing
489                          </p>  an <c>emerge</c> to see what dependencies are going to be installed, and in our
490    case it's quite a lot.
491    </p>
492    
493                          <pre caption = "Looking at KDE Packages/Deps">  <pre caption = "Looking at KDE Packages/Deps">
494  # <i>emerge --pretend kde</i>  # <i>emerge --pretend kde</i>
495  # <i>emerge kde</i>  # <i>emerge kde</i>
496  # <i>env-update &amp;&amp; source /etc/profile</i>  # <i>env-update &amp;&amp; source /etc/profile</i>
497  </pre>  </pre>
498    
499        <p>Now take a look inside <path>/etc/X11/Sessions/</path> and see  <p>
500        what KDE sessions exist (for instance <path>kde-3.1.2</path>).  Now take a look inside <path>/etc/X11/Sessions/</path> and see
501        Then open up <path>/etc/rc.conf</path> and edit it so that it  what KDE sessions exist (for instance <path>kde-3.1.2</path>).
502        reads:  Then open up <path>/etc/rc.conf</path> and edit it so that it
503        </p>  reads:
504    </p>
505    
506  <pre caption = "Setting the XSESSION variable">  <pre caption = "Setting the XSESSION variable">
507  XSESSION="kde-3.1.2"  XSESSION="kde-3.1.2"
# Line 438  selection of possible KDE packages. Inst Line 517  selection of possible KDE packages. Inst
517    
518  <table>  <table>
519  <tr>  <tr>
520   <th>Package</th>    <th>Package</th>
521   <th>Description</th>    <th>Description</th>
522    </tr>
523    <tr>
524      <ti>kdeaccessibility</ti>
525      <ti>Accessibility related programs</ti>
526    </tr>
527    <tr>
528      <ti>kdebase</ti>
529      <ti>Base KDE packages and necessities</ti>
530  </tr>  </tr>
531  <tr>  <tr>
532   <ti>kdebase</ti><ti>Base KDE packages and necessities</ti>    <ti>kdeaddons</ti>
533      <ti>Miscellaneous older/obsoleted KDE tools</ti>
534  </tr>  </tr>
535  <tr>  <tr>
536   <ti>kdeaddons</ti><ti>Miscellaneous older/obsoleted KDE tools</ti>    <ti>kdeadmin</ti>
537      <ti>Administrative KDE tools</ti>
538  </tr>  </tr>
539  <tr>  <tr>
540   <ti>kdeadmin</ti><ti>Administrative KDE tools</ti>    <ti>kdeartwork</ti>
541      <ti>Nice art themes for KDE</ti>
542  </tr>  </tr>
543  <tr>  <tr>
544   <ti>kdeedu</ti><ti>Educational KDE tools</ti>    <ti>kdeedu</ti>
545      <ti>Educational KDE tools</ti>
546  </tr>  </tr>
547  <tr>  <tr>
548   <ti>kdegames</ti><ti>KDE games</ti>    <ti>kdegames</ti>
549      <ti>KDE games</ti>
550  </tr>  </tr>
551  <tr>  <tr>
552   <ti>kdegraphics</ti><ti>KDE graphical art tools</ti>    <ti>kdegraphics</ti>
553      <ti>KDE graphical art tools</ti>
554  </tr>  </tr>
555  <tr>  <tr>
556   <ti>kdemultimedia</ti><ti>Multimedia players/framework for KDE</ti>    <ti>kdemultimedia</ti>
557      <ti>Multimedia players/framework for KDE</ti>
558  </tr>  </tr>
559  <tr>  <tr>
560   <ti>kdenetwork</ti><ti>Network-related tools for KDE</ti>    <ti>kdenetwork</ti>
561      <ti>Network-related tools for KDE</ti>
562  </tr>  </tr>
563  <tr>  <tr>
564   <ti>kdepim</ti><ti>KDE PIM tools, calendars, desktop notes etc.</ti>    <ti>kdepim</ti>
565      <ti>KDE PIM tools, calendars, desktop notes etc.</ti>
566  </tr>  </tr>
567  <tr>  <tr>
568   <ti>kdetoys</ti><ti>Amusement tools for the KDE desktop</ti>    <ti>kdesdk</ti>
569      <ti>Code development tools</ti>
570  </tr>  </tr>
571  <tr>  <tr>
572   <ti>kdeutils</ti><ti>Graphical system utilities</ti>    <ti>kdetoys</ti>
573      <ti>Amusement tools for the KDE desktop</ti>
574    </tr>
575    <tr>
576      <ti>kdeutils</ti>
577      <ti>Graphical system utilities</ti>
578    </tr>
579    <tr>
580      <ti>kde-i18n</ti>
581      <ti>i18n language files - see note</ti>
582  </tr>  </tr>
583  </table>  </table>
584    
585                          <note>  <note>
586                          If you plan to use CUPS for printing then you probably want "cups"  If you plan to use CUPS for printing then you probably want "cups"
587                          in your USE variables in <path>/etc/make.conf</path> before emerging  in your USE variables in <path>/etc/make.conf</path> before emerging
588                          KDE. This can also be done from the command line by doing a  KDE. This can also be done from the command line by doing a
589                          <i>USE="cups" emerge kde </i>.  <c>USE="cups" emerge kde </c>. Please reference the Gentoo Print Guide for a
590                          Please reference the Gentoo Print Guide for a complete CUPS install  complete CUPS install explanation.
591                          explanation.  </note>
592                          </note>  
593    <note>
594                          <p>Have a nice nap!</p>  The kde-i18n package checks the LINGUAS environment variable to determine
595    which language packages you would like to install.  For example,
596                          <note>If you have a Gentoo Linux binary CD, then you can install  <c>LINGUAS="fr it"</c> would install both French and Italian language packages.
597                          the packages directly off of the CD.  </note>
598                          </note>  
599                            <p>
600                          <pre caption="Installing binary packages from the CD">  Have a nice nap!
601  # <i>export PKGDIR=/mnt/cdrom/gentoo/packages</i>  </p>
602  <comment>Normally Portage expects packages to be in /usr/portage/packages  
603  </comment>  <note>
604  # <i>emerge --usepkg /mnt/cdrom/gentoo/packages/All/kdebase-x.y.z.tbz2</i>  If you have a Gentoo Linux binary CD, then you can install
605  <comment>The <c>--usepkg</c> flag makes sure that binary packages are used  the packages directly off the CD:
606  for the dependencies (if available).</comment>  </note>
607    
608    <pre caption="Installing binary packages from the CD">
609    # <i>export PKGDIR=/mnt/cdrom/packages</i>
610    <comment>(Normally Portage expects packages to be in /usr/portage/packages)</comment>
611    # <i>emerge --usepkg /mnt/cdrom/packages/All/kdebase-x.y.z.tbz2</i>
612    <comment>(The --usepkg flag makes sure that binary packages are used for the dependencies (if available).)</comment>
613  # <i>env-update &amp;&amp; source /etc/profile</i>  # <i>env-update &amp;&amp; source /etc/profile</i>
614  </pre>  </pre>
615    
616                          </body>  </body>
617                  </section>  </section>
618    <section>
619    <title>Configuring KDM</title>
620    <body>
621    
622    <p>
623    After KDE is installed, it maybe preferable to use a nice login manager,
624    specifically the KDE login manager, or KDM. KDM comes with the KDE packages,
625    so to run it all you have to do is:
626    </p>
627    
628                  <section>  <pre caption = "Running KDM">
                         <title>Configuring KDM</title>  
                         <body>  
                           
                         <p>After KDE is installed, it maybe preferable to use a nice login manager,  
                         specifically the KDE login manager, or KDM. KDM comes with the KDE packages,  
                         so to run it all you have to do is:  
                         </p>  
                           
                         <pre caption = "Running KDM">  
629  # <i>kdm</i>  # <i>kdm</i>
630  </pre>  </pre>
631                            
632                          <p>You should be able to log in and see KDE in full working order.  <p>
633                          Of course sound shouldn't be working yet, so you'll miss the annoying  You should be able to log in and see KDE in full working order.
634                          KDE start-up sound, but we'll fix that in a moment.  Open a  Of course sound shouldn't be working yet, so you'll miss the annoying
635                          konsole, type <c>ls /usr/bin</c> (or anything else that more than fills  KDE start-up sound, but we'll fix that in a moment.  Open a
636                          the konsole window), and see if the mouse wheel lets  konsole, type <c>ls /usr/bin</c> (or anything else that more than fills
637                          you scroll up and down in the konsole window.  It really should  the konsole window), and see if the mouse wheel lets
638                          work!  you scroll up and down in the konsole window.  It really should
639                          </p>  work!
640                            </p>
641                          <p>All that's left is to make sure that X comes up when Gentoo boots.  
642                          Edit <path>/etc/rc.conf</path> so that  <p>
643                          <e>DISPLAYMANAGER="kdm"</e>.    All that's left is to make sure that X comes up when Gentoo boots.
644                          </p>  Edit <path>/etc/rc.conf</path> so that <e>DISPLAYMANAGER="kdm"</e>.  
645                            </p>
646                          <pre caption = "Editing /etc/rc.conf">  
647    <pre caption = "Editing /etc/rc.conf">
648  # <i>nano -w /etc/rc.conf</i>  # <i>nano -w /etc/rc.conf</i>
649  </pre>  </pre>
650                            
651                          <pre caption="/etc/rc.conf -- setting DISPLAYMANAGER">  <pre caption="/etc/rc.conf -- setting DISPLAYMANAGER">
652  # What display manager do you use ?  [ xdm | gdm | kdm ]  # What display manager do you use ?  [ xdm | gdm | kdm ]
653  DISPLAYMANAGER=kdm  DISPLAYMANAGER=kdm
654  </pre>  </pre>
655                            
656                          <p>     Now we just need to make sure that the <e>xdm</e> start-up script is read when booting.  <p>
657                          </p>  Now we just need to make sure that the <e>xdm</e> start-up script is read when
658                            booting.
659                          <pre caption = "Adding XDM script to default runlevel">  </p>
660    
661    <pre caption = "Adding XDM script to default runlevel">
662  # <i>rc-update add xdm default</i>  # <i>rc-update add xdm default</i>
663  </pre>  </pre>
                           
                         <p>Reboot, and see if X/KDE comes up!  
                         </p>  
                           
                         <impo>The <c>rc-update</c> command is Gentoo Linux's improved version of  
                         the venerable <c>chkconfig</c> command for managing init scripts.  Type  
                         <c>rc-update</c> by itself for a list of options.  
                         </impo>  
                   
                         </body>  
                 </section>  
         </chapter>  
   
         <chapter>  
                 <title>GNOME</title>  
   
                 <section>  
                         <title>Installation</title>  
                         <body>  
   
                         <p>Before you start installing GNOME packages, you might want to edit your  
                         USE variables. Doing this will enable GNOME support in supported applications that  
                         you compile.  
                         </p>  
                           
                         <li>Make sure that "gtk" and "gnome" are in your USE variables in <i>make.conf</i>. </li>  
                         <li>Make sure that (optional) "-kde" and "-qt" are in your USE variables in <i>make.conf</i>. </li>  
                           
                         <p>Both of the above steps can be done by editing <path>/etc/make.conf</path> like so:  
                         </p>  
664    
665                          <pre caption = "Editing make.conf">  <p>
666    Reboot, and see if X/KDE comes up!
667    </p>
668    
669    <impo>
670    The <c>rc-update</c> command is Gentoo Linux's improved version of
671    the venerable <c>chkconfig</c> command for managing init scripts.  Type
672    <c>rc-update</c> by itself for a list of options.
673    </impo>
674    
675    </body>
676    </section>
677    </chapter>
678    
679    <chapter>
680    <title>GNOME</title>
681    <section>
682    <title>Installation</title>
683    <body>
684    
685    <p>
686    Before you start installing GNOME packages, you might want to edit your
687    USE variables. Doing this will enable GNOME support in supported applications
688    that you compile.
689    </p>
690    
691    <ul>
692    <li>
693      Make sure that "gtk" and "gnome" are in your USE variables in
694      <path>make.conf</path>
695    </li>
696    <li>
697      Make sure that (optional) "-kde" and "-qt" are in your USE variables in
698      <path>make.conf</path>
699    </li>
700    </ul>
701    
702    <p>
703    Both of the above steps can be done by editing <path>/etc/make.conf</path> like
704    so:
705    </p>
706    
707    <pre caption = "Editing make.conf">
708  # <i>nano -w /etc/make.conf </i>  # <i>nano -w /etc/make.conf </i>
709  <comment>Inside of <i>make.conf</i></comment>  <comment>(Inside of make.conf)</comment>
710    
711  USE="gnome gtk -kde -qt"  USE="gnome gtk -kde -qt"
                                   
712  </pre>  </pre>
713    
714                          <p>To find out more about USE variables, please reference the  <p>
715                          <uri link="http://www.gentoo.org/doc/en/use-howto.xml">USE HOWTO</uri>.  To find out more about USE variables, please reference the
716                          </p>  <uri link="http://www.gentoo.org/doc/en/use-howto.xml">USE HOWTO</uri>.
717    </p>
718    
719                          <p>Now, install the necessary GNOME packages.  <p>
720                          </p>  Now, install the necessary GNOME packages.
721    </p>
722    
723                          <pre caption = "Installing the GNOME Packages">  <pre caption = "Installing the GNOME Packages">
724  # <i>emerge --pretend gnome</i>  # <i>emerge --pretend gnome</i>
725  # <i>emerge gnome</i>  # <i>emerge gnome</i>
726  # <i>emerge xscreensaver</i>  # <i>emerge xscreensaver</i>
727  # <i>env-update &amp;&amp; source /etc/profile</i>  # <i>env-update &amp;&amp; source /etc/profile</i>
728  </pre>  </pre>
729    
730                          <p>This will take a good while to do, so kick back and watch a movie.  <p>
731                          Author recommends Pulp Fiction.  This will take a good while to do, so kick back and watch a movie.
732                          </p>  Author recommends Pulp Fiction.
733    </p>
734        <p>Now open up <path>/etc/rc.conf</path> and edit the variable  
735        XSESSION so that it reads:  <p>
736        </p>  Now open up <path>/etc/rc.conf</path> and edit the variable
737    XSESSION so that it reads:
738    </p>
739    
740  <pre caption = "Changing XSESSION in /etc/rc.conf">  <pre caption = "Changing XSESSION in /etc/rc.conf">
741  XSESSION="Gnome"  XSESSION="Gnome"
742  </pre>  </pre>
743    
744                          <p>GNOME configuration is basically the same as KDE from this point forward.  <p>
745                          There are not really any GNOME specific configuration files, but there is  GNOME configuration is basically the same as KDE from this point forward.
746                          GDM, the GNOME login manager, to setup.  There are not really any GNOME specific configuration files, but there is
747                          </p>  GDM, the GNOME login manager, to setup.
748    </p>
749                          </body>  
750                  </section>  </body>
751    </section>
752                  <section>  <section>
753                          <title>Configuring GDM</title>  <title>Configuring GDM</title>
754                          <body>  <body>
755    
756                          <p>After GNOME is installed, it maybe preferable to use a nice login manager,  <p>
757                          specifically the GNOME login manager, or GDM. GDM comes with the GDE packages,  After GNOME is installed, it maybe preferable to use a nice login manager,
758                          so to run it all you have to do is:  specifically the GNOME login manager, or GDM. GDM comes with the GDE packages,
759                          </p>  so to run it all you have to do is:
760                            </p>
761                          <pre caption = "Running GDM">  
762    <pre caption = "Running GDM">
763  # <i>gdm</i>  # <i>gdm</i>
764  </pre>  </pre>
765                            
766                          <p>You should be able to log in and see GDM in full working order.  <p>
767                          Of course sound shouldn't be working yet, so you'll miss the annoying  You should be able to log in and see GDM in full working order.
768                          GNOME start-up sound, but we'll fix that in a moment.  Open a  Of course sound shouldn't be working yet, so you'll miss the annoying
769                          console, type <c>ls /usr/bin</c> (or anything else that more than fills  GNOME start-up sound, but we'll fix that in a moment.  Open a
770                          the console window), and see if the mouse wheel lets  console, type <c>ls /usr/bin</c> (or anything else that more than fills
771                          you scroll up and down in the console window.  It really should  the console window), and see if the mouse wheel lets
772                          work!  you scroll up and down in the console window.  It really should
773                          </p>  work!
774                            </p>
775                          <p>All that's left is to make sure that X comes up when Gentoo boots.  
776                          Edit <path>/etc/rc.conf</path> so that  <p>
777                          <e>DISPLAYMANAGER="gdm"</e>.    All that's left is to make sure that X comes up when Gentoo boots.
778                          </p>  Edit <path>/etc/rc.conf</path> so that <e>DISPLAYMANAGER="gdm"</e>.  
779                            </p>
780                          <pre caption = "Editing /etc/rc.conf">  
781    <pre caption = "Editing /etc/rc.conf">
782  # <i>nano -w /etc/rc.conf</i>  # <i>nano -w /etc/rc.conf</i>
783  </pre>  </pre>
784                            
785                          <pre caption="/etc/rc.conf -- setting DISPLAYMANAGER">  <pre caption="/etc/rc.conf -- setting DISPLAYMANAGER">
786  # What display manager do you use ?  [ xdm | gdm | kdm ]  # What display manager do you use ?  [ xdm | gdm | kdm ]
787  DISPLAYMANAGER=gdm  DISPLAYMANAGER=gdm
788  </pre>  </pre>
789                            
790                          <p>     Now we just need to make sure that the <e>xdm</e> start-up script is read when booting.  <p>
791                          </p>  Now we just need to make sure that the <e>xdm</e> start-up script is read when
792                            booting.
793                          <pre caption = "Adding XDM script to default runlevel">  </p>
794    
795    <pre caption = "Adding XDM script to default runlevel">
796  # <i>rc-update add xdm default</i>  # <i>rc-update add xdm default</i>
797  </pre>  </pre>
                           
                         <p>Reboot, and see if X/GNOME comes up!  
                         </p>  
                           
                         <impo>The <c>rc-update</c> command is Gentoo Linux's improved version of  
                         the venerable <c>chkconfig</c> command for managing init scripts.  Type  
                         <c>rc-update</c> by itself for a list of options.  
                         </impo>  
                   
                         </body>  
                 </section>  
         </chapter>  
   
         <chapter>  
                 <title>Sound Configuration</title>  
                         <section>  
                                 <title>Alsa</title>  
                                 <body>  
   
                                 <p>To install ALSA, please refer to the Gentoo Linux ALSA setup guide  
                                 <uri link = "http://www.gentoo.org/doc/alsa-guide.html">here</uri>  
                                 </p>  
   
                                 </body>  
                         </section>  
   
                         <section>  
                                 <title>KDE and sound</title>  
                                 <body>  
                                   
                                 <p>  
                                 KDE has some nice sound utilities, including the KDE sound mixer  
                                 <c>kmix</c>.    
                                 </p>  
   
                                 <note>If kmix cannot find a mixer, then it probably thinks you don't  
                                 have sound support.  Log out and remove <path>~/.kde/share/config/kmixrc</path>  
                                 and <path>~/.kde/share/config/kmix:*</path>  
                                 then log in again.  This time it should find  
                                 the sound mixer properly.  
                                 </note>  
                                   
                                 </body>  
                         </section>  
   
                         <section>  
                                 <title>GNOME and sound</title>  
                                 <body>  
   
                                 <p>Coming in next revision.  
                                 </p>  
   
                                 </body>  
                         </section>  
         </chapter>  
   
         <chapter>  
                 <title>Mail</title>  
                         <section>  
                                 <title>Postfix -- Install and Configure</title>  
                                 <body>  
                                   
                                 <p>  
                                 I happen to like the <c>postfix</c> mail system because it emulates  
                                 <c>sendmail</c> without the considerable nightmare of having to  
                                 configure <c>sendmail</c>.  While we're at it we'll also install  
                                 <c>mutt</c>, a mail reader, so that we can test out our  
                                 <c>postfix</c> configuration.  
                                 </p>  
798    
799                                  <pre caption = "Emerging postfix and mutt">  <p>
800    Reboot, and see if X/GNOME comes up!
801    </p>
802    
803    <impo>
804    The <c>rc-update</c> command is Gentoo Linux's improved version of
805    the venerable <c>chkconfig</c> command for managing init scripts.  Type
806    <c>rc-update</c> by itself for a list of options.
807    </impo>
808    
809    </body>
810    </section>
811    </chapter>
812    
813    <chapter>
814    <title>Sound Configuration</title>
815    <section>
816    <title>Alsa</title>
817    <body>
818    
819    <p>
820    To install ALSA, please refer to the <uri link="http://www.gentoo.org/doc/alsa-guide.html">
821    Gentoo Linux ALSA setup guide</uri>.
822    </p>
823    
824    </body>
825    </section>
826    <section>
827    <title>KDE and sound</title>
828    <body>
829    
830    <p>
831    KDE has some nice sound utilities, including the KDE sound mixer
832    <c>kmix</c>.  
833    </p>
834    
835    <note>
836    If kmix cannot find a mixer, then it probably thinks you don't
837    have sound support.  Log out and remove <path>~/.kde/share/config/kmixrc</path>
838    and <path>~/.kde/share/config/kmix:*</path> then log in again.  This time it
839    should find the sound mixer properly.
840    </note>
841    
842    </body>
843    </section>
844    <section>
845    <title>GNOME and sound</title>
846    <body>
847    
848    <p>
849    You may want to try <c>gnome-alsamixer</c> to set up your volume levels.
850    It is part of the <path>media-sound/gnome-alsamixer</path> package.
851    </p>
852    
853    </body>
854    </section>
855    </chapter>
856    
857    <chapter>
858    <title>Mail</title>
859    <section>
860    <title>Postfix -- Install and Configure</title>
861    <body>
862    
863    <p>
864    I happen to like the <c>postfix</c> mail system because it emulates
865    <c>sendmail</c> without the considerable nightmare of having to
866    configure <c>sendmail</c>.  While we're at it we'll also install
867    <c>mutt</c>, a mail reader, so that we can test out our
868    <c>postfix</c> configuration.
869    </p>
870    
871    <pre caption = "Emerging postfix and mutt">
872  # <i>emerge postfix mutt</i>  # <i>emerge postfix mutt</i>
873  </pre>  </pre>
874    
875                                  <p>If you only intend to use your mail server for sending mail,  <p>
876                                  then postfix is already set up for you.  Otherwise, you'll  If you only intend to use your mail server for sending mail,
877                                  want to edit <path>/etc/postfix/main.cf</path>.  The  then postfix is already set up for you.  Otherwise, you'll
878                                  <path>main.cf</path> file is reasonably well documented, and  want to edit <path>/etc/postfix/main.cf</path>.  The
879                                  the defaults are reasonable for a standalone machine.  If  <path>main.cf</path> file is reasonably well documented, and
880                                  your workstation is directly on the internet (i.e., having  the defaults are reasonable for a standalone machine.  If
881                                  its own non-private IP address and DNS name) then the only  your workstation is directly on the internet (i.e., having
882                                  change you will probably have to make is enabling postfix to receive  its own non-private IP address and DNS name) then the only
883                                  mail.  change you will probably have to make is enabling postfix to receive
884                                  </p>  mail.
885    </p>
886    
887                                  <pre caption="Turning on mail reception in main.cf">  <pre caption="Turning on mail reception in main.cf">
888  # RECEIVING MAIL  # RECEIVING MAIL
889    
890  # The inet_interfaces parameter specifies the network interface  # The inet_interfaces parameter specifies the network interface
# Line 762  DISPLAYMANAGER=gdm Line 900  DISPLAYMANAGER=gdm
900  </pre>  </pre>
901    
902    
903                                  </body>  </body>
904                          </section>  </section>
905    <section>
906    <title>Postfix Testing (with Mutt)</title>
907    <body>
908    
909                          <section>  <p>
910                                  <title>Postfix Testing (with Mutt)</title>  Let's see if it works.
911                                  <body>  </p>
                                   
                                 <p>Let's see if it works.  
                                 </p>  
912    
913                                  <pre caption = "Testing Postfix">  <pre caption = "Testing Postfix">
914  # <i>postfix check</i>  # <i>postfix check</i>
915  # <i>newaliases</i>  # <i>newaliases</i>
916  # <i>postfix start</i>  # <i>postfix start</i>
# Line 788  test Line 926  test
926  # <i>mutt</i>  # <i>mutt</i>
927  <comment>[You should see your message]</comment>  <comment>[You should see your message]</comment>
928  </pre>  </pre>
                           
                                 <p>By using <c>postfix check</c> we make sure that <path>main.cf</path>  
                                 parses properly and a number of important directories are created.  
                                 Running <c>newaliases</c> sets up the system mail aliases, and  
                                 <c>postfix start</c> then starts the mailer.  I then used  
                                 <c>mutt</c> (in <c>mailx</c>, or old-fashioned <c>mail</c>, mode)  
                                 to send a message to myself on the local machine.  Along the way  
                                 <c>mutt</c> creates the user's (root's, in this case) mail spool  
                                 directory, <path>~/.maildir</path>.  Running <c>mutt</c> in  
                                 full interactive mode then showed me my message, so at least local  
                                 sending and delivery is working.  I then sent mail to one of my  
                                 non-local email addresses (not shown) and verified that the mail  
                                 did, indeed, get there.  
                                 </p>  
                                   
                                 <warn>If you send mail to an account using the default  
                                 <path>main.cf</path> from a machine on a private network, then  
                                 it is possible you will never see it.  Many mail servers automatically  
                                 reject mail coming from a source that can't be reached by reverse-DNS.  
                                 </warn>  
   
                                 <p>Assuming everything is working, then it's time to set up postfix  
                                 so that it starts at boot time.  
                                 </p>  
929    
930                                  <pre caption = "Configuring Postfix to start at boot">  <p>
931    By using <c>postfix check</c> we make sure that <path>main.cf</path>
932    parses properly and a number of important directories are created.
933    Running <c>newaliases</c> sets up the system mail aliases, and
934    <c>postfix start</c> then starts the mailer.  I then used
935    <c>mutt</c> (in <c>mailx</c>, or old-fashioned <c>mail</c>, mode)
936    to send a message to myself on the local machine.  Along the way
937    <c>mutt</c> creates the user's (root's, in this case) mail spool
938    directory, <path>~/.maildir</path>.  Running <c>mutt</c> in
939    full interactive mode then showed me my message, so at least local
940    sending and delivery is working.  I then sent mail to one of my
941    non-local email addresses (not shown) and verified that the mail
942    did, indeed, get there.
943    </p>
944    
945    <warn>
946    If you send mail to an account using the default <path>main.cf</path> from a
947    machine on a private network, then it is possible you will never see it.  Many
948    mail servers automatically reject mail coming from a source that can't be
949    reached by reverse-DNS.
950    </warn>
951    
952    <p>
953    Assuming everything is working, then it's time to set up postfix
954    so that it starts at boot time.
955    </p>
956    
957    <pre caption = "Configuring Postfix to start at boot">
958  # <i>postfix stop</i>  # <i>postfix stop</i>
959  postfix-script: stopping the Postfix mail system  postfix-script: stopping the Postfix mail system
960  # <i>rc-update add postfix default</i>  # <i>rc-update add postfix default</i>
961   * postfix added to runlevel default...  * postfix added to runlevel default...
962   * Caching service dependencies...          [ ok ]  * Caching service dependencies...          [ ok ]
963   * rc-update complete.  * rc-update complete.
964  # <i>/etc/init.d/postfix start</i>  # <i>/etc/init.d/postfix start</i>
965  Starting postfix......     [  ok  ]  Starting postfix......     [  ok  ]
966  </pre>  </pre>
                                   
                                 <impo>Veteran <c>sendmail</c> or <c>postfix</c> junkies may  
                                 be more used to storing mail in  
                                 <path>/var/spool/mail</path> instead of in the user directories,  
                                 and that mail is then stored in <e>mbox</e> format instead of  
                                 in <e>maildir</e> format.  It is not all that hard to reconfigure  
                                 <c>postfix</c> and <c>mutt</c> to use the standard unix mailbox  
                                 system (<e>mbox</e>) format instead.  Edit <path>/etc/postfix/main.cf</path>  
                                 to comment out <i>home_mailbox</i> and uncomment  
                                 <i>mail_spool_directory = /var/spool/mail</i>.  
                                 Make the mail spool directory with  
                                 <c>mkdir -p /var/spool/mail</c> and restart <c>postfix</c>.  
                                 That will take care of the mailer, for <c>mutt</c> you just  
                                 have to edit <path>/etc/mutt/Muttrc</path> to use <e>mbox</e>  
                                 with <i>set mbox_type = mbox</i>  
                                 and the <path>/var/spool/mail</path> directory  
                                 with <i>set spoolfile=/var/spool/mail</i>.  
                                 </impo>  
                                   
                                 <p>If you would prefer a GUI mail client, we install a web-based mail server,  
                                 Squirrelmail, later in this guide.  Alternatively, Daniel Robbins highly  
                                 recommends a combination of IMAP (which we install below as a prerequisite to  
                                 Squirrelmail) and KDE's <c>kmail</c> client.  The kmail program is part of  
                                 <path>kde-base/kdenetwork</path>.  
                                 </p>  
           
                                 <p>Below we will also install Ximian's <e>Evolution</e> as our Personal Information Management  
                                 software of choice, complete with Palm pilot support.  It, too, can serve as an  
                                 excellent mail client.  
                                 </p>  
                           
                         </body>  
                 </section>  
         </chapter>  
   
         <chapter>  
                 <title>Samba</title>  
                           
                         <section>  
                                 <title>Installing/Configuring Samba</title>  
                                 <body>  
                           
                                 <p>Samba is a remarkable package that lets your linux box share files  
                                 and printers with MS Windows machines.  For more detailed information read  
                                 the Samba articles by Daniel Robbins at <uri>http://www.ibm.com/developerworks?ca=dgr-Gentoo-dWhp</uri>.  
                                 </p>  
967    
968                                  <pre caption = "Installing Samba">  <impo>
969    Veteran <c>sendmail</c> or <c>postfix</c> junkies may
970    be more used to storing mail in <path>/var/spool/mail</path> instead of in the
971    user directories, and that mail is then stored in <e>mbox</e> format instead of
972    in <e>maildir</e> format.  It is not all that hard to reconfigure
973    <c>postfix</c> and <c>mutt</c> to use the standard unix mailbox
974    system (<e>mbox</e>) format instead.  Edit <path>/etc/postfix/main.cf</path>
975    to comment out <i>home_mailbox</i> and uncomment <i>mail_spool_directory =
976    /var/spool/mail</i>. Make the mail spool directory with <c>mkdir -p
977    /var/spool/mail</c> and restart <c>postfix</c>. That will take care of the
978    mailer, for <c>mutt</c> you just have to edit <path>/etc/mutt/Muttrc</path> to
979    use <e>mbox</e> with <i>set mbox_type = mbox</i> and the
980    <path>/var/spool/mail</path> directory with <i>set
981    spoolfile=/var/spool/mail</i>.
982    </impo>
983    
984    <p>
985    If you would prefer a GUI mail client, we install a web-based mail server,
986    Squirrelmail, later in this guide.  Alternatively, Daniel Robbins highly
987    recommends a combination of IMAP (which we install below as a prerequisite to
988    Squirrelmail) and KDE's <c>kmail</c> client.  The kmail program is part of
989    <path>kde-base/kdenetwork</path>.
990    </p>
991    
992    <p>
993    Below we will also install Ximian's <e>Evolution</e> as our Personal Information
994    Management software of choice, complete with Palm pilot support.  It, too, can
995    serve as an excellent mail client.
996    </p>
997    
998    </body>
999    </section>
1000    </chapter>
1001    
1002    <chapter>
1003    <title>Samba</title>
1004    <section>
1005    <title>Installing/Configuring Samba</title>
1006    <body>
1007    
1008    <p>
1009    Samba is a remarkable package that lets your linux box share files
1010    and printers with MS Windows machines.  For more detailed information read
1011    the Samba articles by Daniel Robbins at
1012    <uri>http://www.ibm.com/developerworks?ca=dgr-Gentoo-dWhp</uri>.
1013    </p>
1014    
1015    <pre caption = "Installing Samba">
1016  # <i>emerge samba</i>  # <i>emerge samba</i>
1017  # <i>rc-update add samba default</i>  # <i>rc-update add samba default</i>
1018  # <i>cd /etc/samba</i>  # <i>cd /etc/samba</i>
1019  # <i>cp smb.conf.example smb.conf</i>  # <i>cp smb.conf.example smb.conf</i>
1020  # <i>nano -w smb.conf</i>  # <i>nano -w smb.conf</i>
1021  </pre>  </pre>
1022                                    
1023                                  <pre caption="smb.conf -- workgroup">  <pre caption="smb.conf -- workgroup">
1024  # workgroup = NT-Domain-Name or Workgroup-Name, eg: REDHAT4  # workgroup = NT-Domain-Name or Workgroup-Name, eg: REDHAT4
1025  workgroup = MYGROUP <comment>[change to match your workgroup]</comment>  workgroup = MYGROUP <comment>[change to match your workgroup]</comment>
1026  </pre>  </pre>
1027                                    
1028                                  <pre caption="smb.conf -- printing with cups">  <pre caption="smb.conf -- printing with cups">
1029  # It should not be necessary to specify the print system type unless  # It should not be necessary to specify the print system type unless
1030  # it is non-standard. Currently supported print systems include:  # it is non-standard. Currently supported print systems include:
1031  # bsd, sysv, plp, lprng, aix, hpux, qnx  # bsd, sysv, plp, lprng, aix, hpux, qnx
1032  ;   printing = bsd  ;   printing = bsd
1033  printing = cups  printing = cups
1034  </pre>  </pre>
1035                                    
1036                                  <pre caption="smb.conf -- encryption">  <pre caption="smb.conf -- encryption">
1037  # You may wish to use password encryption. Please read  # You may wish to use password encryption. Please read
1038  # ENCRYPTION.txt, Win95.txt and WinNT.txt in the Samba documentation.  # ENCRYPTION.txt, Win95.txt and WinNT.txt in the Samba documentation.
1039  # Do not enable this option unless you have read those documents  # Do not enable this option unless you have read those documents
1040  encrypt passwords = yes  encrypt passwords = yes
1041  </pre>  </pre>
                                   
                                 <p>I have fairly minimal Samba needs.  I just want to be able to share  
                                 files between my linux and windows machines, and I want to use my  
                                 linux box as a print server (using <c>cups</c>).  After installing,  
                                 it suffices to make a few minor edits to the <path>/etc/samba/smb.conf</path>  
                                 file.  Specifically, the <e>workgroup</e> variable needs to match the  
                                 workgroup for the windows network (I usually use "OLYMPUS", but "WORKGROUP"  
                                 is the default on windows if I remember correctly), <e>printing</e> needs to be <e>cups</e>  
                                 instead of <e>bsd</e>, and the <e>encrypt passwords = yes</e> line needs  
                                 to be uncommented.  Windows machines use encrypted passwords by default,  
                                 so that last change is essential unless you want to hack the Windows  
                                 registry on all of your windows machines <comment>[not recommended]</comment>.  
                                 Unfortunately, Windows uses a different encryption method for passwords than  
                                 does Linux, so you have to maintain a separate password file for samba.  
                                 </p>  
1042    
1043                                  <pre caption = "Adding users in Samba">  <p>
1044    I have fairly minimal Samba needs.  I just want to be able to share
1045    files between my linux and windows machines, and I want to use my
1046    linux box as a print server (using <c>cups</c>).  After installing,
1047    it suffices to make a few minor edits to the <path>/etc/samba/smb.conf</path>
1048    file.  Specifically, the <e>workgroup</e> variable needs to match the
1049    workgroup for the windows network (I usually use "OLYMPUS", but "WORKGROUP"
1050    is the default on windows if I remember correctly), <e>printing</e> needs to be
1051    <e>cups</e> instead of <e>bsd</e>, and the <e>encrypt passwords = yes</e> line
1052    needs to be uncommented.  Windows machines use encrypted passwords by default,
1053    so that last change is essential unless you want to hack the Windows
1054    registry on all of your windows machines <comment>[not recommended]</comment>.
1055    Unfortunately, Windows uses a different encryption method for passwords than
1056    does Linux, so you have to maintain a separate password file for samba.
1057    </p>
1058    
1059    <pre caption = "Adding users in Samba">
1060  # <i>smbpasswd -a grant</i> <comment>[Replace "grant" with your user name]</comment>  # <i>smbpasswd -a grant</i> <comment>[Replace "grant" with your user name]</comment>
1061  New SMB password:  New SMB password:
1062  Retype new SMB password:  Retype new SMB password:
1063  Added user grant.  Added user grant.
1064  </pre>  </pre>
1065    
1066                                  <note>  <note>
1067                                  Before adding a user to samba's password list that user must first be  Before adding a user to samba's password list that user must first be
1068                                  listed in <path>/etc/passwd</path>.  listed in <path>/etc/passwd</path>.
1069                                  </note>  </note>
1070    
1071                                  <p>For each user that you want to be able to use samba from a windows machine  <p>
1072                                  you need to run the <c>smbpasswd</c> command.  Samba stores passwords in  For each user that you want to be able to use samba from a windows machine
1073                                  <path>/etc/samba/private/smbpasswd</path>, which will be created for you  you need to run the <c>smbpasswd</c> command.  Samba stores passwords in
1074                                  the first time you run the <c>smbpasswd</c> command.  <path>/etc/samba/private/smbpasswd</path>, which will be created for you
1075                                  </p>  the first time you run the <c>smbpasswd</c> command.
1076                                    </p>
1077                                  <pre caption = "Starting Samba">  
1078    <pre caption = "Starting Samba">
1079  # <i>/etc/init.d/samba start</i>  # <i>/etc/init.d/samba start</i>
1080  Starting samba...        [  ok  ]  Starting samba...        [  ok  ]
1081  </pre>  </pre>
1082    
1083                                  <p>Start samba, and you should be able to connect to your Gentoo Linux  <p>
1084                                  box from any of your windows machines and see the home directory for  Start samba, and you should be able to connect to your Gentoo Linux
1085                                  whatever user you connect as and also whatever printers you have set up.  box from any of your windows machines and see the home directory for
1086                                  If you can't connect, take a look at  whatever user you connect as and also whatever printers you have set up.
1087                                  <path>/usr/share/doc/samba-2.2.5-r1/full_docs/textdocs/DIAGNOSIS.txt.gz</path>  If you can't connect, take a look at
1088                                  for additional help.  <path>/usr/share/doc/samba-2.2.5-r1/full_docs/textdocs/DIAGNOSIS.txt.gz</path>
1089                                  </p>  for additional help.
1090                                    </p>
1091                                  </body>  
1092                          </section>  </body>
1093                  </chapter>  </section>
1094    </chapter>
1095                  <chapter>  
1096                          <title>Apache and Squirrelmail Webmail</title>  <chapter>
1097                          <section>  <title>Apache and Squirrelmail Webmail</title>
1098                                  <title>Apache with SSL and PHP</title>  <section>
1099                                    <title>Apache with SSL and PHP</title>
1100                                  <body>  <body>
1101                                    
1102                                  <p>Assuming that you have a static IP address (or you use a service  <p>
1103                                  such as dyndns with your dynamic IP address), then you might want an  Assuming that you have a static IP address (or you use a service
1104                                  effective way to check your e-mail when you're out of town.  The  such as dyndns with your dynamic IP address), then you might want an
1105                                  solution that I have chosen is to set up a webmail server,  effective way to check your e-mail when you're out of town.  The
1106                                  Squirrelmail, that I can access remotely using any web browser.  solution that I have chosen is to set up a webmail server,
1107                                  </p>  Squirrelmail, that I can access remotely using any web browser.
1108                                    </p>
1109                                  <p>The first step is to install a web server.  Most of the  
1110                                  rest of the world uses Apache; we will too.  We will also  <p>
1111                                  install PHP (PHP4, actually) at the same time, since Squirrelmail  The first step is to install a web server.  Most of the
1112                                  is a PHP program.  The version numbers shown in the code listing  rest of the world uses Apache; we will too.  We will also
1113                                  below might be different by the time you read this.  Please  install mod_php (PHP-support for Apache) at the same time, since
1114                                  adjust them accordingly.  Don't just copy and paste the commands  Squirrelmail is a PHP program.  
1115                                  into your terminal!  </p>
1116                                  </p>  
1117    <pre caption = "Installing and configuring Apache">
1118                                  <pre caption = "Installing and configuring Apache">  # <i>emerge apache mod_php</i>
1119  # <i>emerge apache php mod_php</i>  </pre>
1120  # <i>ebuild /var/db/pkg/dev-php/mod_php-4.2.2-r1/mod_php-4.2.2-r1.ebuild config</i>  
1121  </pre>  <p>
1122                                    You should take a good look at <path>/etc/apache2/conf/apache2.conf</path>,
1123                                  <p>You should take a good look at <path>/etc/apache2/conf/apache2.conf</path>,  since Apache is very customizable.  By default the Apache document root
1124                                  since Apache is very customizable.  By default the Apache document root  (where it first looks for html files when you connect to
1125                                  (where it first looks for html files when you connect to  http://www.servername.foo or http://localhost) is
1126                                  http://www.servername.foo or http://localhost) is <path>/home/httpd/htdocs</path>;  <path>/var/www/localhost</path>; feel free to relocate it if you wish.
1127                                  feel free to relocate it if you wish.  </p>
1128                                  </p>  
1129                                    <pre caption="/etc/apache2/conf/apache2.conf">
                                 <pre caption="/etc/apache/conf/apache.conf">  
1130  # Do NOT add a slash at the end of the directory path.  # Do NOT add a slash at the end of the directory path.
1131  #  #
1132  DocumentRoot "/home/httpd/htdocs" <comment>(edit this line if desired)</comment>  DocumentRoot "/var/www/localhost" <comment>(edit this line if desired)</comment>
1133  </pre>  </pre>
1134                                    
1135                                  <pre caption = "Making Apache start at boot">  <pre caption = "Making Apache start at boot">
1136  # <i>rc-update add apache2 default</i>  # <i>rc-update add apache2 default</i>
1137   * apache2 added to runlevel default...  * apache2 added to runlevel default...
1138   * Caching service dependencies...               [ ok ]  * Caching service dependencies...               [ ok ]
1139   * rc-update complete.  * rc-update complete.
1140  # <i>nano -w /etc/conf.d/apache2</i>  # <i>nano -w /etc/conf.d/apache2</i>
1141  </pre>  </pre>
1142                                    
1143                          <p>Use <c>rc-update</c> to add Apache to the default runlevel,  and then  <p>
1144                          edit <path>/etc/conf.d/apache2</path> to add the following lines so that Apache  Use <c>rc-update</c> to add Apache to the default runlevel,  and then
1145                          automatically loads the SSL and PHP modules at start-up.  edit <path>/etc/conf.d/apache2</path> to add the following lines so that Apache
1146                          </p>  automatically loads the SSL and PHP modules at start-up.
1147                            </p>
1148                          <pre caption="/etc/conf.d/apache">  
1149  APACHE_OPTS="-D SSL -D PHP4"  <pre caption="/etc/conf.d/apache2">
1150    APACHE2_OPTS="-D SSL -D PHP4"
1151  </pre>  </pre>
1152    
1153                          <pre caption = "Restarting Apache">  <pre caption = "Restarting Apache">
1154  # <i>/etc/init.d/apache2 start</i>  # <i>/etc/init.d/apache2 start</i>
1155   * Starting Apache...                            [ OK ]  * Starting Apache...                            [ OK ]
1156  # <i>lynx localhost</i>  # <i>links localhost</i>
1157  </pre>  </pre>
1158                            
1159                          <p>You can check to make sure your Apache web server is working  <p>
1160                          by using any browser to connect to localhost.  To make sure that SSL support  You can check to make sure your Apache web server is working
1161                          is functional, use a browser to connect to <uri>http<comment>s</comment>://localhost</uri>.  by using any browser to connect to localhost.  To make sure that SSL support
1162                          The <c>https</c> prefix tells the browser to make a <e>secure</e> connection  is functional, use a browser to connect to
1163                          to the server using SSL.  Graphical browsers will have a padlock icon somewhere  <uri>http<comment>s</comment>://localhost</uri>. The <c>https</c> prefix tells
1164                          indicating the secure connection.  the browser to make a <e>secure</e> connection to the server using SSL.  
1165                          </p>  Graphical browsers will have a padlock icon somewhere indicating the secure
1166                            connection.
1167                          <note>When making a secure connection to your server, you will most likely receive  </p>
1168                          a warning that the site's security certificate is not recognized.  The ssl modules  
1169                          installs a self-signed security certificate, which is intended to be used for  <note>
1170                          testing purposes only. For personal use a self-signed  When making a secure connection to your server, you will most likely receive
1171                          certificate is just fine.</note>  a warning that the site's security certificate is not recognized.  The ssl
1172                            modules installs a self-signed security certificate, which is intended to be
1173                          <p>Now we need to make sure that PHP is working correctly.  The first step  used for testing purposes only. For personal use a self-signed certificate is
1174                          is to create a simple PHP file and put it in the Apache DocumentRoot directory.  just fine.
1175                          </p>  </note>
1176    
1177                          <pre caption = "Testing PHP">  <p>
1178  # <c>nano -w /home/httpd/htdocs/test.php</c>  Now we need to make sure that PHP is working correctly.  The first step
1179  &lt;? phpinfo(); ?&gt;  is to create a simple PHP file and put it in the Apache DocumentRoot directory.
1180  # <c>lynx http://localhost/test.php</c>  </p>
1181  </pre>  
1182    <pre caption = "Testing PHP">
1183                          <pre caption="working Apache + PHP">  # <i>nano -w /var/www/localhost/test.php</i>
1184                                                                phpinfo() (p1 of 26)  &lt;?php phpinfo(); ?&gt;
1185                                    PHP Logo  # <i>links http://localhost/test.php</i>
1186            </pre>
1187                                   PHP Version 4.0.6  
1188    <pre caption="working Apache + PHP">
1189       System Linux my.server.edu 2.4.10 #1 Tue Oct 9 16:33:50 Local  phpinfo() (p1 of 26)
1190                  time zone must be set--see zic manuali686 i686 unknown  PHP Logo
1191                                 Build Date Oct 16 2001  
1192  </pre>  PHP Version 4.0.6
1193                            
1194                          <p>If you see something like the above, then Apache is successfully  System Linux my.server.edu 2.4.10 #1 Tue Oct 9 16:33:50 Local
1195                          processing PHP code.  time zone must be set--see zic manuali686 i686 unknown
1196                          </p>  Build Date Oct 16 2001
1197                    </pre>
1198                          <warn>If you look at the full output of the above, you'll find out that  
1199                          the <path>test.php</path> script gives out a <e>lot</e> of information  <p>
1200                          about your system.  You should probably get rid of it once you know that  If you see something like the above, then Apache is successfully
1201                          php is working.  (Or you can do what I do, and just <c>mv test.php test.phps</c>.  processing PHP code.
1202                          Apache will display <path>test.phps</path> as a PHP source file instead  </p>
1203                          of executing the script.)  
1204                          </warn>  <warn>
1205    If you look at the full output of the above, you'll find out that
1206                          </body>  the <path>test.php</path> script gives out a <e>lot</e> of information
1207                  </section>  about your system.  You should probably get rid of it once you know that
1208            php is working.  (Or you can do what I do, and just <c>mv test.php
1209                  <section>  test.phps</c>. Apache will display <path>test.phps</path> as a PHP source file
1210                          <title>Courier IMAP</title>  instead of executing the script.)
1211                          <body>  </warn>
1212                            
1213                          <p>Squirrelmail is a PHP application, but it relies on an IMAP server  </body>
1214                          as the glue between the web server and e-mail.  Since Gentoo linux  </section>
1215                          uses Maildir mail folders by default, Courier IMAP is a good choice.</p>  <section>
1216                            <title>Courier IMAP</title>
1217                          <pre caption = "Emerging/testing Courier-imap">  <body>
1218    
1219    <p>
1220    Squirrelmail is a PHP application, but it relies on an IMAP server
1221    as the glue between the web server and e-mail.  Since Gentoo linux
1222    uses Maildir mail folders by default, Courier IMAP is a good choice.
1223    </p>
1224    
1225    <pre caption = "Emerging/testing Courier-imap">
1226  # <i>emerge courier-imap</i>  # <i>emerge courier-imap</i>
1227  # <i>rc-update add courier-imapd default</i>  # <i>rc-update add courier-imapd default</i>
1228   * courier-imapd added to runlevel default...  * courier-imapd added to runlevel default...
1229   * Caching service dependencies...                        [ ok ]  * Caching service dependencies...                        [ ok ]
1230   * rc-update complete.  * rc-update complete.
1231  # <i>nano -w /etc/courier-imap/authdaemonrc</i>  # <i>nano -w /etc/courier-imap/authdaemonrc</i>
1232  # <i>/etc/init.d/courier-imapd start</i>  # <i>/etc/init.d/courier-imapd start</i>
1233  # <i>telnet localhost 143</i>  # <i>telnet localhost 143</i>
# Line 1089  and "passwd" w/ your password)</comment> Line 1241  and "passwd" w/ your password)</comment>
1241  1 OK LOGIN OK  1 OK LOGIN OK
1242  <comment>(Hit &lt;ctrl&gt;-"]" and type "quit" to exit)</comment>  <comment>(Hit &lt;ctrl&gt;-"]" and type "quit" to exit)</comment>
1243  </pre>  </pre>
1244                            
1245                          <pre caption="Correct authorization in /etc/courier-imap/authdaemonrc">  <pre caption="Correct authorization in /etc/courier-imap/authdaemonrc">
1246  ##NAME: authmodulelist:0  ##NAME: authmodulelist:0
1247  #  #
1248  # The authentication modules that are linked into authdaemond.  The  # The authentication modules that are linked into authdaemond.  The
# Line 1101  and "passwd" w/ your password)</comment> Line 1253  and "passwd" w/ your password)</comment>
1253  #authmodulelist="authcustom authcram authuserdb authpam"  #authmodulelist="authcustom authcram authuserdb authpam"
1254  authmodulelist="authpam"  authmodulelist="authpam"
1255  </pre>  </pre>
1256                            
1257                          <impo>Courier IMAP usually hardwires the name of the user's Maildir-type  <impo>
1258                          inbox directory that is used in its rc start-up script,  Courier IMAP usually hardwires the name of the user's Maildir-type
1259                          <path>/usr/lib/courier-imap/imapd.rc</path>, to be <path>$HOME/Maildir</path>.    inbox directory that is used in its rc start-up script,
1260                          Gentoo linux, however, uses $HOME/.maildir instead, so the courier-imap ebuild  <path>/usr/lib/courier-imap/imapd.rc</path>, to be <path>$HOME/Maildir</path>.  
1261                          modifies the <path>imapd.rc</path> script to use <e>$MAILDIR</e>, which it obtains  Gentoo linux, however, uses $HOME/.maildir instead, so the courier-imap ebuild
1262                          from the Gentoo init script <path>/etc/init.d/courier-imap</path>.  If you choose  modifies the <path>imapd.rc</path> script to use <e>$MAILDIR</e>, which it
1263                          to use a home user's mailbox other than <path>.maildir</path>, you'll need to modify  obtains from the Gentoo init script <path>/etc/init.d/courier-imap</path>.  If
1264                          the <e>MAILDIR=.maildir</e> entry in courier-imap's init script.</impo>  you choose to use a home user's mailbox other than <path>.maildir</path>, you'll
1265                            need to modify the <e>MAILDIR=.maildir</e> entry in courier-imap's init script.
1266                          <p>If you want Courier IMAP to have SSL support you just need to make  </impo>
1267                          the IMAP SSL certificate (and tell courier-imap where to find it),  
1268                          </p>  <p>
1269                            If you want Courier IMAP to have SSL support you just need to make
1270                          <pre caption = "Making SSL Certs for IMAP">  the IMAP SSL certificate (and tell courier-imap where to find it),
1271    </p>
1272    
1273    <pre caption = "Making SSL Certs for IMAP">
1274  # <i>/usr/sbin/mkimapdcert</i>  # <i>/usr/sbin/mkimapdcert</i>
1275  </pre>  </pre>
                           
                         <p>and then start up imap-ssl.  
                         </p>  
1276    
1277                          <pre caption = "Adding Courier IMAP to default">  <p>
1278    and then start up imap-ssl.
1279    </p>
1280    
1281    <pre caption = "Adding Courier IMAP to default">
1282  # <i>rc-update add courier-imapd-ssl default</i>  # <i>rc-update add courier-imapd-ssl default</i>
1283  # <i>/etc/init.d/courier-imapd-ssl start</i>  # <i>/etc/init.d/courier-imapd-ssl start</i>
1284  </pre>  </pre>
                           
                         <p>You can verify that imap is working by using any  
                         IMAP-enabled mail client, such as netscape, kmail,  
                         or mutt.  
                         </p>  
1285    
1286                          <pre caption = "Checking your IMAP Server">  <p>
1287    You can verify that imap is working by using any IMAP-enabled mail client, such
1288    as netscape, kmail, or mutt.
1289    </p>
1290    
1291    <pre caption = "Checking your IMAP Server">
1292  # <i>mutt -f imap://localhost</i>  # <i>mutt -f imap://localhost</i>
1293  </pre>  </pre>
1294    
1295                          <pre caption = "Checking your SSL IMAP Server">  <pre caption = "Checking your SSL IMAP Server">
1296  # <i>mutt -f imaps://localhost</i>  # <i>mutt -f imaps://localhost</i>
1297  </pre>  </pre>
                 </body>  
         </section>  
1298    
1299          <section>  </body>
1300                  <title>Squirrelmail</title>  </section>
1301                  <body>  <section>
1302                    <title>Squirrelmail</title>
1303                  <p>Fortunately, installing and configuring  <body>
                 Squirrelmail, once all of the components are in  
                 place, is straightforward.  
                 </p>  
1304    
1305                  <pre caption = "Emerging Squirrelmail">  <p>
1306    Fortunately, installing and configuring Squirrelmail, once all of the components
1307    are in place, is straightforward.
1308    </p>
1309    
1310    <pre caption = "Emerging Squirrelmail">
1311  # <i>emerge squirrelmail</i>  # <i>emerge squirrelmail</i>
1312  # <i>cd /home/httpd/htdocs</i>  # <i>cd /var/www/localhost</i>
1313  # <i>cd squirrelmail</i>  # <i>cd squirrelmail</i>
1314  # <i>./configure</i>  # <i>./configure</i>
1315  </pre>  </pre>
                   
                 <note>If your Apache DocumentRoot is not <path>/home/httpd/htdocs</path>,  
                 you will want to edit the <path>net-mail/squirrelmail</path> ebuild  
                 to point there.</note>  
   
                 <p>For squirrelmail to work correctly, you need to make sure that  
                 all of the files are owned by the user that Apache runs  
                 as (the squirrelmail ebuild assumes that user is "apache").  
                 Use <c>./configure</c> to select option <e>2</e>.</p>  
1316    
1317                  <pre caption="Squirrelmail configuration -- Server settings">  <note>
1318    If your Apache DocumentRoot is not <path>/var/www/localhost</path>,
1319    you will want to edit the <path>net-mail/squirrelmail</path> ebuild
1320    to point there.
1321    </note>
1322    
1323    <p>
1324    For squirrelmail to work correctly, you need to make sure that
1325    all of the files are owned by the user that Apache runs
1326    as (the squirrelmail ebuild assumes that user is "apache").
1327    Use <c>./configure</c> to select option <e>2</e>.
1328    </p>
1329    
1330    <pre caption="Squirrelmail configuration -- Server settings">
1331  SquirrelMail Configuration : Read: config.php  SquirrelMail Configuration : Read: config.php
1332  ---------------------------------------------------------  ---------------------------------------------------------
1333  Server Settings  Server Settings
# Line 1186  R   Return to Main Menu Line 1346  R   Return to Main Menu
1346  C.  Turn color off  C.  Turn color off
1347  S   Save data  S   Save data
1348  Q   Quit  Q   Quit
1349    
1350  Command >>  Command >>
1351  </pre>  </pre>
1352    
1353                  <p>Make sure that <e>Server</e> is set to <e>courier</e>.  <p>
1354                  Return to the main menu and select option <e>4</e>, General  Make sure that <e>Server</e> is set to <e>courier</e>. Return to the main menu
1355                  Options.  and select option <e>4</e>, General Options.
1356                  </p>  </p>
1357    
1358                  <pre caption="Squirrelmail configuration -- General options">  <pre caption="Squirrelmail configuration -- General options">
1359  SquirrelMail Configuration : Read: config.php  SquirrelMail Configuration : Read: config.php
1360  ---------------------------------------------------------  ---------------------------------------------------------
1361  General Options  General Options
# Line 1204  General Options Line 1364  General Options
1364  3.  Attachment Directory   : /tmp/  3.  Attachment Directory   : /tmp/
1365  4.  Default Left Size      : 150  4.  Default Left Size      : 150
1366  5.  Usernames in Lowercase : false  5.  Usernames in Lowercase : false
1367    
1368  R   Return to Main Menu  R   Return to Main Menu
1369  C.  Turn color off  C.  Turn color off
1370  S   Save data  S   Save data
1371  Q   Quit  Q   Quit
1372    
1373  Command >>  Command >>
1374  </pre>  </pre>
1375                    
1376                  <p>I use the data directory in the package, although it would be  <p>
1377                  better security to use one outside the Apache document tree.  I  I use the data directory in the package, although it would be better security to
1378                  also use <path>/tmp</path> as my directory to store attachments.  use one outside the Apache document tree. I also use <path>/tmp</path> as my
1379                  </p>  directory to store attachments.
1380    </p>
1381                  <p>Now we just need to restart Apache, and we will be ready to go! </p>  
1382                    <p>
1383                  <pre caption = "Restarting Apache">  Now we just need to restart Apache, and we will be ready to go!
1384    </p>
1385    
1386    <pre caption = "Restarting Apache">
1387  # <i>/etc/init.d/apache2 restart</i>  # <i>/etc/init.d/apache2 restart</i>
1388  </pre>  </pre>
1389    
1390                  <p>Now you can browse to <uri>https://localhost/squirrelmail/src/login.php</uri>, and it should work!</p>  <p>
1391    Now you can browse to <uri>https://localhost/squirrelmail/src/login.php</uri>,
1392    and it should work!
1393    </p>
1394    
1395    <pre caption = "Testing Squirrelmail">
1396    # <i>links https://localhost/squirrelmail/</i>
1397    </pre>
1398    
1399    <pre caption="Squirrelmail login page">
1400    SquirrelMail - Login
1401    [sm_logo.jpg]
1402    
1403    SquirrelMail version 1.2.0 [rc2]
1404    By the SquirrelMail Development Team
1405    
1406                  <pre caption = "Testing Squirrelmail">  SquirrelMail Login
1407  # <i>lynx https://localhost/squirrelmail/</i>  
1408    Name: ____________________
1409    Password: ____________________
1410    
1411    Login
1412  </pre>  </pre>
1413    
1414                  <pre caption="Squirrelmail login page">  <p>
1415                                             SquirrelMail - Login  (I don't really suggest using links with Squirrelmail, but you could!)
1416                                     [sm_logo.jpg]  </p>
1417    
1418                        SquirrelMail version 1.2.0 [rc2]  </body>
1419                          By the SquirrelMail Development Team  </section>
   
                              SquirrelMail Login  
   
        Name: ____________________  
  Password: ____________________  
   
                                        Login  
 </pre>  
   
                 <p>(I don't really suggest using lynx with Squirrelmail, but you could!)</p>  
                   
                 </body>  
         </section>  
1420  </chapter>  </chapter>
1421    
1422          <chapter>  <chapter>
1423                  <title>Personal Information Management</title>  <title>Personal Information Management</title>
1424                    <section>
1425                  <section>  <title>Evolution with Palm support</title>
1426                          <title>Evolution with Palm support</title>  <body>
                         <body>  
   
                         <p>Evolution is an exceptionally nice Personal Information Management  
                         tool that syncs with a Palm pilot quite well.  The first step is  
                         to emerge evolution.  If you do intend to use evolution with a  
                         Palm pilot, make sure "pda" is in your USE variables in  
                         <path>/etc/make.conf</path> before emerging evolution.  
                         </p>  
1427    
1428                          <pre caption = "Emerging Evolution">  <p>
1429    Evolution is an exceptionally nice Personal Information Management
1430    tool that syncs with a Palm pilot quite well.  The first step is
1431    to emerge evolution.  If you do intend to use evolution with a
1432    Palm pilot, make sure "pda" is in your USE variables in
1433    <path>/etc/make.conf</path> before emerging evolution.
1434    </p>
1435    
1436    <pre caption = "Emerging Evolution">
1437  # <i>emerge --pretend evolution</i>  # <i>emerge --pretend evolution</i>
1438  # <i>emerge evolution</i>  # <i>emerge evolution</i>
1439  </pre>  </pre>
1440    
1441                          <p>Unfortunately, the evolution build takes slightly longer than forever  <p>
1442                          (notice that <c>mozilla</c> is a dependency!); have several gallons of  Unfortunately, the evolution build takes slightly longer than forever
1443                          coffee/tea while you wait.  (notice that <c>mozilla</c> is a dependency!); have several gallons of
1444                          </p>  coffee/tea while you wait.
1445    </p>
1446                          <p>While building <c>evolution</c> the necessary Palm pilot tools should have been  
1447                          built as well.  To make sure that regular users can sync a pilot we need to make  <p>
1448                          a couple of changes to the serial port permissions.  I'll assume your Palm cradle  While building <c>evolution</c> the necessary Palm pilot tools should have been
1449                          plugs into the first serial port (/dev/ttyS0, or /dev/tts/0 in "devfs" notation).  built as well.  To make sure that regular users can sync a pilot we need to make
1450                          </p>  a couple of changes to the serial port permissions.  I'll assume your Palm
1451    cradle plugs into the first serial port (/dev/ttyS0, or /dev/tts/0 in "devfs"
1452    notation).
1453    </p>
1454    
1455                          <pre caption = "Adding serial device">  <pre caption = "Adding serial device">
1456  # <i>groupadd serial</i>  # <i>groupadd serial</i>
1457  # <i>chown root.serial /dev/tts/0</i>  # <i>chown root.serial /dev/tts/0</i>
1458  # <i>chmod g+rw /dev/tts/0</i>  # <i>chmod g+rw /dev/tts/0</i>
# Line 1291  crw-rw----    1 root     serial     4, Line 1462  crw-rw----    1 root     serial     4,
1462  # <i>nano -w /etc/group</i> <comment>(add appropriate users to the serial group)</comment>  # <i>nano -w /etc/group</i> <comment>(add appropriate users to the serial group)</comment>
1463  </pre>  </pre>
1464    
1465                          <p>We've added a "serial" group to the system, and you should add any users who need  <p>
1466                          to use the serial port (any Palm pilot users) to the serial group.  We've given  We've added a "serial" group to the system, and you should add any users who
1467                          the serial group "rw" permissions on <path>/dev/tts/0</path>, and for future  need to use the serial port (any Palm pilot users) to the serial group.  We've
1468                          reference we have made a <path>/dev/pilot</path> symbolic link to  given the serial group "rw" permissions on <path>/dev/tts/0</path>, and for
1469                          <path>/dev/tts/0</path>.  Thanks to recent changes in how devfs is handled on  future reference we have made a <path>/dev/pilot</path> symbolic link to
1470                          Gentoo these changes will persist after rebooting.  <path>/dev/tts/0</path>.  Thanks to recent changes in how devfs is handled on
1471                          </p>  Gentoo these changes will persist after rebooting.
1472    </p>
1473                          <note>  
1474                          Users of pre-rc6-r13 can either upgrade <path>sys-apps/baselayout</path>  <note>
1475                          and <path>sys-fs/devfsd</path> (and merge in any "._cfg*" files in  Users of pre-rc6-r13 can either upgrade <path>sys-apps/baselayout</path>
1476                          <path>/etc</path> that result), or simply add the appropriate permissions  and <path>sys-fs/devfsd</path> (and merge in any "._cfg*" files in
1477                          and symlink in <path>/etc/devfsd.conf</path>.  <path>/etc</path> that result), or simply add the appropriate permissions
1478                          </note>  and symlink in <path>/etc/devfsd.conf</path>.
1479    </note>
1480                          <p>Users will want to use the <path>tools/Pilot settings</path> menu option in evolution  
1481                          to set up the Gnome pilot software.  Don't forget to set up the "Pilot Conduits" as  <p>
1482                          well as the "Pilot Link" in the Gnome Control Center.  Users will want to use the <path>tools/Pilot settings</path> menu option in
1483                          </p>  evolution to set up the Gnome pilot software.  Don't forget to set up the "Pilot
1484    Conduits" as well as the "Pilot Link" in the Gnome Control Center.
1485                          </body>  </p>
1486                  </section>  
1487          </chapter>  </body>
1488    </section>
1489    </chapter>
1490  </guide>  </guide>

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.3

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26