[3D桌面]我的beryl历程
00.我的系统信息:OS:6.2-RELEASE-p5
WM:Fluxbox 1.0 Release Candidate 3
显卡是主板(C51G)集成的,在BIOS里分配64MB内存作为显存.
GeForce 6100 0x0242
01.升级xorg至7.2
更新ports tree
#portsnap fetch
#portsnap update
升级xorg
#pkg_delete -f xorg-\* libdrm-\* dri-\* libGL-\* libGLU-\* libglut-\* libXft-\* nvidia-driver-\*
#setenv PACKAGESITE 'ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-6-stable/Latest/'
#pkg_add -r xorg
02.安装Nvidia驱动
#cd /usr/ports/x11/nvidia-driver/ && make install clean
NOTE: should be recompiled for a particular FreeBSD kernel
#pkg_info | grep nvidia
nvidia-driver-1.0.9746_5 NVidia graphics card binary drivers for hardware OpenGL ren
03.安装beryl
#cd /usr/ports/x11-wm/beryl/ && make install clean
中间可能会出错,我遇到的是
在编译glitz-0.5.6时出错:
===>Building for glitz-0.5.6
......
/usr/bin/ld: cannot find -lX11
*** Error code 1
Stop in /usr/ports/graphics/glitz/work/glitz-0.5.6/src/glx.
*** Error code 1
Stop in /usr/ports/graphics/glitz/work/glitz-0.5.6/src.
*** Error code 1
Stop in /usr/ports/graphics/glitz/work/glitz-0.5.6.
*** Error code 1
Stop in /usr/ports/graphics/glitz/work/glitz-0.5.6.
*** Error code 1
Stop in /usr/ports/graphics/glitz.
使用 phg_add -r glitz 来安装glitz-0.5.6_1解决问题.
出现错误基本都是因为升级xorg所带来的,这也就是
/usr/ports/UPDATING
# portupgrade -aP
The final step is to merge remaining files from /usr/X11R6 into
/usr/local (/usr/X11R6 is no longer used with xorg 7.2) and replace
/usr/X11R6 with a symlink.
When the merge operation completes successfully, the /usr/X11R6
directory hierarchy will be removed and replaced by a symlink to
/usr/local.This symlink is necessary because some binary ports (and
some remaining source ports) have hard-coded references to /usr/X11R6.
里建议升级完要更新所有的包的原因.(我闲麻烦没有照做)
#pkg_info | grep beryl
beryl-0.2.1 Beryl Composite/Window Manager meta-port
beryl-core-0.2.1_1Beryl Composite/Window Manager
beryl-manager-0.2.1_1 Manager for Beryl Composite/Window Manager
beryl-plugins-0.2.1_1 Plugins for Beryl Composite/Window Manager
beryl-settings-0.2.1 Beryl Settings Manager
beryl-settings-bindings-0.2.1 Beryl Settings Bindings
04.配置xorg.conf,启动beryl
我的/etc/X11/xorg.conf 的部分信息:
Section "Module"
Load "freetype"
# Load "xtt"
Load"extmod"
Load"glx"
# Load"dri"
Load"dbe"
Load"record"
Load"xtrap"
Load"type1"
Load"speedo"
EndSection
Section "Device"
Identifier"Card0"
Driver "nvidia"
EndSection
Section "Screen"
#
Option "AllowGLXWithComposite" "True"
Option "AddARGBGLXVisuals" "True"
Option "DisableGLXRootClipping" "True"
#
EndSection
Section "Extensions"
Option "Composite" "Enable"
EndSection
启动beryl
编辑 ~/.xinitrc
#start beryl
beryl --force-nvidia --use-cow &
emerald --replace &
exec xterm
#end
然后 startx,OK!
beryl的输出信息:
**************************************************************
* Beryl system compatiblity check *
**************************************************************
Detected xserver : NVIDIA
Checking Display :0.0 ...
Checking for XComposite extension : passed (v0.3)
Checking for XDamage extension : passed
Checking for RandR extension : passed
Checking for XSync extension : passed
Checking Screen 0 ...
Checking for GLX_SGIX_fbconfig : passed
Checking for GLX_EXT_texture_from_pixmap : passed
Checking for non power of two texture support : passed
Checking maximum texture size : passed (4096x4096)
Relaunching beryl with __GL_YIELD="NOTHING"
**************************************************************
* Beryl system compatiblity check *
**************************************************************
Detected xserver : NVIDIA
Checking Display :0.0 ...
Checking for XComposite extension : passed (v0.3)
Checking for XDamage extension : passed
Checking for RandR extension : passed
Checking for XSync extension : passed
Checking Screen 0 ...
Checking for GLX_SGIX_fbconfig : passed
Checking for GLX_EXT_texture_from_pixmap : passed
Checking for non power of two texture support : passed
Checking maximum texture size : passed (4096x4096)
参考文章:
FreeBSD & Beryl +Nvidia
http://www.freebsdforums.org/forums/showthread.php?t=47986
Nvidia驱动程序同时支持直接和间接GLX渲染加速,无需什么额外的XGL/AIGLX支持。
Neither Xgl or AIGLX are required to use compiz with the NVIDIA drivers now that they natively support GLX_EXT_texture_from_pixmap.
Xgl is an X server that renders using OpenGL and runs on top of another X server. It was the first X server available to support GLX_EXT_texture_from_pixmap.
AIGLX stands for Accelerated Indirect GLX. It is not related to compiz or GLX_EXT_texture_from_pixmap at all, except that support for GLX_EXT_texture_from_pixmap in the open source DRI OpenGL drivers required it. NVIDIA has always supported Accelerated Indirect GLX rendering.
NVIDIA supports both Direct AND Indirect rendering with the GLX_EXT_texture_from_pixmap extension. Users should not need to install any additional software to run compiz with new NVIDIA drivers. Please see the just-created sticky thread covering the basic setup steps.
James Jones
NVIDIA Corporation
一些 beryl 快捷键:
注:super键影射为 windows键,以下简称 Win
程序切换:
Alt + Tab:在当前工作台中切换窗口
Ctrl + Alt + Tab:在所有工作台中切换窗口
Win +Tab :环行排列窗口
F8 :平铺窗口
移动窗口:
Alt + 鼠标左键并拖曳:移动窗口
Ctrl + Shift + 鼠标左键:迅速移动窗口(会粘住边框)
立方体旋转:
Ctrl + Alt + 左/右方向键:立体地切换桌面
Ctrl + Shift + Alt + 左/右方向键:把活动窗口移到左/右工作台
Ctrl + Alt + 鼠标左键并拖曳:手动旋转立方体
Ctrl + Alt + 单击鼠标中键,然后移动鼠标旋转
缩放:
Win + 鼠标右键:缩放一次
Win + 鼠标滚轮 上/下:手动缩放大/小
反色效果:
Win + m:屏幕反色
Win + n:当前窗口反色
亮度和饱和度, 透明度:
Ctrl + 鼠标滚轮 上/下:增加/减少 饱和度(对桌面也有效)
Shfit + 鼠标滚轮 上/下:增加/减少 亮度(对桌面也有效)
Alt + 鼠标滚轮 上/下:增加/减少 透明度
窗口对齐:
Win + 小键盘1...9:在屏幕中快速对齐一个窗口(1=左下,2=中下,3=右下......) 我是ATI用户,苦啊。,就不指望什么3d了,只要能完整支持2D就行了
页:
[1]