感谢支持
我们一直在努力

Ubuntu 11.04下Emerald不能用的问题解决

先吐槽下,这次更新时绝对是这么多年来最差的一次,Ubuntu 11.04下N卡8400驱动居然用自带的闭源受限驱动无效,还有各种不爽不说了。


相信用emerald的TX都会发现按F2后emerald –replace会导致标题栏消失。这次还是emerald不兼容compiz9.X造成的。下面说下解决方法:


第一步:准备一些编译的基础包,intltool貌似可以省略


sudo apt-get install git intltool libtool
sudo apt-get build-dep emerald
git clone git://anongit.compiz.org/fusion/decorators/emerald
cd emerald
git checkout -b compiz++ origin/compiz++


第二步:准备一个补丁文档:vi emeraldfix.txt


其内容可以参看最下面论坛或者我搬来如下:



diff -ru emerald/src/main.c emerald-fixed/src/main.c


— emerald/src/main.c2011-03-07 22:38:32.865582662 -0500


+++ emerald-fixed/src/main.c2011-03-07 22:41:16.000000000 -0500


@@ -505,7 +505,7 @@


 maxextents = extents;


 


     decor_quads_to_property(data, GDK_PIXMAP_XID(d->pixmap),


–    &extents, &maxextents, 0, 0, quads, nQuad);


+    &extents, &extents, &maxextents, &maxextents, 0, 0, quads, nQuad);


 


     gdk_error_trap_push();


     XChangeProperty(xdisplay, d->prop_xid,


@@ -1937,7 +1937,7 @@


     nQuad = set_switcher_quads(quads, d->width, d->height, ws);


 


     decor_quads_to_property(data, GDK_PIXMAP_XID(d->pixmap),


–    &extents, &extents, 0, 0, quads, nQuad);


+    &extents, &extents, &extents, &extents, 0, 0, quads, nQuad);


 


     style = gtk_widget_get_style (style_window);


 


@@ -2364,7 +2364,7 @@


 nQuad = set_shadow_quads(quads, width, height, ws);


 


 decor_quads_to_property(data, GDK_PIXMAP_XID(ws->shadow_pixmap),


-&ws->shadow_extents, &ws->shadow_extents, 0, 0,


+&ws->shadow_extents, &ws->shadow_extents, &ws->shadow_extents, &ws->shadow_extents, 0, 0,


 quads, nQuad);


 


 XChangeProperty(xdisplay, xroot,


@@ -2424,7 +2424,7 @@


 (*d.draw) (&d);


 


 decor_quads_to_property(data, GDK_PIXMAP_XID(d.p_inactive),


-&extents, &extents, 0, 0, quads, nQuad);


+&extents, &extents, &extents, &extents, 0, 0, quads, nQuad);


 


 XChangeProperty(xdisplay, xroot,


 normalAtom,


@@ -2433,7 +2433,7 @@


 BASE_PROP_SIZE + QUAD_PROP_SIZE * nQuad);


 


 decor_quads_to_property(data, GDK_PIXMAP_XID(d.p_active),


-&extents, &extents, 0, 0, quads, nQuad);


+&extents, &extents, &extents, &extents, 0, 0, quads, nQuad);


 


 XChangeProperty(xdisplay, xroot,


 activeAtom,


patch -p1 < emeraldfix.txt  #打补丁,我的提示某些行出错,不过也无影响


第三步:编译阶段,前面弄好的话就不会出错了


./autogen.sh
./configure –prefix=/usr/local
make
sudo make install
sudo ldconfig


ok了,将compiz的窗口装饰——命令里改为emerald –replace,以后自动加载

赞(0) 打赏
转载请注明出处:服务器评测 » Ubuntu 11.04下Emerald不能用的问题解决
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