1.准备
无须说明,首先你必须已经安装了Gentoo Linux(http://www.gentoo.org/doc/en/build.xml).当你完成那相当有趣的过程之后,你需要去下载 Portage树。你真的应该读一下Portage用户指南(portage-user.xml" target="_blank">http://www.gentoo.org/doc/en/portage-user.xml),但是如果你赶时间,你只需要输入:
代码列表1.1:获取当前的portage树:
代码:
# emerge sync
关于我选择在这儿讨论的包,一个迅速的提示是适宜的。Gentoo Linux有大量的窗口管理器,邮件传送代理,以及其他方便安装的附加软件。我选择的特定的包并不是Gentoo Linux的首选,它们是作者喜欢和(或)知道如何配置的简单的包。换名句说,它们是在作者自己桌面上的包。
重要提示:依赖于你将安装的桌面系统,你可能需要在/etc/make.conf中禁用对你不想使用的桌面支持。在USE部分,如果你想使用KDE,就在其中加入-gnome -gtk,或者你想使用gnome,就在其中加入-kde -qt.
警告:如果你在安装这些包的时候遇到任何臭虫,请报告给http://bugs.gentoo.org/,而不要报告给软件的维护人员(比如KDE),如果必要的话Gentoo的开发者会通过回溯来解决这些臭虫。
2.安装XFree86。
安装
即使是一个快速的系统,安装X的过程也会花去好一些时间。这个系统非常大,所以你要准备好去读一本书或是打个小盹。
要安装X,所有你需要做是输入:
代码列表2.1:安装XFree86
代码:
# emerge xfree
在这个相当长的过程完成后,就要开始配置了。
配置X
我喜欢用基于控制台的xf86config程序来配置X,尽管产生的/etc/X11/XF86Config文件不是很雅致--阅读这个指南是作为可供选择的和更彻底的X配置。在你开始之前,你需要知道你的显示器的水平和垂直刷新率(我的优派G773的行频是:30-69KHz,场频是:55- 90KHz),你的显卡的型号和显存的大小(单位为KB)--我用的是一个32768KB的Geforce显卡,还有你的鼠标的型号。
代码列表2.2:运行xf86config
代码:
# /usr/X11R6/bin/xf86config
因为我有一个三键鼠标,所以我没有选择模拟3键。不要忘记加入XKB的支持,如果你有一个国际键盘或者需要多语言支持。你必须预测到你所喜欢的屏幕分辨率和像素深度。我比较喜欢在我的优派上用24bpp色深和1280x1024的分辨率,但这只是因为它不能工作在更高的分辨率上。如果你以前从来没有做过这些,当你多次运行xf86config才结束时,请不要觉得惊奇。
注意:如果你不知道你的显示器的刷新率,尝试去google搜索一下你显示器的型号和生产商:http://www.google.com/。刷新率通常是显示器规格的一部分。
如果你是一个配置X的老手,你可能习惯于做一个从你的鼠标设备到/dev/mouse的符号链接。这种符号链接对devfs来说可能会出问题,因为在系统重新启动后这个符号链接会丢失。现在Gentoo Linux能够正确地处理使用ln -s的链接,而且它在重启后也可以保留。
如果你选择使用XFS(the XFontServer),请照着下面适当的指导去做。高度推荐使用XFS,因为它可以使字体配置变得更容易。请查阅关于XFS的RedHat文章。
代码列表2.3:测试你的配置
代码:
# rc-update add xfs default
# /etc/init.d/xfs start
# startx
如果你正确地配置了X,运行startx就会启动一个丑得令人惊奇的X窗口管理器(twm,是特定的)。如果X能够启动,你就成功了。按下<ctrl><alt><backspace>杀死X服务。
xf86config只能创建一个缺省的配置选项设置。NVIDIA显卡,USB鼠标和许多其他的选项必须手动设置。我会在下面探究这些选项,但是我鼓励你去找一本关于XF86Config文件的书来看一下。它并不神秘,你可以学会调整一些有趣的设置。去开始调整信息的好方法就在于此。
配置PS/2鼠标
如果你有一个滚轮鼠标,你需要手动编辑XF86Config文件:
代码列表2.4:编辑XF86Config
代码:
# cp /etc/X11/XF86Config /etc/X11/XF86Config.working
# vim /etc/X11/XF86Config
代码列表2.5:XF86Config的指针部分
代码:
Section "InputDevice"
#Identifier and driver
Identifier "Mouse1"
Driver "mouse"
Option "Protocol" "IMPS/2"
Option "Device" "/dev/psaux"
Option "ZAxisMapping" "4 5"
因为我有一个intellimouse,因此我将"Protocol"由"PS/2"改为"IMPS/2"。要使滚轮滚动只要加入'Option "ZAxisMapping" "4 5"'这一行,而'4'和'5'对应于鼠标滚轮的上滚和下滚。
注意:Netscape 4.x在缺省的状态下是不能用滚轮滚动的;你首先需要创建一个.Xdefaults文件。这儿将会指导你怎样进行。然而更好的方法是使用konqueror, opera, mozilla, galeon,或者其他真正的的浏览器。
为了确定X仍然能够启动,请再次运行startx。
配置USB鼠标
在高分辨率下,USB鼠标将会是你的好朋友。内核照顾着缩放比例,因此你不需要多次移动你的越过鼠标垫使鼠标越过屏幕。
必须做的第一件事是内核模块的安装。令USB鼠标工作所需要的模块是usbmouse,mousedev,hid,usbcore,usb-uhci,和input。在必要的内核配置完成后,安装(insmod)模块。
注意:只能使用usbmouse或者hid中的一个。如果你安装了两个,鼠标将会停止工作。
注意:当为鼠标配置输入核心支持时,你要确定能够进入你将在X中使用的分辨率。这将会令所有的缩放比例都很漂亮而且正确。
现在,拔出鼠标后再插入,然后检查你的内核日志中类似下面内容的信息。
代码列表2.6:内核信息
代码:
hub.c: USB new device connect on bus1/1, assigned device number 2
input0,hiddev0: USB HID v1.00 Mouse [Microsoft Microsoft IntelliMouse Optical] on usb1:2.0
现在鼠标已经被检测到,检查一下/dev/input以确定你的鼠标在那儿而且正在工作。
代码列表2.7:检查USB鼠标
代码:
# cd /dev/input
# cat mice
当你cat你的鼠标的时候,请移除这个设备,你会看到很多垃圾信息。
一旦鼠标被正确检测和安装,我们就要告诉X如何去使用USB鼠标。所有被要求的这些对X使用这个鼠标来说只是一个微小的改变。
代码列表2.8:编辑XF86Config
代码:
# cp /etc/X11/XF86Config /etc/X11/XF86Config.working
# vim /etc/X11/XF86Config
代码列表2.9:XF86Config的指针部分
代码:
Section "InputDevice"
# Identifier and driver
Identifier "Mouse1"
Driver "mouse"
Option "Protocol" "IMPS/2"
Option "Device" "/dev/input/mice"
Option "ZAxisMapping" "4 5"
好了,重启X,然后鼠标就可以工作了!
不要忘记在modules.autoload中加入你的鼠标使用的模块。
代码列表2.10:把模块加入modules.autoload
代码:
# echo $'\n'mousedev $'\n'hid $'\n'usbcore $'\n'input >> /etc/modules.autoload
配置你的NVIDIA显卡
如果你有一个NVIDIA显卡,现在就是安装NVIDIA加速驱动的好时机。
注意:如果你重新编译了你的内核,你也必须重新编译nvidia-kernel。这是必须做的,因为新的内核的建立删除了你的nvidia的模块。
代码列表2.11:只给拥有NVIDIA显卡的人
代码:
# emerge nvidia-glx
# emerge nvidia-kernel
# nano -w /etc/X11/XF86Config
# echo "NVdriver" >> /etc/modules.autoload
# modprobe NVdriver
代码列表2.12:在/etc/X11/XF86Config中启用GLX
代码:
Section "Module"
# This loads the GLX module
# Load "glx" (Uncomment this line)
代码列表2.13:在/etc/X11/XF86Config中告诉X使用NVIDIA驱动
代码:
Section "Device"
Identifier "NVIDIA GeForce"
#Driver "nv"
Driver "nvidia"
#VideoRam 32768
# Insert Clocks lines here if appropriate
EndSection
再次运行startx以确定X仍然可以启动(如果你安装了NVIDIA驱动,这次就会有NVIDIA的splash屏幕)。
3。窗口管理器
说明
通常在安装完X后首要做的就是安装一个好的窗口管理器。当然,你也可以使用tvm---如果你想要一个确实难看的(我是指功能上的)窗口管理器的话。
有许多窗口管理可供选择。其中包括KDE, GNOME, Fluxbox, Blackbox,其它*box们,Windowmaker, Sawfish等等。如你所见,在Gentoo Linux中,有一个可用的好的窗口管理器的选择。
KDE
我敢说,如果你正在看这一部分,你正打算安装KDE。Gentoo Linux完全支持KDE,但是有一些在安装KDE之前,有几件事你必须确定:
确定在make.conf中,qt和kde在你的USE变量中。
确定在make.conf中,-gnome和-gtk在你的USE变量中(可选)。
上述两个步骤都可以通过编辑/etc/make.conf来完成,像这样:
代码列表3.1:编辑make.conf
代码:
# vim /etc/make.conf
在make.conf中
代码:
USE="qt kde -gnome -gtk"
想更多地了解USE变量,请参考USE HOWTO。
在做任何一个emerge之前去看看将要安装的依赖性,使用--pretend参数永远是有用的,而且在我们这儿用得相当多。
代码列表3.2:查看KDE包及其依赖性
代码:
# emerge --pretend kde
# emerge kde
注意:当你使用emerge kde-base是要小心。这将只安装基本的KDE包,而不会安装KDE的助手程序。
注意:如果你打算为打印使用CUPs,那么在安装(emerge)KDE之前你可能需要在你的 /etc/make.conf的USE变量中加入"cups"。这也可以通过在命令行输入USE="cups"来完成。请参阅Gentoo Linux打印指南,这是一个完整CUPs安装说明。
好好地睡一下吧!!
注意:如果你有Gentoo Linux的二进制CD,那么你可以直接从Cd中安装软件包。
代码列表3.3:从CD中安装二进制包
代码:
# export PKGDIR=/mnt/cdrom/gentoo/packages
正常情况下,Portage认为软件包在/usr/portage/packages中。
代码:
# emerge --usepkg /mnt/cdrom/gentoo/packages/All/kdebase-x.y.z.tbz2
如果有用的话,--usepkg参数是用来确定为依赖性所使用的二进制包的。
配置KDM
安装完KDE之后,可取的方式是使用一个友好的登录管理器,特定的KDE的登录管理器或者说KDM。KDM是跟KDE的软件包一起安装的,所以你只要这样做就可以运行它:
代码列表3.4:运行KDM
代码:
# kdm
你可以登录并看到KDE完全工作正常。当然声音可能还不能工作,所以你听不到令人讨厌的KDE启动声音,但是我们将会很快地修正这个问题。打开一个 konsole,输入ls /usr/bin(或者任何其他的可以填满konsole窗口的命令),看看在konsole窗口中你的鼠标滚轮是否能够让滚动条上下滚动。它真的可以工作!!!
注意:如果运行kdm时返回"command not found"的信息,那么你只要在那个终端中通过source /etc/profile更新一下$PATH就可以了。
所有留下的事都是为确定X在Gentoo Linux启动的时候能够出现。编辑/etc/rc.conf,令DISPLAYMANAGER="kdm"。
代码列表3.5:编辑/etc/rc.conf
代码:
# vim /etc/rc.conf
代码列表3.6:/etc/rc.conf -- 设置DISPLAYMANAGER
代码:
# What display manager do you use ? [ xdm | gdm | kdm ]
DISPLAYMANAGER=kdm
现在,我们只需要确定xdm的启动脚本在启动时候被读取就行了。
代码列表3.7:在缺省运行级(default runlevel)中加入XDM脚本
代码:
# rc-update add xdm default
重启,然后看看X/KDE启动了没有。
重要提示:rc-update命令是Gentoo Linux由古老的chkconfig改进而来的管理init的脚本。输入rc-update,它就会显示它的参数列表。
4.GNOME
在你开始安装GNOME包之前,你需要编辑你USE变量。这样做可以启用当你编译被支持的应用程序时,GNOME可以为它提供支持。
确定在make.conf中,gtk和gnome在你的USE变量中。
确定在make.conf中,-kde和-qt在你的USE变量中(可选)。
上述两个步骤都可以通过编辑/etc/make.conf来完成,像这样:
代码列表4.1:编辑make.conf
代码:
# vim /etc/make.conf
在make.conf中
USE="-qt -kde gnome gtk"
想更多地了解USE变量,请参考USE HOWTO。
现在,安装必需的GNOME的软件包。
代码列表4.2:安装GNOME包
代码:
# emerge --pretend gnome
# emerge gnome
这将花费好些时间,因此你可以回去看看电影。作者推荐Pulp Fiction。
在此之后,GNOME的配置与KDE基本相同。实在没有任何GNOME的特殊的配置文件,但有GDM这个GNOME的登录管理器要设置。
配置GDM
安装完GNOME之后,可取的方式是使用一个友好的登录管理器,特定的GNOME的登录管理器或者说KDM。GDM是跟GNOME的软件包一起安装的,所以你只要这样做就可以运行它:
代码列表4.3:运行GDM
代码:
# gdm
你可以登录并看到KDE完全工作正常。当然声音可能还不能工作,所以你听不到令人讨厌的GNOME的启动声音,但是我们将会很快地修正这个问题。打开一个终端,输入ls /usr/bin(或者任何其他的可以填满konsol终端窗口的命令),看看在终端窗口中你的鼠标滚轮是否能够让滚动条上下滚动。它真的可以工作!!!
注意:如果运行gdm时返回"command not found"的信息,那么你只要在那个终端中通过source /etc/profile更新一下$PATH就可以了。
所有剩下的事都是为确定X在Gentoo Linux启动的时候能够出现。编辑/etc/rc.conf,令DISPLAYMANAGER="gdm"。
代码列表4.4:编辑/etc/rc.conf
代码:
# vim /etc/rc.conf
代码列表4.5:/etc/rc.conf -- 设置DISPLAYMANAGER
代码:
# What display manager do you use ? [ xdm | gdm | kdm ]
DISPLAYMANAGER=gdm
现在,我们只需要确定xdm的启动脚本在启动时候被读取就行了。
代码列表4.6:在缺省运行级(default runlevel)中加入XDM脚本
代码:
# rc-update add xdm default
重启,然后看看X/GNOME启动了没有。
重要提示:rc-update命令是Gentoo Linux由古老的chkconfig改进而来的管理init的脚本。输入rc-update,它就会显示它的参数列表。
5.声音配置
Alsa
要安装Alsa,请参考这里的Gentoo Linux ALSA安装指南。
KDE和声音
KDE有一些优秀的声音工具包含在KDE的声音混音器kmix中。
注意:如果kmix不能找到一个混音器,那么它可能认为你没有声音支持。注销然后移除~/.kde/share/config/kmixrc和~/.kde/share/config/kmix:* ,然后再次登录。这次它应该可以正确地找到声音混音器了。