[compiz] bump to 0.9.2.1+glib-mainloop patch, lots of tweaks to adjust (see changelog)
Adam Williamson
adamwill at fedoraproject.org
Tue Jan 18 13:54:56 UTC 2011
commit d21a372450f99292aa0c85e22b3db0c61eb51a75
Author: Adam Williamson <awilliam at redhat.com>
Date: Tue Jan 18 13:53:18 2011 +0000
bump to 0.9.2.1+glib-mainloop patch, lots of tweaks to adjust (see changelog)
compiz-0.9-fedora-logo.patch | 60 +++++++
compiz-0.9-redhat-logo.patch | 60 +++++++
compiz-0.9.2.1-keybindings.patch | 59 +++++++
compiz-0.9.2.1-schemas.patch | 11 ++
compiz-gnome.desktop | 9 +
compiz-gnome.session | 7 +
compiz-gtk | 7 +-
compiz.spec | 336 ++++++++++++++++++++++++--------------
8 files changed, 420 insertions(+), 129 deletions(-)
---
diff --git a/compiz-0.9-fedora-logo.patch b/compiz-0.9-fedora-logo.patch
new file mode 100644
index 0000000..2ca609a
--- /dev/null
+++ b/compiz-0.9-fedora-logo.patch
@@ -0,0 +1,60 @@
+--- compiz-with-glib-mainloop/plugins/cube/cube.xml.in 2011-01-15 13:20:16.396170197 +0000
++++ compiz-with-glib-mainloop/plugins/cube/cube.xml.in.new 2011-01-15 14:14:24.005435105 +0000
+@@ -86,18 +86,18 @@
+ <_short>Top</_short>
+ <_long>Color of top face of the cube</_long>
+ <default>
+- <red>0xffff</red>
+- <green>0xffff</green>
+- <blue>0xffff</blue>
++ <red>0x0000</red>
++ <green>0x1919</green>
++ <blue>0x4a4a</blue>
+ </default>
+ </option>
+ <option name="bottom_color" type="color">
+ <_short>Bottom</_short>
+ <_long>Color of bottom face of the cube</_long>
+ <default>
+- <red>0xffff</red>
+- <green>0xffff</green>
+- <blue>0xffff</blue>
++ <red>0x0000</red>
++ <green>0x1919</green>
++ <blue>0x4a4a</blue>
+ </default>
+ </option>
+ </subgroup>
+@@ -112,6 +112,7 @@
+ <_short>Skydome Image</_short>
+ <_long>Image to use as texture for the skydome</_long>
+ <hints>file;image;</hints>
++ <value>/usr/share/pixmaps/fedora-logo</value>
+ </option>
+ <option name="skydome_animated" type="bool">
+ <_short>Animate Skydome</_short>
+@@ -122,18 +123,18 @@
+ <_short>Skydome Gradient Start Color</_short>
+ <_long>Color to use for the top color-stop of the skydome-fallback gradient</_long>
+ <default>
+- <red>0x0d0d</red>
+- <green>0xb1b1</green>
+- <blue>0xfdfd</blue>
++ <red>0x0000</red>
++ <green>0x1919</green>
++ <blue>0x4a4a</blue>
+ </default>
+ </option>
+ <option name="skydome_gradient_end_color" type="color">
+ <_short>Skydome Gradient End Color</_short>
+ <_long>Color to use for the bottom color-stop of the skydome-fallback gradient</_long>
+ <default>
+- <red>0xfefe</red>
+- <green>0xffff</green>
+- <blue>0xc7c7</blue>
++ <red>0x0000</red>
++ <green>0x1919</green>
++ <blue>0x4a4a</blue>
+ </default>
+ </option>
+ </subgroup>
diff --git a/compiz-0.9-redhat-logo.patch b/compiz-0.9-redhat-logo.patch
new file mode 100644
index 0000000..579cec7
--- /dev/null
+++ b/compiz-0.9-redhat-logo.patch
@@ -0,0 +1,60 @@
+--- compiz-with-glib-mainloop/plugins/cube/cube.xml.in 2011-01-15 13:20:16.396170197 +0000
++++ compiz-with-glib-mainloop/plugins/cube/cube.xml.in.new 2011-01-15 14:14:24.005435105 +0000
+@@ -86,18 +86,18 @@
+ <_short>Top</_short>
+ <_long>Color of top face of the cube</_long>
+ <default>
+- <red>0xffff</red>
+- <green>0xffff</green>
+- <blue>0xffff</blue>
++ <red>0x8888</red>
++ <green>0x0000</green>
++ <blue>0x0000</blue>
+ </default>
+ </option>
+ <option name="bottom_color" type="color">
+ <_short>Bottom</_short>
+ <_long>Color of bottom face of the cube</_long>
+ <default>
+- <red>0xffff</red>
+- <green>0xffff</green>
+- <blue>0xffff</blue>
++ <red>0x8888</red>
++ <green>0x0000</green>
++ <blue>0x0000</blue>
+ </default>
+ </option>
+ </subgroup>
+@@ -112,6 +112,7 @@
+ <_short>Skydome Image</_short>
+ <_long>Image to use as texture for the skydome</_long>
+ <hints>file;image;</hints>
++ <value>/usr/share/pixmaps/redhat/shadowman-transparent</value>
+ </option>
+ <option name="skydome_animated" type="bool">
+ <_short>Animate Skydome</_short>
+@@ -122,18 +123,18 @@
+ <_short>Skydome Gradient Start Color</_short>
+ <_long>Color to use for the top color-stop of the skydome-fallback gradient</_long>
+ <default>
+- <red>0x0d0d</red>
+- <green>0xb1b1</green>
+- <blue>0xfdfd</blue>
++ <red>0x8888</red>
++ <green>0x0000</green>
++ <blue>0x0000</blue>
+ </default>
+ </option>
+ <option name="skydome_gradient_end_color" type="color">
+ <_short>Skydome Gradient End Color</_short>
+ <_long>Color to use for the bottom color-stop of the skydome-fallback gradient</_long>
+ <default>
+- <red>0xfefe</red>
+- <green>0xffff</green>
+- <blue>0xc7c7</blue>
++ <red>0x8888</red>
++ <green>0x0000</green>
++ <blue>0x0000</blue>
+ </default>
+ </option>
+ </subgroup>
diff --git a/compiz-0.9.2.1-keybindings.patch b/compiz-0.9.2.1-keybindings.patch
new file mode 100644
index 0000000..9a0915f
--- /dev/null
+++ b/compiz-0.9.2.1-keybindings.patch
@@ -0,0 +1,59 @@
+--- compiz-with-glib-mainloop/gtk/gnome/CMakeLists.txt 2011-01-15 13:20:16.375170002 +0000
++++ compiz-with-glib-mainloop/gtk/gnome/CMakeLists.txt.new 2011-01-16 00:57:18.129161249 +0000
+@@ -1,3 +1,26 @@
++if (USE_GNOME_KEYBINDINGS)
++ compiz_translate_xml (
++ ${CMAKE_CURRENT_SOURCE_DIR}/50-compiz-desktop-key.xml.in
++ ${CMAKE_CURRENT_BINARY_DIR}/50-compiz-desktop-key.xml
++ )
++ compiz_translate_xml (
++ ${CMAKE_CURRENT_SOURCE_DIR}/50-compiz-key.xml.in
++ ${CMAKE_CURRENT_BINARY_DIR}/50-compiz-key.xml
++ )
++ set (key_xml
++ ${CMAKE_CURRENT_BINARY_DIR}/50-compiz-desktop-key.xml
++ ${CMAKE_CURRENT_BINARY_DIR}/50-compiz-key.xml
++ )
++ compiz_opt_install_file (
++ ${CMAKE_CURRENT_BINARY_DIR}/50-compiz-desktop-key.xml
++ ${keybindingsdir}/50-compiz-desktop-key.xml
++ )
++ compiz_opt_install_file (
++ ${CMAKE_CURRENT_BINARY_DIR}/50-compiz-key.xml
++ ${keybindingsdir}/50-compiz-key.xml
++ )
++endif (USE_GNOME_KEYBINDINGS)
++
+ if (USE_GNOME)
+
+ include_directories (
+@@ -36,29 +59,6 @@
+ )
+
+
+- if (USE_GNOME_KEYBINDINGS)
+- compiz_translate_xml (
+- ${CMAKE_CURRENT_SOURCE_DIR}/50-compiz-desktop-key.xml.in
+- ${CMAKE_CURRENT_BINARY_DIR}/50-compiz-desktop-key.xml
+- )
+- compiz_translate_xml (
+- ${CMAKE_CURRENT_SOURCE_DIR}/50-compiz-key.xml.in
+- ${CMAKE_CURRENT_BINARY_DIR}/50-compiz-key.xml
+- )
+- set (key_xml
+- ${CMAKE_CURRENT_BINARY_DIR}/50-compiz-desktop-key.xml
+- ${CMAKE_CURRENT_BINARY_DIR}/50-compiz-key.xml
+- )
+- compiz_opt_install_file (
+- ${CMAKE_CURRENT_BINARY_DIR}/50-compiz-desktop-key.xml
+- ${keybindingsdir}/50-compiz-desktop-key.xml
+- )
+- compiz_opt_install_file (
+- ${CMAKE_CURRENT_BINARY_DIR}/50-compiz-key.xml
+- ${keybindingsdir}/50-compiz-key.xml
+- )
+- endif (USE_GNOME_KEYBINDINGS)
+-
+ add_library (gnome-compiz MODULE
+ compiz-window-manager.c
+ compiz-window-manager.h
diff --git a/compiz-0.9.2.1-schemas.patch b/compiz-0.9.2.1-schemas.patch
new file mode 100644
index 0000000..0cd88c0
--- /dev/null
+++ b/compiz-0.9.2.1-schemas.patch
@@ -0,0 +1,11 @@
+--- compiz-with-glib-mainloop/cmake/plugin_extensions/CompizGenGconf.cmake 2011-01-15 13:20:16.373169983 +0000
++++ compiz-with-glib-mainloop/cmake/plugin_extensions/CompizGenGconf.cmake.new 2011-01-15 16:19:59.265021752 +0000
+@@ -63,7 +63,7 @@
+ find_program (XSLTPROC_EXECUTABLE xsltproc)
+ mark_as_advanced (FORCE XSLTPROC_EXECUTABLE)
+
+-if (XSLTPROC_EXECUTABLE AND NOT COMPIZ_DISABLE_SCHEMAS_INSTALL)
++if (XSLTPROC_EXECUTABLE)
+ compiz_gconf_prepare_install_dirs ()
+ add_custom_command (
+ OUTPUT "${CMAKE_BINARY_DIR}/generated/compiz-${COMPIZ_CURRENT_PLUGIN}.schemas"
diff --git a/compiz-gnome.desktop b/compiz-gnome.desktop
new file mode 100644
index 0000000..d3a81f9
--- /dev/null
+++ b/compiz-gnome.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Encoding=UTF-8
+Name=Classic GNOME with Compiz
+Comment=This session logs you into the classic GNOME desktop (panel, not shell) with Compiz
+Exec=gnome-session --session=compiz-gnome
+TryExec=gnome-session --session=compiz-gnome
+# no icon yet, only the top three are currently used
+Icon=
+Type=Application
diff --git a/compiz-gnome.session b/compiz-gnome.session
new file mode 100644
index 0000000..b0eca2a
--- /dev/null
+++ b/compiz-gnome.session
@@ -0,0 +1,7 @@
+[GNOME Session]
+_Name=Classic GNOME with Compiz
+Required=windowmanager;panel;filemanager;
+Required-windowmanager=compiz-gtk
+Required-panel=gnome-panel
+Required-filemanager=nautilus
+DefaultApps=gnome-settings-daemon;
diff --git a/compiz-gtk b/compiz-gtk
index b34a7fe..844a289 100644
--- a/compiz-gtk
+++ b/compiz-gtk
@@ -2,12 +2,7 @@
function runCompiz() {
gtk-window-decorator &
- if ( [ -e /usr/lib/compizconfig/backends/libgconf.so ] || [ -e /usr/lib64/compizconfig/backends/libgconf.so ] )
- then
- exec compiz --ignore-desktop-hints ccp $@
- else
- exec compiz --ignore-desktop-hints glib gconf gnomecompat $@
- fi
+ exec compiz ccp $@
}
ISSW=`glxinfo | grep "Software Rasterizer" -c`
diff --git a/compiz.spec b/compiz.spec
index 522a49a..fcb4aff 100644
--- a/compiz.spec
+++ b/compiz.spec
@@ -1,17 +1,23 @@
-%define core_plugins blur clone cube dbus decoration fade ini inotify minimize move place png regex resize rotate scale screenshot switcher video water wobbly zoom fs obs commands wall
+%global core_plugins blur clone commands compiztoolbox composite copytex cube dbus decor fade imgpng imgsvg ini inotify move obs opengl place regex resize rotate scale screenshot switcher water wobbly zoom
-%define gnome_plugins annotate gconf glib svg gnomecompat
+%global gtk_plugins annotate gnomecompat
-# List of plugins passed to ./configure. The order is important
+%global obsolete_plugins decoration fs gconf glib kconfig minimize png svg video
-%define plugins core,glib,gconf,dbus,png,svg,video,screenshot,decoration,clone,place,fade,minimize,move,resize,switcher,scale,wall,obs
+%global plugins_compiz %(echo %{core_plugins} %{gtk_plugins} | sed -e 's/\\</compiz-/g')
+%global obsolete_plugins_compiz %(echo %{obsolete_plugins} | sed -e 's/\\</compiz-/g')
+
+# the plugins to enable by default
+# based on intuition and some cribbing from Ubuntu. don't put imgpng
+# in here, it will cause pain
+%global default_plugins core composite opengl copytex compiztoolbox decor scale resize gnomecompat staticswitcher place move mousepoll vpswitch regex snap session wall workarounds ezoom
Name: compiz
-URL: http://www.go-compiz.org
+URL: http://www.compiz.org
License: GPLv2+ and LGPLv2+ and MIT
Group: User Interface/Desktops
-Version: 0.8.6
-Release: 9%{?dist}
+Version: 0.9.2.2
+Release: 0.9.git619abc05b1%{?dist}
Summary: OpenGL window and compositing manager
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -21,14 +27,16 @@ ExcludeArch: s390 s390x
Requires: system-logos
Requires: glx-utils
-Requires(post): desktop-file-utils
BuildRequires: libX11-devel, libdrm-devel, libwnck-devel
BuildRequires: libXfixes-devel, libXrandr-devel, libXrender-devel
BuildRequires: libXcomposite-devel, libXdamage-devel, libXext-devel
BuildRequires: libXt-devel, libXmu-devel, libICE-devel, libSM-devel
-BuildRequires: gnome-desktop-devel, control-center-devel, GConf2-devel
+BuildRequires: gnome-desktop-devel
+BuildRequires: control-center
+BuildRequires: GConf2-devel
BuildRequires: desktop-file-utils
+BuildRequires: cmake
BuildRequires: intltool
BuildRequires: gettext
BuildRequires: dbus-devel
@@ -41,33 +49,33 @@ BuildRequires: cairo-devel
BuildRequires: libtool
BuildRequires: libxslt-devel
BuildRequires: dbus-glib-devel
-
-Source0: http://releases.compiz-fusion.org/%{version}/%{name}-%{version}.tar.bz2
+BuildRequires: boost-devel
+BuildRequires: glibmm24-devel
+
+# This is the compiz-with-glib-mainloop branch of upstream compiz 0.9
+# git clone git://anongit.compiz.org/users/dbo/compiz-with-glib-mainloop
+# cd compiz-with-glib-mainloop
+# git archive --format=tar master > compiz-with-glib-mainloop-(commitid).tar
+# bzip2 compiz-with-glib-mainloop-(commitid).tar
+Source0: compiz-with-glib-mainloop-ecc61dc04567947e92cbb9686c1041619abc05b1.tar.bz2
Source1: compiz-gtk
Source2: compiz-gtk.desktop
-
-# Make sure that former beryl users still have bling
-Obsoletes: beryl-core
+Source3: compiz-gnome.desktop
+Source4: compiz-gnome.session
# Patches that are not upstream
-Patch103: composite-cube-logo.patch
-Patch105: fedora-logo.patch
-Patch106: redhat-logo.patch
-Patch107: compiz-0.8.6-wall.patch
+#Patch103: composite-cube-logo.patch
+Patch105: compiz-0.9-fedora-logo.patch
+Patch106: compiz-0.9-redhat-logo.patch
#Patch110: scale-key.patch
-Patch111: compiz-0.8.6-unloadpluginfix.patch
-Patch112: no-more-gnome-wm-settings.patch
-# Some selected post 0.8.6 upstream backports
-Patch113: compiz-0.8.6-icon-size.patch
-Patch114: compiz-0.8.6-map-gravity-fix.patch
-Patch115: compiz-0.8.6-focus-denied-stacking-fix.patch
-#upstream patches
-# 5ea5e2130c56d405fcccd63932918fc49ca1f1b9
-Patch116: gdk_display_deprecated.patch
-# 0f95c41a0aa175ddf7947ba18b01f746c95594a9
-Patch117: compiz-0.8.6-pixmap-size-calculation.patch
-# 777e5ecdb197105f770e7bcedd83eb54c53457f3
-Patch118: gdk_drawable_deprecated.patch
+
+# Fix behaviour of COMPIZ_DISABLE_SCHEMAS_INSTALL: it should install
+# schema files but not do gconftool install (sent upstream)
+Patch121: compiz-0.9.2.1-schemas.patch
+
+# Allow installation of GNOME keybindings without GNOME window manager
+# settings stuff (sent upstream)
+Patch122: compiz-0.9.2.1-keybindings.patch
%description
Compiz is one of the first OpenGL-accelerated compositing window
@@ -77,6 +85,10 @@ effect and a cube workspace. Compiz is an OpenGL compositing manager
that use Compiz use EXT_texture_from_pixmap OpenGL extension for
binding redirected top-level windows to texture objects.
+This package contains only the core components necessary for compiz
+itself to run. To provide something more usable, you may wish to
+install the compiz-gnome, compiz-kde or compiz-gtk package.
+
%package devel
Summary: Development packages for compiz
Group: Development/Libraries
@@ -93,28 +105,62 @@ and developer docs for the compiz package.
Install compiz-devel if you want to develop plugins for the compiz
windows and compositing manager.
-%package gnome
-Summary: Compiz gnome integration bits
+%package gtk
+Summary: Compiz GTK+ integration bits
Group: User Interface/Desktops
-Requires: desktop-effects
-Requires: %{name} = %{version}
+Requires: %{name} = %{version}-%{release}
+Requires: libcompizconfig
+# A lot of really important plugins are in this
+Requires: compiz-plugins-main > 0.9
+# For the GNOME keybindings files (doesn't introduce any major deps)
+Requires: control-center-filesystem
+Requires(post): desktop-file-utils
Requires(pre): GConf2
Requires(post): GConf2
Requires(preun): GConf2
Obsoletes: compiz < 0.5.2-8
-Obsoletes: beryl-gnome
+Conflicts: compiz-gnome < 0.9.2.2-0.6.git619abc05b1
+
+%description gtk
+The compiz-gtk package contains gtk-window-decorator,
+and other GTK+ integration related stuff.
+
+%package gnome
+Summary: Compiz GNOME session
+Group: User Interface/Desktops
+Requires: compiz-gtk = %{version}-%{release}
+Requires: metacity
+Requires: gnome-panel
%description gnome
-The compiz-gnome package contains gtk-window-decorator,
-and other gnome integration related stuff.
+The compiz-gnome package contains a session definition which will make
+display managers provide a session named 'Classic GNOME with Compiz'
+that you can log in to. This session will start a GNOME 2-style desktop
+(with gnome-panel, not GNOME Shell) with Compiz as the window manager.
+This method is the recommended replacement for the old method of using
+desktop-effects to select Compiz as the window manager for a GNOME
+session.
+
+%package gconf
+Summary: GConf schemas for %{name}
+Group: User Interface/Desktops
+Requires: %{name} = %{version}-%{release}
+Requires(pre): GConf2
+Requires(post): GConf2
+Requires(preun): GConf2
+
+%description gconf
+This package contains the GConf schemas for plugins in the %{name}
+package. Only install it if you wish to use the deprecated GConf
+configuration storage scheme for Compiz. Typically you should not
+install this.
%package kde
-Summary: Compiz kde integration bits
+Summary: Compiz KDE integration bits
Group: User Interface/Desktops
-Requires: %{name} = %{version}
+Requires: %{name} = %{version}-%{release}
Requires: compiz-manager
-Requires: compiz-fusion = %{version}
-Obsoletes: beryl-kde
+Requires: compiz-plugins-main > 0.9
%description kde
The compiz-kde package contains kde4-window-decorator,
@@ -122,62 +168,52 @@ and other kde integration related stuff.
%prep
-%setup -q
+%setup -q -c compiz-0.9.2.1
-%patch103 -p1 -b .composite-cube-logo
%if 0%{?fedora}
%patch105 -p1 -b .fedora-logo
%else
%patch106 -p1 -b .redhat-logo
%endif
-%patch107 -p1 -b .wall
-#%patch110 -p1 -b .scale-key
-%patch111 -p1 -b .unloadfix
-%patch112 -p1 -b .gnome-wm-settings
-%patch113 -p1 -b .icon-size
-%patch114 -p1 -b .map-request
-%patch115 -p1 -b .focus-denied-stacking
-%patch116 -p1 -b .gdk_display_deprecated
-%patch117 -p1 -b .pixmap-calculation
-%patch118 -p1 -b .gdk_drawable_deprecated
+%patch121 -p1 -b .schemas
+%patch122 -p1 -b .keybindings
%build
rm -rf $RPM_BUILD_ROOT
-
-CPPFLAGS="$CPPFLAGS -I$RPM_BUILD_ROOT%{_includedir}"
-export CPPFLAGS
-
-#needed to find kde4 libs
-LDFLAGS="$LDFLAGS -L%{_libdir}/kde4/devel"
-export LDFLAGS
-
-libtoolize
-aclocal
-autoconf
-automake
-%configure \
- --enable-gconf \
- --enable-dbus \
- --enable-place \
- --enable-librsvg \
- --enable-gtk \
- --enable-metacity \
- --enable-gnome \
- --with-default-plugins=%{plugins} \
- --enable-gnome-keybindings \
- --disable-kde \
- --enable-kde4
-
-make %{?_smp_mflags} imagedir=%{_datadir}/pixmaps
-
+mkdir build
+pushd build
+%cmake -DCOMPIZ_DEFAULT_PLUGINS="%{default_plugins}" -DCOMPIZ_PACKAGING_ENABLED=ON -DBUILD_GNOME_KEYBINDINGS=OFF -DCOMPIZ_BUILD_WITH_RPATH=OFF -DCOMPIZ_DISABLE_SCHEMAS_INSTALL=ON -DCOMPIZ_INSTALL_GCONF_SCHEMA_DIR=%{_sysconfdir}/gconf/schemas ..
+make VERBOSE=1 %{?_smp_mflags}
+popd
%install
+pushd build
rm -rf $RPM_BUILD_ROOT
-export GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1
make DESTDIR=$RPM_BUILD_ROOT install || exit 1
-unset GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL
-install %SOURCE1 $RPM_BUILD_ROOT%{_bindir}
+# This should work, but is buggy upstream:
+# make DESTDIR=$RPM_BUILD_ROOT findcompiz_install
+# So we do this instead:
+mkdir -p $RPM_BUILD_ROOT%{_datadir}/cmake/Modules
+%__cmake -E copy ../cmake/FindCompiz.cmake $RPM_BUILD_ROOT%{_datadir}/cmake/Modules
+
+popd
+
+install %SOURCE1 $RPM_BUILD_ROOT/%{_bindir}
+
+# set up an X session
+mkdir -p $RPM_BUILD_ROOT%{_datadir}/xsessions
+install %SOURCE3 $RPM_BUILD_ROOT/%{_datadir}/xsessions
+mkdir -p $RPM_BUILD_ROOT%{_datadir}/gnome-session/sessions
+install %SOURCE4 $RPM_BUILD_ROOT/%{_datadir}/gnome-session/sessions
+
+# create compiz keybindings file based on the metacity ones
+# lifted straight from Ubuntu, as long as installation of the upstream
+# ones is broken at least (I've reported this upstream)
+mkdir -p $RPM_BUILD_ROOT/%{_datadir}/gnome-control-center/keybindings
+ sed 's/wm_name=\"Metacity\" package=\"metacity\"/wm_name=\"Compiz\" package=\"compiz\"/' /usr/share/gnome-control-center/keybindings/50-metacity-desktop-key.xml > $RPM_BUILD_ROOT/%{_datadir}/gnome-control-center/keybindings/50-compiz-desktop-key.xml
+ sed 's/wm_name=\"Metacity\" package=\"metacity\"/wm_name=\"Compiz\" package=\"compiz\"/' /usr/share/gnome-control-center/keybindings/50-metacity-key.xml > $RPM_BUILD_ROOT/%{_datadir}/gnome-control-center/keybindings/50-compiz-key.xml
+ sed -i 's#key=\"/apps/metacity/general/num_workspaces\" comparison=\"gt\"##g' $RPM_BUILD_ROOT/%{_datadir}/gnome-control-center/keybindings/50-compiz-key.xml
desktop-file-install --vendor="" \
--dir $RPM_BUILD_ROOT%{_datadir}/applications \
@@ -197,50 +233,42 @@ for f in %{core_plugins}; do
echo %{_datadir}/compiz/$f.xml
done >> core-files.txt
-for f in %{gnome_plugins}; do
+for f in %{gtk_plugins}; do
echo %{_libdir}/compiz/lib$f.so
echo %{_datadir}/compiz/$f.xml
-done >> gnome-files.txt
+done >> gtk-files.txt
+
+for f in %{core_plugins} %{gtk_plugins}; do
+ echo %{_sysconfdir}/gconf/schemas/compiz-$f.schemas
+done >> gconf-files.txt
+
+# I don't care how crazy you are, I'm not letting you store your
+# compiz-kde configuration in GConf
+rm -f $RPM_BUILD_ROOT/%{_sysconfdir}/gconf/schemas/compiz-kde.schemas
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
-%post gnome
+%post gtk
update-desktop-database -q %{_datadir}/applications
+%gconf_schema_upgrade gwd
-export GCONF_CONFIG_SOURCE=`/usr/bin/gconftool-2 --get-default-source`
-
-for p in %{core_plugins} %{gnome_plugins} core;
- do echo %{_sysconfdir}/gconf/schemas/compiz-${p}.schemas ; done \
- | xargs %{_bindir}/gconftool-2 --makefile-install-rule >& /dev/null || :
-
-gconftool-2 --makefile-install-rule %{_sysconfdir}/gconf/schemas/gwd.schemas >& /dev/null || :
-
+%post gconf
+%gconf_schema_upgrade %{plugins_compiz}
-%pre gnome
-if [ "$1" -gt 1 ]; then
- export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source`
+%pre gconf
+%gconf_schema_prepare %{plugins_compiz}
+%gconf_schema_obsolete %{obsolete_plugins_compiz}
- for p in %{core_plugins} %{gnome_plugins} core;
- do echo %{_sysconfdir}/gconf/schemas/compiz-${p}.schemas ; done \
- | xargs %{_bindir}/gconftool-2 --makefile-uninstall-rule >& /dev/null || :
+%pre gtk
+%gconf_schema_prepare gwd
- gconftool-2 --makefile-uninstall-rule %{_sysconfdir}/gconf/schemas/gwd.schemas >& /dev/null || :
-fi
-
-
-%preun gnome
-if [ "$1" -eq 0 ]; then
- export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source`
-
- for p in %{core_plugins} %{gnome_plugins} core;
- do echo %{_sysconfdir}/gconf/schemas/compiz-${p}.schemas ; done \
- | xargs %{_bindir}/gconftool-2 --makefile-uninstall-rule >& /dev/null || :
-
- gconftool-2 --makefile-uninstall-rule %{_sysconfdir}/gconf/schemas/gwd.schemas >& /dev/null || :
-fi
+%preun gconf
+%gconf_schema_remove %{plugins_compiz}
+%preun gtk
+%gconf_schema_remove gwd
%post kde
update-desktop-database -q %{_datadir}/applications/kde
@@ -261,39 +289,101 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/libdecoration.so.*
%dir %{_libdir}/compiz
%dir %{_datadir}/compiz
-%{_datadir}/compiz/*.png
+%{_datadir}/compiz/images
%{_datadir}/compiz/core.xml
-
-%files gnome -f gnome-files.txt
+%files gtk -f gtk-files.txt
%defattr(-, root, root)
%{_bindir}/compiz-gtk
%{_bindir}/gtk-window-decorator
%{_datadir}/gnome-control-center/keybindings/50-compiz-desktop-key.xml
%{_datadir}/gnome-control-center/keybindings/50-compiz-key.xml
%{_datadir}/applications/compiz-gtk.desktop
-%exclude %{_datadir}/applications/compiz.desktop
-%{_sysconfdir}/gconf/schemas/*.schemas
+# gtk-window-decorator only stores config in gconf at present
+%{_sysconfdir}/gconf/schemas/gwd.schemas
+#%exclude %{_datadir}/applications/compiz.desktop
+%files gnome
+%defattr(-, root, root)
+%{_datadir}/xsessions/compiz-gnome.desktop
+%{_datadir}/gnome-session/sessions/compiz-gnome.session
+
+%files gconf -f gconf-files.txt
+%defattr(-, root, root)
+%{_sysconfdir}/gconf/schemas/compiz-core.schemas
%files kde
%defattr(-, root, root)
%{_bindir}/kde4-window-decorator
-%{_datadir}/compiz/kconfig.xml
+%{_libdir}/compiz/libkde.so
+%{_datadir}/compiz/kde.xml
%files devel
%defattr(-, root, root)
%{_libdir}/pkgconfig/compiz.pc
%{_libdir}/pkgconfig/libdecoration.pc
+%{_libdir}/pkgconfig/compiz-compiztoolbox.pc
+%{_libdir}/pkgconfig/compiz-composite.pc
%{_libdir}/pkgconfig/compiz-cube.pc
-%{_libdir}/pkgconfig/compiz-gconf.pc
+%{_libdir}/pkgconfig/compiz-opengl.pc
%{_libdir}/pkgconfig/compiz-scale.pc
-%{_datadir}/compiz/schemas.xslt
+%{_datadir}/compiz/xslt
+%{_datadir}/compiz/cmake
+%{_datadir}/cmake/Modules/FindCompiz.cmake
%{_includedir}/compiz
%{_libdir}/libdecoration.so
%changelog
+* Tue Jan 18 2011 Adam Williamson <awilliam at redhat.com> - 0.9.2.2-0.9.git619abc05b1
+- drop desktop-effects dependency
+
+* Mon Jan 17 2011 Adam Williamson <awilliam at redhat.com> - 0.9.2.2-0.8.git619abc05b1
+- drop rotate from the default plugin list (it goes with cube)
+- tighten up dependencies and fix compiz-kde deps
+
+* Mon Jan 17 2011 Adam Williamson <awilliam at redhat.com> - 0.9.2.2-0.7.git619abc05b1
+- move gwd.schemas into compiz-gtk: seems that gtk-window-decorator is
+ only able to store its config in gconf for now so we must include this
+
+* Mon Jan 17 2011 Adam Williamson <awilliam at redhat.com> - 0.9.2.2-0.6.git619abc05b1
+- add a compiz-gnome package back again: this one provides a session
+ definition so you can log into a classic GNOME plus Compiz session
+ from the login manager
+
+* Sun Jan 16 2011 Adam Williamson <awilliam at redhat.com> - 0.9.2.2-0.5.git619abc05b1
+- drop imgpng from default plugins list (somehow this causes compiz-gtk
+ to crash on start)
+- generally simplify the default plugin set a bit
+
+* Sun Jan 16 2011 Adam Williamson <awilliam at redhat.com> - 0.9.2.2-0.4.git619abc05b1
+- move core gconf schema file to gconf subpackage
+
+* Sun Jan 16 2011 Adam Williamson <awilliam at redhat.com> - 0.9.2.2-0.3.git619abc05b1
+- move the GConf schemas to a separate subpackage so you can not
+ install them unless you really want them
+- rename the -gnome subpackage to -gtk as it's not really GNOME
+ specific now
+
+* Sun Jan 16 2011 Adam Williamson <awilliam at redhat.com> - 0.9.2.2-0.2.git619abc05b1
+- drop the BR of metacity as we already BR metacity-devel
+- don't load imgsvg by default, do load imgpng
+- put all the GConf schemas in the GNOME subpackage, no point having
+ them in main and weighing it down with dependencies
+- drop the ancient beryl obsoletes
+- drop --ignore-desktop-hints from compiz-gtk (no longer valid)
+
+* Sat Jan 15 2011 Adam Williamson <awilliam at redhat.com> - 0.9.2.2-0.1.git619abc05b1
+- bump to 0.9 git:
+ + drop several patches now upstreamed
+ + keybindings.patch replaces no-more-gnome-wm-settings.patch
+- switch to new cmake buildsystem
+- use gconf macros not snippets
+- fix up compiz-gtk to just always launch with ccm, the test for gconf
+ was done exactly the wrong way around and anyway using the gconf
+ backend is a bad idea
+- depend on new compiz-plugins-main as lots of vital plugins are in it
+
* Fri Dec 10 2010 leigh scott <leigh123linux at googlemail.com> - 0.8.6-9
- remove the dupe BR dbus-devel and add BR dbus-glib-devel
More information about the scm-commits
mailing list