#
# Conditional build:
-%bcond_without apidocs # do not build and package API docs
-%bcond_without vala # do not build Vala API
+%bcond_without apidocs # gtk-doc based API documentation
+%bcond_without vala # Vala API
#
Summary: Low-level configuration system
Summary(pl.UTF-8): Niskopoziomowy system konfiguracji
Name: dconf
-Version: 0.16.0
-Release: 1
-License: LGPL v2+
+Version: 0.40.0
+Release: 4
+License: LGPL v2.1+
Group: Libraries
-Source0: http://ftp.gnome.org/pub/GNOME/sources/dconf/0.16/%{name}-%{version}.tar.xz
-# Source0-md5: a266b3f75edabaf15ffcbe9e21130f7e
-URL: http://live.gnome.org/dconf
-BuildRequires: autoconf >= 2.50
-BuildRequires: automake >= 1:1.11
+Source0: https://download.gnome.org/sources/dconf/0.40/%{name}-%{version}.tar.xz
+# Source0-md5: ac8db20b0d6b996d4bbbeb96463d01f0
+URL: https://wiki.gnome.org/Projects/dconf
+BuildRequires: bash-completion-devel >= 2.10
BuildRequires: dbus-devel
-BuildRequires: gettext-devel
-BuildRequires: glib2-devel >= 1:2.35.2
-BuildRequires: gtk+3-devel >= 3.0.0
+BuildRequires: glib2-devel >= 1:2.44.0
BuildRequires: gtk-doc >= 1.15
-BuildRequires: intltool >= 0.50.0
-BuildRequires: libxml2-devel
BuildRequires: libxslt-progs
-BuildRequires: rpmbuild(macros) >= 1.527
+BuildRequires: meson >= 0.47.0
+BuildRequires: ninja >= 1.5
+BuildRequires: pkgconfig
+BuildRequires: rpm-build >= 4.6
+BuildRequires: rpmbuild(macros) >= 1.736
BuildRequires: tar >= 1:1.22
-# not needed atm., generated files are packaged
-#%{?with_vala:BuildRequires: vala >= 2:0.17.0}
+# not needed atm., generated files (.deps, .vapi) are packaged in tarball
+#%{?with_vala:BuildRequires: vala >= 2:0.18.0}
BuildRequires: xz
-Requires(post,postun): glib2 >= 1:2.35.2
+Requires(post,postun): glib2 >= 1:2.44.0
Requires: dbus
-Requires: glib2 >= 1:2.35.2
+Requires: glib2 >= 1:2.44.0
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
Summary(pl.UTF-8): Pliki nagłówkowe biblioteki dconf
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
-Requires: dbus-devel
-Requires: glib2-devel >= 1:2.35.2
+Requires: glib2-devel >= 1:2.44.0
%description devel
Header files for dconf library.
%description devel -l pl.UTF-8
Pliki nagłówkowe biblioteki dconf.
-%package editor
-Summary: Configuration editor for dconf
-Summary(pl.UTF-8): Edytor konfiguracji dla dconf
-Group: X11/Applications
-Requires: %{name} = %{version}-%{release}
-Requires(post,postun): gtk-update-icon-cache
-Requires: hicolor-icon-theme
-
-%description editor
-dconf-editor allows you to browse and modify dconf database.
-
-%description editor -l pl.UTF-8
-dconf-editor pozwala na przeglądanie i modyfikowanie bazy dconf.
-
%package apidocs
Summary: dconf API documentation
Summary(pl.UTF-8): Dokumentacja API biblioteki dconf
Group: Documentation
Requires: gtk-doc-common
+BuildArch: noarch
%description apidocs
API documentation for dconf library.
Summary: bash-completion for dconf
Summary(pl.UTF-8): Bashowe uzupełnianie nazw dla dconf
Group: Applications/Shells
-Requires: bash-completion >= 2
+Requires: bash-completion >= 2.10
+BuildArch: noarch
%description -n bash-completion-dconf
bash-completion for dconf.
Summary(pl.UTF-8): API dconf dla języka Vala
Group: Development/Libraries
Requires: %{name}-devel = %{version}-%{release}
-Requires: vala >= 2:0.17.0
+Requires: vala >= 2:0.18.0
+BuildArch: noarch
%description -n vala-dconf
dconf API for Vala language.
%setup -q
%build
-%{__intltoolize}
-%{__aclocal}
-%{__autoconf}
-%{__autoheader}
-%{__automake}
-%configure \
- --with-html-dir=%{_gtkdocdir} \
- %{__enable_disable apidocs gtk-doc} \
- --disable-silent-rules
-%{__make}
+%meson build \
+ -Dgtk_doc=%{__true_false apidocs} \
+ -Dsystemduserunitdir=%{systemduserunitdir}
+
+%ninja_build -C build
%install
rm -rf $RPM_BUILD_ROOT
-
install -d $RPM_BUILD_ROOT%{_sysconfdir}/dconf/{db,profile}
+install -d $RPM_BUILD_ROOT%{_datadir}/dconf/profile
-%{__make} install \
- DESTDIR=$RPM_BUILD_ROOT
+%ninja_install -C build
%{!?with_apidocs:rm -rf $RPM_BUILD_ROOT%{_gtkdocdir}}
-%find_lang %{name}
-
%clean
rm -rf $RPM_BUILD_ROOT
%glib_compile_schemas
-%post editor
-%update_icon_cache hicolor
-%update_icon_cache HighContrast
-
-%postun editor
-%update_icon_cache hicolor
-%update_icon_cache HighContrast
-
-%files -f %{name}.lang
+%files
%defattr(644,root,root,755)
%doc NEWS README
%attr(755,root,root) %{_bindir}/dconf
%attr(755,root,root) %{_libdir}/libdconf.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libdconf.so.1
-%attr(755,root,root) %{_libdir}/libdconf-dbus-1.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libdconf-dbus-1.so.0
%attr(755,root,root) %{_libexecdir}/dconf-service
%attr(755,root,root) %{_libdir}/gio/modules/libdconfsettings.so
%{_datadir}/dbus-1/services/ca.desrt.dconf.service
-%{_datadir}/glib-2.0/schemas/ca.desrt.dconf-editor.gschema.xml
+%{systemduserunitdir}/dconf.service
%dir %{_sysconfdir}/dconf
%dir %{_sysconfdir}/dconf/db
%dir %{_sysconfdir}/dconf/profile
+%dir %{_datadir}/dconf
+%dir %{_datadir}/dconf/profile
%{_mandir}/man1/dconf-service.1*
%{_mandir}/man1/dconf.1*
%{_mandir}/man7/dconf.7*
%files devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libdconf.so
-%attr(755,root,root) %{_libdir}/libdconf-dbus-1.so
%{_includedir}/dconf
-%{_includedir}/dconf-dbus-1
%{_pkgconfigdir}/dconf.pc
-%{_pkgconfigdir}/dconf-dbus-1.pc
-
-%files editor
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/dconf-editor
-%{_desktopdir}/dconf-editor.desktop
-%{_datadir}/dconf-editor
-%{_iconsdir}/hicolor/*/*/*.png
-%{_iconsdir}/HighContrast/*/*/*.png
-%{_mandir}/man1/dconf-editor.1*
%if %{with apidocs}
%files apidocs
%files -n bash-completion-dconf
%defattr(644,root,root,755)
-%{_datadir}/bash-completion/completions/dconf
+%{bash_compdir}/dconf
%if %{with vala}
%files -n vala-dconf