[mate-conf] update spec file to fix scriptlets

Dan Mashal vicodan at fedoraproject.org
Wed Sep 19 19:10:40 UTC 2012


commit 23b8e400d01ac7666c4c04461fb2348f757c7acb
Author: Dan Mashal <dan.mashal at fedoraproject.org>
Date:   Wed Sep 19 12:10:17 2012 -0700

    update spec file to fix scriptlets

 mate-conf.spec |  184 +++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 115 insertions(+), 69 deletions(-)
---
diff --git a/mate-conf.spec b/mate-conf.spec
index b4f2534..fa9ebc1 100644
--- a/mate-conf.spec
+++ b/mate-conf.spec
@@ -1,119 +1,165 @@
-Name:	mate-conf
+Name:	mate-conf	
 Version:	1.4.0
-Release:	17%{?dist}
-Summary:	MATE Desktop configuration files
-
-License:	LGPLv2+ and GPLv2+
+Release:	18%{?dist}
+Summary:	MATE Desktop configuration tool
+License:	GPLv2+	
 URL:		http://mate-desktop.org
 Source0:	http://pub.mate-desktop.org/releases/1.4/%{name}-%{version}.tar.xz
 
-BuildRequires:	desktop-file-utils mate-corba mate-corba-devel mate-common mate-polkit mate-polkit-devel gtk-doc glib2-devel gettext intltool gobject-introspection-devel libxml2-devel gtk2-devel dbus-glib-devel chrpath gobject-introspection-devel polkit-devel
-Requires:	gnome-doc-utils
-Requires(post): systemd-units
-Requires(preun): systemd-units
-Requires(postun): systemd-units
-Obsoletes: mate-conf < 1.4.0-16
+# Copy schemas from old package for later uninstall on upgrade.
+# Macro to remove schemas.  Not meant to be used publically.
+# Remove schemas unconditionally.
+# Remove schemas on package removal (not upgrade).
+Source1:	macros.mateconf
+
+BuildRequires:	desktop-file-utils polkit-devel libglade2-devel dbus-glib-devel gobject-introspection-devel libxml2-devel libxslt-devel mate-corba-devel glib2-devel gtk-doc openldap-devel gtk2-devel gobject-introspection-devel mate-common mate-doc-utils cairo-gobject-devel gtk3-devel
+Requires:	dbus desktop-file-utils
+
+# for patch0
+Requires: /usr/bin/killall
+Conflicts: mate-conf-dbus
+
+Patch0: mate-conf-1.4.0-reload.patch
+# http://bugzilla.gnome.org/show_bug.cgi?id=568845
 
 %description
-Configuration database system for MATE Desktop
+MATE Desktop configuration tool
 
 %package devel
-Summary: Development libraries for mate-conf
+Summary:	Development files for mate-conf
 Requires:	%{name}%{?_isa} = %{version}-%{release}
 
 %description devel
-Lbraries and header development files for mate-conf.
+Development files for mate-conf
+
+%package gtk
+Summary: Graphical mate-conf utilities
+Group: System Environment/Base
+Requires: %{name} = %{version}-%{release}
+
+%description gtk
+The mate-conf-gtk package contains graphical mate-conf utilities
+which require GTK+.
+
 
 %prep
-%setup -q
+%setup -q -n mate-conf-%{version}
+%patch0 -p1 -b .reload
 NOCONFIGURE=1 ./autogen.sh
 
 %build
-%configure --disable-static --enable-gtk --enable-gtk-doc-html --enable-introspection --enable-gsettings-backend --enable-defaults-service --with-gtk=2.0
+%configure --disable-static --enable-gtk --with-openldap --enable-defaults-service --enable-gtk --enable-gsettings-backend=yes --enable-introspection --enable-gtk-doc
+
+# drop unneeded direct library deps with --as-needed
+# libtool doesn't make this easy, so we do it the hard way
+sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0 /g' -e 's/    if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then/      func_append compile_command " -Wl,-O1,--as-needed"\n      func_append finalize_command " -Wl,-O1,--as-needed"\n\0/' libtool
+
 make %{?_smp_mflags} V=1
 
 
