[PATCH] Fix Compiz and Emerald with GTK+ 2.22

79 views
Skip to first unread message

Jung-uk Kim

unread,
Nov 24, 2010, 4:21:33 PM11/24/10
to freebs...@freebsd.org, AN, Daichi GOTO, rno...@freebsd.org
I found that gtk-window-decorator and emerald are seriously broken
since GTK+ 2.22. It seems Gnome people have deprecated GdkDrawable
in favor of Cairo from 2.22. However, it is pretty rot now, it
seems. :-(

So, I did some research and found solutions.

Patch for x11-wm/compiz:

http://people.freebsd.org/~jkim/compiz.diff

This patch is essentially the following upstream commit:

http://git.compiz.org/compiz/core/commit/?id=64ee56f3619a537f29cfe34a37678b947e1532fd

Patch for x11-wm/emerald:

http://people.freebsd.org/~jkim/emerald.diff

This patch removes GDK_DIABLE_DEPRECATED definition from emerald.h,
which totally broke gdk_draw_drawable() and stuff. Also, it includes
the following upstream commits:

http://git.compiz.org/fusion/decorators/emerald/commit/?id=f3070c32ba428935ef2c69888d0194e2ae31e777
http://git.compiz.org/fusion/decorators/emerald/commit/?id=bc53f574ccc06a5366ccb8c8f0fa558836e68d00

Cheers,

Jung-uk Kim
_______________________________________________
freebs...@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-gnome
To unsubscribe, send any mail to "freebsd-gnom...@freebsd.org"

AN

unread,
Nov 24, 2010, 5:55:11 PM11/24/10
to Jung-uk Kim, Daichi GOTO, rno...@freebsd.org, freebs...@freebsd.org

On Wed, 24 Nov 2010, Jung-uk Kim wrote:

> I found that gtk-window-decorator and emerald are seriously broken
> since GTK+ 2.22. It seems Gnome people have deprecated GdkDrawable
> in favor of Cairo from 2.22. However, it is pretty rot now, it
> seems. :-(
>
> So, I did some research and found solutions.
>
> Patch for x11-wm/compiz:
>
> http://people.freebsd.org/~jkim/compiz.diff
>
> This patch is essentially the following upstream commit:
>
> http://git.compiz.org/compiz/core/commit/?id=64ee56f3619a537f29cfe34a37678b947e1532fd
>
> Patch for x11-wm/emerald:
>
> http://people.freebsd.org/~jkim/emerald.diff
>
> This patch removes GDK_DIABLE_DEPRECATED definition from emerald.h,
> which totally broke gdk_draw_drawable() and stuff. Also, it includes
> the following upstream commits:
>
> http://git.compiz.org/fusion/decorators/emerald/commit/?id=f3070c32ba428935ef2c69888d0194e2ae31e777
> http://git.compiz.org/fusion/decorators/emerald/commit/?id=bc53f574ccc06a5366ccb8c8f0fa558836e68d00
>
> Cheers,
>
> Jung-uk Kim
>

I have a question about the patch procedure. I tried the following
command, but I do not know what to do next.

root@quadcore /usr/ports/x11-wm/compiz]# patch < compiz.diff
Hmm... Looks like a unified diff to me...
The text leading up to this was:
--------------------------
|Index: x11-wm/compiz/Makefile
|===================================================================
|RCS file: /home/pcvs/ports/x11-wm/compiz/Makefile,v
|retrieving revision 1.27
|diff -u -r1.27 Makefile
|--- x11-wm/compiz/Makefile 20 Nov 2010 15:37:08 -0000 1.27
|+++ x11-wm/compiz/Makefile 24 Nov 2010 21:01:22 -0000
--------------------------
Patching file Makefile using Plan A...
Hunk #1 succeeded at 7.
Hmm... The next patch looks like a unified diff to me...
The text leading up to this was:
--------------------------
|Index:
x11-wm/compiz/files/patch-gtk_window-decorator_gtk-window-decorator.c
|===================================================================
|RCS file:
/home/pcvs/ports/x11-wm/compiz/files/patch-gtk_window-decorator_gtk-window-decorator.c,v
|retrieving revision 1.2
|diff -u -r1.2 patch-gtk_window-decorator_gtk-window-decorator.c
|--- x11-wm/compiz/files/patch-gtk_window-decorator_gtk-window-decorator.c
20 Nov 2010 15:37:08 -0000 1.2
|+++ x11-wm/compiz/files/patch-gtk_window-decorator_gtk-window-decorator.c
24 Nov 2010 21:01:22 -0000
--------------------------
File to patch:


Would someone please provide exact commands that need to be executed in
order to apply the patch, and upgrade the application.

Thank you

Jung-uk Kim

unread,
Nov 24, 2010, 6:15:38 PM11/24/10
to AN, Daichi GOTO, rno...@freebsd.org, freebs...@freebsd.org

--- >8 --- SNIP!!! --- >8 ---

> Would someone please provide exact commands that need to be
> executed in order to apply the patch, and upgrade the application.

First, clean up stale files:

rm -rf /usr/ports/x11-wm/compiz /usr/ports/x11-wm/emerald
csup -h cvsup.freebsd.org \
-i ports/x11-wm/compiz \
-i ports/x11-wm/emerald \
/usr/share/examples/cvsup/ports-supfile

Download patch files:

cd /tmp
fetch http://people.freebsd.org/~jkim/compiz.diff
fetch http://people.freebsd.org/~jkim/emerald.diff

Then, finally build and install:

cd /usr/ports/x11-wm
patch -p1 < /tmp/compiz.diff
patch -p1 < /tmp/emerald.diff
find /usr/ports/x11-wm -name "*.orig" -delete
cd /usr/ports/x11-wm/compiz
make; make deinstall; make reinstall; make clean
cd /usr/ports/x11-wm/emerald
make; make deinstall; make reinstall; make clean

Jung-uk Kim

AN

unread,
Nov 24, 2010, 6:50:42 PM11/24/10
to Jung-uk Kim, Daichi GOTO, rno...@freebsd.org, freebs...@freebsd.org


Hi Jung-uk:

Your patch fixed the problem. Thank you!

Daichi GOTO

unread,
Nov 24, 2010, 8:13:44 PM11/24/10
to freebs...@freebsd.org

Thanks jkim!
I checked your patch and it works very well :)
commit go!

--
Daichi GOTO

Koop Mast

unread,
Dec 5, 2010, 6:49:46 AM12/5/10
to Jung-uk Kim, Daichi GOTO, AN, rno...@freebsd.org, freebs...@freebsd.org
On Wed, 2010-11-24 at 16:21 -0500, Jung-uk Kim wrote:
> I found that gtk-window-decorator and emerald are seriously broken
> since GTK+ 2.22. It seems Gnome people have deprecated GdkDrawable
> in favor of Cairo from 2.22. However, it is pretty rot now, it
> seems. :-(
>
> So, I did some research and found solutions.

Thank you for the work, I just committed the patches to the ports tree.

-Koop

Reply all
Reply to author
Forward
0 new messages