标签 Gentoo 下的文章

首先查看自己的CPU是intel的还是AMD的 grep --color -E "vmx|svm" /proc/cpuinfo 注意:INTEL和AMD的在内核中只能同时启用一个,或者都设置为模块加载,否则会报错。

[*] Virtualization  --->
    <*>   Kernel-based Virtual Machine (KVM) support

我的是 INTEL 的所以配置

[*] Virtualization  --->
    <*>   KVM for Intel processors support

网络相关 vhost-net

[*] Virtualization  --->
    <*>   Host kernel accelerator for virtio net

可选的高级网络设置

Device Drivers  --->
    [*] Network device support  --->
        [*]   Network core driver support
        <*>   Universal TUN/TAP device driver support

802.1d

[*] Networking support  --->
        Networking options  --->
            <*> The IPv6 protocol
            <*> 802.1d Ethernet Bridging

python USE 支持

Kernel hacking  --->
        Compile-time checks and compiler options  --->
            [*] Debug Filesystem

使用EXT4的文件系统,需要启用filecaps USE

File systems  --->
    <*> The Extended 4 (ext4) filesystem
    [*]   Ext4 Security Labels

注意:使用图形界面输出的话,需要启用 gtk, ncurses, sdl, spice 这几个中的一个,最好都启用。

emerge --ask --verbose qemu

把普通用户加入 kvm组 gpasswd -a xxx kvm

因为需要配置网桥,使用brctl 命令,所以需要安装 bridge-utils emerge --ask --verbose bridge-utils

安装 ccache emerge --ask --verbose ccache

修改make.conf,注意cache 最大也就是5G。 vim /etc/portage/make.conf FEATURES="ccache" CCACHE_SIZE="4G"

命令行输入 CCACHE_DIR="/var/tmp/ccache" ccache -s 查看ccache 相关情况。 可以修改 make.conf 来修改默认的文件夹位置。 如果单独使用 ccache,那么默认会把文件放入到 /home//.ccache 里面。

如果要在其他情况下使用 ccache, 那么注意修改文件夹的位置,并且在 .bash_profile 里面修改PATH, 把 /usr/lib/ccache/bin 放进去。然后使用类似 ccache gcc 这种方法。

对于gentoo 上面通过 portage 安装的软件,如果升级以后产生了新的CONFIG 文件,在原来的地方有同名的文件,那么新的配置文件的命名将会在前面增加前缀: cfg0000,如果原来就有这个文件,那么新的文件会自动加一,变为 cfg0001。 要查找这些需要升级的配置文件,可以通过find 命令,find /etc -name '.cfg????*' 来找到对应需要升级的文件。

找到这些文件以后,可以使用etc-update, cfg-update, dispath-conf 这些工具来进行对配置文件的升级。 但是注意:etc-update 是没有版本系统的,升级配置文件要小心, 而 dispath-conf 是有版本系统的, 按u使用新的配置文件,按z删除新的配置文件,处理完了以后dispath-conf 会退出,或者按q来退出。/etc/dispath-conf.conf 里面配置archive-dir 对应的目录,用来保存文件。

gentoo 里面有两种方法安装jdk, 一种就是下载后解压, 然后添加环境变量, 还有一种是下载后, 通过 emerge 来安装.

为了管理方便, gentoo 里面建议使用后一种方法来安装. 首先 emerge --ask --verbose oracle-jdk-bin 按照提示在相应的文件里面添加许可, 然后看看提示是安装那个版本的JDK, 就去oracle上面 选择 Download 里面的 java for develops, 然后拉到最下面一项是下载以前的安装文件, 从这个里面下载 emerge 对应的安装文件, 至于doc 只能从网上搜索下载. 把下载的文件放入到 /etc/portage/distfiles里面, emerge --ask --verbose oracle-jdk-bin 安装即可.

然后选择 oracle 的作为默认的JDK java-config --list-available-vms java-config --set-system-vm 3

这样就切换了默认的JDK为 oracle 的.

gentoo 中安装 stardict, 默认里面是没有字典的. 字典因为版权的问题, 现在官方已经没有下载了, 只能在网络上面寻找非官方的源. 字典下载后, 解压, 如果是给所有人用, 就放入 /usr/share/stardict/dic, 如果只是给自己用, 就放入 ~/.stardict/dic. 按照默认的USE 安装的话, 是不能发音的, 必须分两步来解决.

一. stardict 能调用 espeak 修改stardict 的USE 添加 espeak ,然后重新 emerge 一下. 打开 stardict 里面选择发音TTS 是 espeak. 但是只有这样还是不行的, 因为默认的 espeak 不能发音, 可以命令行输入 espeak word & 来进行测试, 是没有声音的.