-%post
-/sbin/ldconfig
-/usr/bin/gio-querymodules-%{__isa_bits} %{_libdir}/gio/modules || :
-/usr/bin/update-desktop-database &> /dev/null || :
-if [ $1 -eq 1 ] ; then 
-    # Initial installation
-    /bin/systemctl enable org.mate.MateConf.Defaults.service >/dev/null 2>&1 || :
-fi
+%install
+make install DESTDIR=%{buildroot}
 
-if [ $1 -eq 1 ] ; then 
-    # Initial installation 
-    /bin/systemctl daemon-reload >/dev/null 2>&1 || :
-fi
+mkdir -p %{buildroot}%{_sysconfdir}/mateconf/schemas
+mkdir -p %{buildroot}%{_sysconfdir}/mateconf/mateconf.xml.system
+mkdir -p %{buildroot}%{_sysconfdir}/rpm/
+mkdir -p %{buildroot}%{_localstatedir}/lib/rpm-state/mateconf
+mkdir -p %{buildroot}%{_datadir}/MateConf/matesettings
 
+install -p -m 644 %{SOURCE1} %{buildroot}%{_sysconfdir}/rpm/
 
-%preun
-/sbin/ldconfig
-if [ $1 -eq 0 ] ; then
-    # Package removal, not upgrade
-    /bin/systemctl --no-reload disable org.mate.MateConf.Defaults.service > /dev/null 2>&1 || :
-    /bin/systemctl stop org.mate.MateConf.Defaults.service  > /dev/null 2>&1 || :
-fi
+find %{buildroot} -name '*.la' -exec rm -rf {} ';'
+find %{buildroot} -name '*.a' -exec rm -rf {} ';'
 
-%postun
+mkdir -p $RPM_BUILD_ROOT%{_datadir}/GConf/gsettings
+
+%find_lang %name
+
+%post
 /sbin/ldconfig
-/usr/bin/gio-querymodules-%{__isa_bits} %{_libdir}/gio/modules &> /dev/null || :
-/usr/bin/update-desktop-database &> /dev/null || :
-/bin/systemctl daemon-reload >/dev/null 2>&1 || :
-if [ $1 -ge 1 ] ; then
-    # Package upgrade, not uninstall
-    /bin/systemctl try-restart org.mate.MateConf.Defaults.service >/dev/null 2>&1 || :
+if [ $1 -gt 1 ]; then
+    if ! fgrep -q mateconf.xml.system %{_sysconfdir}/mateconf/2/path; then
+        sed -i -e 's at xml:readwrite:$(HOME)/.mateconf@&\n\n# Location for system-wide settings.\nxml:readonly:/etc/mateconf/mateconf.xml.system@' %{_sysconfdir}/mateconf/2/path
+    fi
 fi
 
-%install
-make install DESTDIR=%{buildroot}
-%find_lang %{name} --all-name
+%postun -p /sbin/ldconfig
+gio-querymodules-%{__isa_bits} %{_libdir}/gio/modules || :
 
-find %{buildroot} -name '*.la' -exec rm -rf {} ';'
-find %{buildroot} -name '*.a' -exec rm -rf {} ';'
 
-desktop-file-install									\
-	--dir=%{buildroot}%{_sysconfdir}/xdg/autostart					\
-%{buildroot}%{_sysconfdir}/xdg/autostart/mateconf-gsettings-data-convert.desktop
 
-%check
-desktop-file-validate %{buildroot}/%{_sysconfdir}/xdg/autostart/mateconf-gsettings-data-convert.desktop
+#desktop-file-validate %{buildroot}%{_datadir}/applications/mateconf-gsettings-data-convert.desktop
+#desktop-file-validate %{buildroot}%{_sysconfdir}/xdg/autostart/*.desktop
+
+#desktop-file-install									\
+#	--remove-category="MATE"							\
+#	--add-category="X-MATE"								\
+#	--delete-original								\
+#	--dir=%{buildroot}%{_datadir}/applications					\
+#%{buildroot}%{_sysconfdir}/xdg/autostart/*.desktop
+#
+#desktop-file-install									\
+#	--remove-category="MATE"							\
+#	--add-category="X-MATE"								\
+#	--delete-original								\
+#	--dir=%{buildroot}%{_datadir}/applications					\
+#%{buildroot}%{_datadir}/applications/*.desktop
+
+%posttrans
+gio-querymodules-%{__isa_bits} %{_libdir}/gio/modules || :
 
 %files -f %{name}.lang
