compiz/compiz.spec

391 lines
12 KiB
RPMSpec
Raw Normal View History

%global 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 glib annotate svg
2012-12-04 21:39:35 +00:00
%global mate_plugins matecompat
2012-12-04 21:39:35 +00:00
# List of plugins passed to ./configure. The order is important
2012-12-04 21:39:35 +00:00
%global plugins core,glib,dbus,png,svg,video,screenshot,decoration,clone,place,fade,minimize,move,resize,switcher,scale,wall,obs
Name: compiz
URL: http://www.compiz.org
License: GPLv2+ and LGPLv2+ and MIT
Group: User Interface/Desktops
Version: 0.8.8
2013-02-13 15:43:43 +00:00
Release: 15%{?dist}
Epoch: 1
Summary: OpenGL window and compositing manager
2012-12-04 21:39:35 +00:00
# libdrm is not available on these arches
ExcludeArch: s390 s390x
2012-12-04 21:39:35 +00:00
Requires: system-logos
Requires: glx-utils
# this is an inverse require which is needed for build without gtk-windows-decorator
2013-01-04 17:16:54 +00:00
Requires: emerald
2012-12-04 21:39:35 +00:00
BuildRequires: libX11-devel
BuildRequires: libdrm-devel
BuildRequires: libwnck-devel
BuildRequires: libXfixes-devel
BuildRequires: libXrandr-devel
BuildRequires: libXrender-devel
BuildRequires: libXcomposite-devel
BuildRequires: libXdamage-devel
BuildRequires: libXext-devel
BuildRequires: libXt-devel
BuildRequires: libSM-devel
BuildRequires: libICE-devel
BuildRequires: libXmu-devel
BuildRequires: mate-conf-devel
BuildRequires: desktop-file-utils
BuildRequires: intltool
BuildRequires: gettext
BuildRequires: dbus-devel
BuildRequires: dbus-glib-devel
BuildRequires: librsvg2-devel
BuildRequires: mesa-libGLU-devel
BuildRequires: fuse-devel
BuildRequires: cairo-devel
BuildRequires: libtool
BuildRequires: libxslt-devel
2012-12-04 21:39:35 +00:00
Source0: http://releases.compiz.org/%{version}/%{name}-%{version}.tar.bz2
Source2: compiz-mate-emerald
Source3: compiz-mate-emerald.desktop
Source4: compiz-xfce-emerald
Source5: compiz-xfce-emerald.desktop
Source6: compiz-lxde-emerald
Source7: compiz-lxde-emerald.desktop
Source8: compiz-plugins-main_plugin-matecompat.svg
2012-12-04 21:39:35 +00:00
# fork gnome to mate
Patch0: comiz_mate_fork.patch
# fix http://forums.mate-desktop.org/viewtopic.php?f=8&t=818
#Patch1: compiz_gtk_window_decoration_button_placement.patch
#Patch2: compiz_windows-decorator.patch
# Patches that are not upstream
Patch3: composite-cube-logo.patch
Patch4: fedora-logo.patch
Patch5: redhat-logo.patch
Patch6: compiz-0.8.6-wall.patch
Patch7: compiz-0.8.6-unloadpluginfix.patch
Patch8: no-more-mate-wm-settings.patch
Patch9: compiz-0.88_incorrect-fsf-address.patch
Patch10: compiz-disable-child-window-clipping.patch
Patch11: compiz-add-cursor-theme-support.patch
#Patch12: compiz-fix-gtk-window-decorator-no-argb-crash.patch
Patch13: compiz_fix-no-border-window-shadow.patch
Patch14: compiz_draw_dock_shadows_on_desktop.patch
Patch15: compiz_optional-fbo.patch
Patch16: compiz_call_glxwaitx_before_drawing.patch
Patch17: compiz_always_unredirect_screensaver_on_nvidia.patch
#Patch18: compiz_hide_tooltip_on_decorator.patch
Patch19: compiz_fullscreen_stacking_fixes.patch
Patch20: compiz_damage-report-non-empty.patch
Patch21: compiz_stacking.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=909657
Patch22: compiz_primary-is-control.patch
2012-12-04 21:39:35 +00:00
%description
Compiz is one of the first OpenGL-accelerated compositing window
managers for the X Window System. The integration allows it to perform
compositing effects in window management, such as a minimization
effect and a cube work space. 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.
2012-12-04 21:39:35 +00:00
%package devel
Summary: Development packages for compiz
Group: Development/Libraries
Requires: %{name}%{?_isa} = %{epoch}:%{version}-%{release}
Requires: pkgconfig
Requires: libXcomposite-devel libXfixes-devel libXdamage-devel libXrandr-devel
Requires: libXinerama-devel libICE-devel libSM-devel libxml2-devel
Requires: libxslt-devel startup-notification-devel
2012-12-04 21:39:35 +00:00
%description devel
The compiz-devel package includes the header files,
and developer docs for the compiz package.
2012-12-04 21:39:35 +00:00
Install compiz-devel if you want to develop plugins for the compiz
windows and compositing manager.
2012-12-04 21:39:35 +00:00
%package mate
Summary: Compiz mate integration bits
Group: User Interface/Desktops
Requires: %{name}%{?_isa} = %{epoch}:%{version}-%{release}
2012-12-04 21:39:35 +00:00
%description mate
The compiz-mate package contains matecompat plugin
and a compiz start script for mate.
%package xfce
Summary: Compiz mate integration bits
Group: User Interface/Desktops
Requires: %{name}%{?_isa} = %{epoch}:%{version}-%{release}
2012-12-04 21:39:35 +00:00
%description xfce
The compiz-xfce package contains a compiz start script
for xfce.
%package lxde
Summary: Compiz mate integration bits
Group: User Interface/Desktops
Requires: %{name}%{?_isa} = %{epoch}:%{version}-%{release}
%description lxde
The compiz-lxde package contains a compiz start script
for lxde.
2012-12-04 21:39:35 +00:00
%prep
%setup -q
%patch0 -p1 -b .comiz_mate_fork
#%patch1 -p1 -b .compiz_gtk_window_decoration_button
#%patch2 -p1 -b .compiz_windows-decorator
%patch3 -p1 -b .composite-cube-logo
%if 0%{?fedora}
%patch4 -p1 -b .fedora-logo
%else
%patch5 -p1 -b .redhat-logo
%endif
%patch6 -p1 -b .wall
%patch7 -p1 -b .unloadfix
%patch8 -p1 -b .mate-wm-settings
%patch9 -p1 -b .incorrect-fsf-address
%patch11 -p1 -b .cursor-theme-support
#%patch12 -p1 -b .gtk-window-decorator-no-argb-crash
%patch13 -p1 -b .no-border-window-shadow
%patch14 -p1 -b .draw_dock_shadows
%patch15 -p1 -b .fbo
%patch16 -p1 -b .glxwaitx_before_drawing
%patch17 -p1 -b .always_unredirect_screensaver
#%patch18 -p1 -b .tooltip_on_decorator
%patch19 -p1 -b .fullscreen_stacking
%patch20 -p1 -b .damage-report
%patch21 -p1 -b .stacking
%patch22 -p1 -b .primary-is-control
2012-12-04 21:39:35 +00:00
%build
2012-12-04 21:39:35 +00:00
libtoolize
aclocal
autoconf
automake
%configure \
--disable-mateconf \
--enable-dbus \
--enable-librsvg \
--disable-gtk \
--disable-marco \
--enable-mate \
--with-default-plugins=%{plugins} \
--disable-mate-keybindings \
--disable-kde \
--disable-kde4 \
--disable-kconfig
2012-12-04 21:39:35 +00:00
make %{?_smp_mflags} imagedir=%{_datadir}/pixmaps
2012-12-04 21:39:35 +00:00
%install
make DESTDIR=$RPM_BUILD_ROOT install || exit 1
install %SOURCE2 $RPM_BUILD_ROOT%{_bindir}
install %SOURCE4 $RPM_BUILD_ROOT%{_bindir}
install %SOURCE6 $RPM_BUILD_ROOT%{_bindir}
desktop-file-install --vendor="" \
--dir $RPM_BUILD_ROOT%{_datadir}/applications \
%SOURCE3
desktop-file-install --vendor="" \
--dir $RPM_BUILD_ROOT%{_datadir}/applications \
%SOURCE5
desktop-file-install --vendor="" \
--dir $RPM_BUILD_ROOT%{_datadir}/applications \
%SOURCE7
# matecompat icon
mkdir -p $RPM_BUILD_ROOT%{_datadir}/ccsm/icons/hicolor/scalable/apps
cp -f %SOURCE8 $RPM_BUILD_ROOT%{_datadir}/ccsm/icons/hicolor/scalable/apps/plugin-matecompat.svg
rm $RPM_BUILD_ROOT%{_datadir}/compiz/kconfig.xml
rm $RPM_BUILD_ROOT%{_datadir}/compiz/mateconf.xml
rm $RPM_BUILD_ROOT%{_datadir}/applications/compiz.desktop
2012-12-04 21:39:35 +00:00
find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'
find $RPM_BUILD_ROOT -name '*.a' -exec rm -f {} ';'
%find_lang %{name}
2012-12-04 21:39:35 +00:00
cat %{name}.lang > core-files.txt
2012-12-04 21:39:35 +00:00
for f in %{core_plugins}; do
echo %{_libdir}/compiz/lib$f.so
echo %{_datadir}/compiz/$f.xml
done >> core-files.txt
2012-12-04 21:39:35 +00:00
for f in %{mate_plugins}; do
echo %{_libdir}/compiz/lib$f.so
echo %{_datadir}/compiz/$f.xml
done >> mate-files.txt
2012-12-04 21:39:35 +00:00
%check
desktop-file-validate $RPM_BUILD_ROOT/%{_datadir}/applications/compiz-mate-emerald.desktop
desktop-file-validate $RPM_BUILD_ROOT/%{_datadir}/applications/compiz-xfce-emerald.desktop
desktop-file-validate $RPM_BUILD_ROOT/%{_datadir}/applications/compiz-lxde-emerald.desktop
%post
/sbin/ldconfig
/bin/touch --no-create %{_datadir}/compiz &>/dev/null || :
/bin/touch --no-create %{_datadir}/ccsm/icons/hicolor/scalable/apps &>/dev/null || :
%postun
/sbin/ldconfig
if [ $1 -eq 0 ] ; then
/bin/touch --no-create %{_datadir}/compiz &>/dev/null
/usr/bin/gtk-update-icon-cache %{_datadir}/compiz &>/dev/null || :
fi
if [ $1 -eq 0 ] ; then
/bin/touch --no-create %{_datadir}/ccsm/icons/hicolor/scalable/apps &>/dev/null
/usr/bin/gtk-update-icon-cache %{_datadir}/ccsm/icons/hicolor/scalable/apps &>/dev/null || :
fi
%posttrans
/usr/bin/gtk-update-icon-cache %{_datadir}/compiz &>/dev/null || :
/usr/bin/gtk-update-icon-cache %{_datadir}/ccsm/icons/hicolor/scalable/apps &>/dev/null || :
2012-12-04 21:39:35 +00:00
%files -f core-files.txt
%doc AUTHORS ChangeLog COPYING.GPL COPYING.LGPL README TODO NEWS
%{_bindir}/compiz
%{_libdir}/libdecoration.so.*
%dir %{_libdir}/compiz
%dir %{_datadir}/compiz
%{_datadir}/compiz/*.png
%{_datadir}/compiz/core.xml
2012-12-04 21:39:35 +00:00
%files mate -f mate-files.txt
%{_bindir}/compiz-mate-emerald
%{_datadir}/applications/compiz-mate-emerald.desktop
%{_datadir}/ccsm/icons/hicolor/scalable/apps/plugin-matecompat.svg
%files xfce
%{_bindir}/compiz-xfce-emerald
%{_datadir}/applications/compiz-xfce-emerald.desktop
%files lxde
%{_bindir}/compiz-lxde-emerald
%{_datadir}/applications/compiz-lxde-emerald.desktop
2012-12-04 21:39:35 +00:00
%files devel
%{_libdir}/pkgconfig/compiz.pc
%{_libdir}/pkgconfig/libdecoration.pc
%{_libdir}/pkgconfig/compiz-cube.pc
%{_libdir}/pkgconfig/compiz-scale.pc
%{_includedir}/compiz/
%{_libdir}/libdecoration.so
%changelog
2013-02-13 15:43:43 +00:00
* Wed Feb 13 2013 Wolfgang Ulbrich <chat-to-me@raveit.de> - 1:0.8.8-15
- fix primary-is-control in wall patch
* Sun Feb 10 2013 Wolfgang Ulbrich <chat-to-me@raveit.de> - 1:0.8.8-14
- add compiz_primary-is-control.patch
- this will set all default configurations to pimary key
- change compiz-wall.patch for set primary is control key
- fix (#909657)
2013-01-04 17:23:29 +00:00
* Fri Jan 04 2013 Wolfgang Ulbrich <chat-to-me@raveit.de> - 1:0.8.8-13
2013-01-04 17:16:54 +00:00
- add require emerald again
* Tue Dec 25 2012 Wolfgang Ulbrich <chat-to-me@raveit.de> - 1:0.8.8-12
- remove require emerald until it is in fedora stable
* Sat Dec 22 2012 Wolfgang Ulbrich <chat-to-me@raveit.de> - 1:0.8.8-11
- do some major changes
- disable mateconf and use libini text file configuration backend
- remove mateconf from scriptlet section
- move glib annotate svg plugins to core package
- disable gtk-windows-decorator
- drop compiz-mate-gtk compiz session script
- disable gtk-windows-decorator patches
- disable marco/metacity
- disable mate/gnome
- disable mate/gnome keybindings
- insert compiz-mate-emerald compiz session script
- insert compiz-xfce-emerald compiz session script
- insert compiz-lxde-emerald compiz session script
- add emerald as require
- add matecompat icon
- add icon cache scriptlets
2012-12-04 21:39:35 +00:00
* Sun Dec 02 2012 Wolfgang Ulbrich <chat-to-me@raveit.de> - 1:0.8.8-10
- add %%global plugins_schemas again
2012-12-04 19:57:58 +00:00
* Sun Dec 02 2012 Wolfgang Ulbrich <chat-to-me@raveit.de> - 1:0.8.8-9
- revert scriptlet change
* Sun Dec 02 2012 Wolfgang Ulbrich <chat-to-me@raveit.de> - 1:0.8.8-8
- add %%global plugins_schemas
- change mateconf scriptlets
- remove (Requires(post): desktop-file-utils)
- add some patches from Jasmine Hassan jasmine.aura@gmail.com
- remove (noreplace) from mateconf schema directory
- add desktop-file-validate
- disable mate keybindings for the moment
* Fri Oct 05 2012 Leigh Scott <leigh123linux@googlemail.com> - 1:0.8.8-7
- remove and obsolete compiz-kconfig schema
* Fri Oct 05 2012 Wolfgang Ulbrich <chat-to-me@raveit.de> - 0.8.8-6
- remove update update-desktop-database from %%post mate
- remove (noreplace) from mateconf schema dir
- remove Requires(post): desktop-file-utils
- add epoch tags
* Wed Sep 26 2012 Wolfgang Ulbrich <chat-to-me@raveit.de> - 0.8.8-5
- change compiz-0.88_incorrect-fsf-address.patch
* Wed Sep 26 2012 Wolfgang Ulbrich <chat-to-me@raveit.de> - 0.8.8-4
- remove upstreamed patches
- own include dir
- add compiz-mate-gtk source and compiz-mate-gtk.desktop file
- add keybinding sources
- change %%define to %%global entries
- rename no-more-gnome-wm-settings.patch to no-more-mate-wm-settings.patch
- add compiz-0.88_incorrect-fsf-address.patch
- clean up build section
* Sun Sep 16 2012 Wolfgang Ulbrich <chat-to-me@raveit.de> - 0.8.8-3
- add isa tags
- remove kde stuff
- remove obsolete beryl stuff
- add comiz_mate_fork.patch
- remove %%defattr(-, root, root)
- add compiz_gtk_window_decoration_button_placement.patch
- enable some compiz keybindings
* Tue May 15 2012 Wolfgang Ulbrich <chat-to-me@raveit.de> - 0.8.8-2
- add compiz_mate_fix.patch
* Tue May 15 2012 Wolfgang Ulbrich <chat-to-me@raveit.de> - 0.8.8-1
- build for mate
* Sun May 06 2012 Andrew Wyatt <andrew@fuduntu.org> - 0.8.8-1
- Update to latest stable release
* Tue Nov 30 2010 leigh scott <leigh123linux@googlemail.com> - 0.8.6-6
- add more upstream gdk fixes