二. espeak 能够发音 修改 espeak 的 USE 添加 pluseaudio, 然后重新 emerge 一下, 命令行输入 espeak word & 来进行测试, 是有声音的. 然后重新打开 stardict 就可以发音了.

当然也可以安装 festival 来进行发音.

在 gentoo 中安装 firefox ,结果发现中文都是小方块, 原因是没有配置好中文的字体. 下载中文字体 emerge --ask --verbose wqy-zenhei wqy-unibit wqy-microhei

/etc/fonts/conf.d/49-sansserif.conf 把倒数第四行的 字体 中的 sans-serif 改为 wqy-microhei.

然后重启X 就可以了.

默认安装的 rxvt-unicode 不显示中文, 汉字都是小方块, 通过下面的办法可以搞定. 首先在 .xintrc 里面 export LANG=zh_CN.UTF-8, 然后安装 wqy的字库. USE 里面设置 alt-font-width wcwidth xft -vanilla, 重新编译 rxvt-unicode, 进入X系统, 运行 urxvt, 发现汉字都很小.

然后对 urxvt进行配置 vim~/.xinitrc xrdb -merge ~/.Xresources

vim ~/.Xresources URxvt*font: xft:文泉驿微米黑:size=10

Xft.dpi: 96 Xft.antialias: true Xft.rgba: rgb Xft.hinting: true Xft.hintstyle: hintslight Xft.autohint: false Xft.lcdfilter: lcddefault

URxvt.scrollBar: false URxvt.scrollBar_right: false URxvt.scrollBar_floating: false URxvt.scrollstyle: rxvt

URxvtbackground: #000000 URxvtforeground: #B2B2B2

这样URXVT就可以进行中文的输入输出, 但是有个问题就是字符的间距比较大, 这个暂时我也在找解决方法.

一. 配置 系统状态栏 tint2

首先启动X, 然后运行一下 tint2, 让 tint2 自动生成默认配置 startx 右键里面选择 xterm 运行 tint2 运行然后退出.

如果你想在X启动时启动tint2,添加这下列到~/.xinitrc。例如配合openbox运行tint2:

!/bin/sh

#

~/.xinitrc

#

Executed by startx (run your window manager from here)

tint2 & exec ck-launch-session openbox-session

如果你想在Openbox启动的时候启动tint2,修改~/.config/openbox/autostart添加如下:

tint2 &

注意:如果在~/.config/openbox没有autostart文件,你可以从/etc/xdg/openbox/autostart复制一份。

因为我只用 openbox, 所以我在 autostart 里面添加 tint2 &

感觉tint2 在屏幕下端不爽, 把 tint2 移动到屏幕上方: vim ~/.config/tint2/tint2rc 查找 bottom 并替换为 top, 然后重新加载X即可.

二. 壁纸 然后找一张图片作为壁纸 vim ~/.config/openbox/autostart wallpaper="planet.jpeg" feh --bg-scale ~/Artwork/${wallpaper} &

三. 安装conky emerge --ask --verbose conky vim ~/.config/openbox/autostart conky&

四. 配置输入法 注意不要安装 kcm-fcitx 因为这个是在KDE下面用的, openbox 下面用不了. emerge --ask --verbose fcitx fcitx-sunpinyin fcitx-configtool

vim ~/.xinitrc eval "$(dbus-launch --sh-syntax --exit-with-session)" 注意这个必须放在 openbox 启动前面 export XMODIFIERS="@im=fcitx" export QT_IM_MODULE=xim export GTK_IM_MODULE=xim

vim ~/.config/openbox/autostart fcitx&

进入X以后发现 fcitx 的双拼默认按键方案不好, 改为紫光的即可. vim ~/.config/fcitx/conf/fcitx-pinyin.config DefaultShuangpinSchema=Ziguang

修改完成后, 按键 CTRL+5 让 fcitx重启即可.

五. 安装 polkit emerge polkit-gnome vim ~/.config/openbox/autostart.sh sleep 1 && /usr/libexec/polkit-gnome-authentication-agent-1 &

六. 防止视频进入省电状态 防止mplayer屏幕省电状态 vim ~/.mplayer/config heartbeat-cmd="xscreensaver-command -deactivate >&- 2>&- &"

安装了gentoo 以后, 准备使用 openbox 作为图形界面. 听说可以 obmenu管理右键菜单 obconfig管理openbox tint2面板 pcmanfm文件管理器 pnmixer音量管理器 feh墙纸墙纸设定 lxapperance设置主体.

emerge --ask --verbose obmenu obconf tint2 pcmanfm pnmixer feh

/etc/portage/make.conf 中的USE里面增加 dbus 和 consolekit

更新世界的USE emerge --ask --changed-use --deep @world