-%doc AUTHORS README COPYING
+%doc AUTHORS COPYING NEWS README
+%config(noreplace) %{_sysconfdir}/mateconf/2/path
+%dir %{_sysconfdir}/mateconf
+%dir %{_sysconfdir}/mateconf/2
+%dir %{_sysconfdir}/mateconf/mateconf.xml.defaults
+%dir %{_sysconfdir}/mateconf/mateconf.xml.mandatory
+%dir %{_sysconfdir}/mateconf/mateconf.xml.system
+%dir %{_sysconfdir}/mateconf/schemas
+%{_sysconfdir}/mateconf/2/evoldap.conf
+%{_sysconfdir}/xdg/autostart/mateconf-gsettings-data-convert.desktop
+%{_mandir}/man1/*
 %{_bindir}/mateconf-gsettings-data-convert
 %{_bindir}/mateconf-gsettings-schema-convert
 %{_bindir}/mateconf-merge-tree
 %{_bindir}/mateconftool-2
-%{_datadir}/gtk-doc/html/mateconf
-%{_datadir}/aclocal/mateconf-2.m4
-%{_datadir}/dbus-1/services/org.mate.MateConf.service
-%{_datadir}/sgml/mateconf/mateconf-1.0.dtd
-%{_datadir}/man/man1/*
+%{_sysconfdir}/dbus-1/system.d/org.mate.MateConf.Defaults.conf
+%dir %{_libdir}/MateConf
+%dir %{_libdir}/MateConf/2
+%dir %{_datadir}/sgml
+%{_datadir}/sgml/mateconf
+%{_libexecdir}/mateconf-defaults-mechanism
 %{_libexecdir}/mateconf-sanity-check-2
 %{_libexecdir}/mateconfd-2
-%config(noreplace) %{_sysconfdir}/mateconf/2/path
-%{_libdir}/libmateconf-2.so.4.1.5
 %{_libdir}/libmateconf-2.so.4
-%{_sysconfdir}/dbus-1/system.d/org.mate.MateConf.Defaults.conf
-%{_libexecdir}/mateconf-defaults-mechanism
-%{_sysconfdir}/xdg/autostart/mateconf-gsettings-data-convert.desktop
+%{_libdir}/libmateconf-2.so.4.1.5
+%{_libdir}/MateConf/2/*.so
+%{_libdir}/gio/modules/libgsettingsmateconfbackend.so
+%{_libdir}/girepository-1.0/MateConf-2.0.typelib
+#%{_datadir}/applications/mateconf-gsettings-data-convert.desktop
+%{_datadir}/dbus-1/services/org.mate.MateConf.service
 %{_datadir}/dbus-1/system-services/org.mate.MateConf.Defaults.service
 %{_datadir}/polkit-1/actions/org.mate.mateconf.defaults.policy
+%{_sysconfdir}/rpm/macros.mateconf
+%{_datadir}/MateConf/schema/evoldap.schema
+%{_datadir}/gtk-doc/html/mateconf
 
+%files gtk
+%{_libexecdir}/mateconf-sanity-check-2
 
 %files devel
+%{_datadir}/gtk-doc/html/mateconf
 %{_libdir}/libmateconf-2.so
-%{_libdir}/pkgconfig/mateconf-2.0.pc
-%{_includedir}/mateconf/2/mateconf
+%{_includedir}/mateconf
 %{_datadir}/gir-1.0/MateConf-2.0.gir
-%{_libdir}/gio/modules/libgsettingsmateconfbackend.so
-%{_libdir}/girepository-1.0/MateConf-2.0.typelib
-%{_libdir}/MateConf/2/libmateconfbackend-oldxml.so
-%{_libdir}/MateConf/2/libmateconfbackend-xml.so
+%{_datadir}/aclocal/*.m4
+%{_libdir}/pkgconfig/*
 
 %changelog
+* Tue Sep 18 2012 Dan Mashal <dan.mashal at fedoraproject.org> 1.4.0-18
+- Rebuild again.
+
 * Thu Sep 06 2012 Dan Mashal <dan.mashal at fedoraproject.org> 1.4.0-17
 - Rebuild entire spec from scratch
 


More information about the scm-commits mailing list