添加到启动 /etc/init.d/dbus start rc-update add dbus default /etc/init.d/consolekit start rc-update add consolekit default

cd /usr/src/linux-xxx make menuconfig 确保如下选项选中,如果以前没有选中,那么选中后需要重新编译内核. General setup ---> [] Auditing support [] Enable system-call auditing support

复制openbox 默认配置文件 mkdir -p ~/.config/openbox/ cp /etc/xdg/openbox/* ~/.config/openbox/

设置命令行启动图形的配置 vim ~/.xinitrc exec ck-launch-session dbus-launch --sh-syntax --exit-with-session openbox-session

使用 startx 发现没用, 原来是忘了安装 xorg.

安装xorg:

因为阉掉了独立显卡,只使用集成显卡,首先看看显卡 lspci | grep -i VGA

vim /etc/portage/make.conf

(For intel integated cards)

VIDEO_CARDS="intel" 使用intel 集成显卡

(For mouse, keyboard, and Synaptics touchpad support)

INPUT_DEVICES="evdev synaptics"

更新一下 USE emerge --ask --changed-use --deep @world 把用户加入图像组 gpasswd -a xxx video

安装 xorg-server 进行驱动 emerge --ask --verbose xorg-server

xorg 使用evdev

查看内核 Device Drivers ---> Input device support ---> <*> Event interface

使用KMS必须关掉 framebuffer, 查看内核 Device Drivers ---> Graphics support ---> Frame Buffer Devices ---> <*> Support for frame buffer devices --->

(Disable all drivers, including VGA, Intel, nVidia, and ATI, except EFI-based Framebuffer Support, only if you are using UEFI)

## (Further down, enable basic console support. KMS uses this.)
Console display driver support --->
  <*>  Framebuffer Console Support

INTEL 显卡 Processor type and features ---> [] MTRR (Memory Type Range Register) support Device Drivers ---> Graphics support ---> <> /dev/agpgart (AGP Support) ---> <> Intel 440LX/BX/GX, I8xx and E7x05 chipset support <> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) ---> <> Intel 8xx/9xx/G3x/G4x/HD Graphics [] Enable modesetting on intel by default [*] Enable legacy fbdev support for the modesetting intel driver

Device Drivers ---> Graphics support ---> <> /dev/agpgart (AGP Support) ---> --- /dev/agpgart (AGP Support) < > AMD Opteron/Athlon64 on-CPU GART support -- Intel 440LX/BX/GX, I8xx and E7x05 chipset support < > SiS chipset support < > VIA chipset support [ ] VGA Arbitration [ ] Laptop Hybrid Graphics - GPU switching support <> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) ---> --- Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) [] Enable legacy fbdev support for your modesetting driver [ ] Allow to specify an EDID data set instead of probing for it I2C encoder or helper chips ---> < > 3dfx Banshee/Voodoo3+ < > ATI Rage 128 < > ATI Radeon < > AMD GPU < > Nouveau (NVIDIA) cards < > Intel I810 <> Intel 8xx/9xx/G3x/G4x/HD Graphics [ ] Enable preliminary support for prerelease Intel hardware by default < > Matrox g200/g400 < > SiS video cards < > Via unichrome video cards < > Savage video cards < > Virtual GEM provider < > DRM driver for VMware Virtual GPU < > Intel GMA5/600 KMS Framebuffer < > DisplayLink < > AST server chips < > Kernel modesetting driver for MGA G200 server engines < > Cirrus driver for QEMU emulated device < > QXL virtual GPU < > DRM Support for bochs dispi vga interface (qemu stdvga) Display Panels ----
Display Interface Bridges ---- Frame buffer Devices ---> -
- Backlight & LCD device support ---> Console display driver support ---> [*] Bootup logo --->

如果使用INTEL的 Kabylake, Skylake , Broxton 显卡,需要安装 sys-kernel/linux-firmware, 并且在kernel 里面指定位置: Device Drivers ---> Generic Driver Options ---> -- Userspace firmware loading support [] Include in-kernel firmware blobs in kernel binary (i915/skl_dmc_ver1_26.bin) (/lib/firmware) Firmware blobs root directory

重新编译内核. reboot

然后使用video用户组里面的用户登录, 使用 startx 启动进入图像界面.

普通用户模式 生成一下 openbox 的 obmenu 菜单 obmenu-generator -i -s

绑定快捷键 vim ~/.config/openbox/rc.xml

xterm

root-menu

client-list-combined-menu

菜单增加图标, 未安装的时候,只有几个能显示图标, 安装完成就可以了. vim /etc/portage/package.use/openbox x11-wm/openbox imlib 重新编译一下openbox emerge --ask --changed-use x11-wm/openbox 修改obmenu 图标 vim ~/.config/openbox/menu.xml

    xterm