diff --git a/.gitignore b/.gitignore index 9e16b59..02dd8e0 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,18 @@ /AppStream-0.14.3.tar.xz /AppStream-0.14.4.tar.xz /AppStream-0.14.5.tar.xz +/AppStream-0.14.6.tar.xz +/AppStream-0.15.1.tar.xz +/AppStream-0.15.2.tar.xz +/AppStream-0.15.3.tar.xz +/AppStream-0.15.4.tar.xz +/AppStream-0.15.5.tar.xz +/AppStream-0.16.1.tar.xz +/appstream-d88ed03cb5b3b1803bdee3528c9b99d528ceb065.tar.gz +/AppStream-1.0.0.tar.xz +/AppStream-1.0.1.tar.xz +/AppStream-1.0.2.tar.xz +/AppStream-1.0.4.tar.xz +/AppStream-1.0.5.tar.xz +/AppStream-1.0.6.tar.xz +/AppStream-1.1.0.tar.xz diff --git a/appstream.spec b/appstream.spec index e1dcf8c..486b97e 100644 --- a/appstream.spec +++ b/appstream.spec @@ -1,54 +1,57 @@ - -# Vala/Vapi support ( upstream disabled by default, probably explains why it the build breaks often ) -%global vala 1 +%bcond stemming %{undefined rhel} Summary: Utilities to generate, maintain and access the AppStream database Name: appstream -Version: 0.14.5 -Release: 1%{?dist} +Version: 1.1.0 +Release: 2%{?dist} # lib LGPLv2+, tools GPLv2+ -License: GPLv2+ and LGPLv2+ +License: GPL-2.0-or-later AND LGPL-2.1-or-later #URL: http://www.freedesktop.org/wiki/Distributions/AppStream URL: https://github.com/ximion/appstream -Source0: http://www.freedesktop.org/software/appstream/releases/AppStream-%{version}.tar.xz +Source0: https://www.freedesktop.org/software/appstream/releases/AppStream-%{version}.tar.xz -## upstream patches (lookaside cache) +# upstream patches + +# upstreamable patches -## upstreamable patches # needed for cmake auto-provides BuildRequires: cmake -BuildRequires: meson +BuildRequires: meson >= 0.62 BuildRequires: gettext +BuildRequires: git-core BuildRequires: gperf BuildRequires: gtk-doc BuildRequires: intltool BuildRequires: itstool +%if %{with stemming} BuildRequires: libstemmer-devel +%endif BuildRequires: pkgconfig(cairo) BuildRequires: pkgconfig(freetype2) BuildRequires: pkgconfig(fontconfig) BuildRequires: pkgconfig(gdk-pixbuf-2.0) +BuildRequires: pkgconfig(gi-docgen) >= 2021.1 BuildRequires: pkgconfig(gio-2.0) BuildRequires: pkgconfig(gobject-introspection-1.0) BuildRequires: pkgconfig(libcurl) -BuildRequires: pkgconfig(libsoup-2.4) +BuildRequires: pkgconfig(libfyaml) BuildRequires: pkgconfig(librsvg-2.0) +BuildRequires: pkgconfig(libsystemd) BuildRequires: pkgconfig(libxml-2.0) -BuildRequires: pkgconfig(lmdb) -BuildRequires: pkgconfig(packagekit-glib2) +BuildRequires: pkgconfig(libzstd) BuildRequires: pkgconfig(pango) -BuildRequires: pkgconfig(protobuf-lite) -BuildRequires: pkgconfig(Qt5Core) -# lrelease -BuildRequires: qt5-linguist +BuildRequires: pkgconfig(Qt6Core) >= 6.2.4 +BuildRequires: pkgconfig(xmlb) >= 0.3.14 BuildRequires: pkgconfig(yaml-0.1) +# lrelease +BuildRequires: qt6-linguist BuildRequires: sed BuildRequires: vala BuildRequires: xmlto -Requires: appstream-data +Requires: (appstream-data if PackageKit) %description AppStream makes it easy to access application information from the @@ -77,7 +80,7 @@ Requires: %{name}-devel%{?_isa} = %{version}-%{release} %{summary}. %package qt -Summary: Qt5 bindings for %{name} +Summary: Qt6 bindings for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} %description qt %{summary}. @@ -85,20 +88,21 @@ Requires: %{name}%{?_isa} = %{version}-%{release} %package qt-devel Summary: Development files for %{name}-qt bindings Requires: %{name}-qt%{?_isa} = %{version}-%{release} -Requires: pkgconfig(Qt5Core) +Requires: pkgconfig(Qt6Core) >= 6.2.4 %description qt-devel %{summary}. %prep -%autosetup -n AppStream-%{version} -p1 +%autosetup -n AppStream-%{version} -S git_am %build %{meson} \ -Dcompose=true \ -Dqt=true \ - -Dvapi=%{?vala:true}%{!?vala:false} + -Dstemming=%{?with_stemming:true}%{!?with_stemming:false} \ + -Dvapi=true %{meson_build} @@ -106,8 +110,8 @@ Requires: pkgconfig(Qt5Core) %install %{meson_install} -mkdir -p %{buildroot}/var/cache/app-info/{icons,gv,xmls} -touch %{buildroot}/var/cache/app-info/cache.watch +mkdir -p %{buildroot}/var/cache/swcatalog/{icons,gv,xml} +touch %{buildroot}/var/cache/swcatalog/cache.watch %find_lang appstream @@ -123,45 +127,33 @@ mv %{buildroot}%{_datadir}/metainfo/*.xml \ %{meson_test} ||: -%ldconfig_scriptlets - %posttrans %{_bindir}/appstreamcli refresh --force >& /dev/null ||: -## use file triggers instead of static pkg names -## other repos can provide appdata too -%if 0%{?fedora} > 25 -## not sure how smart appstreamcli is about cache validation -## to judge if --force is really needed here or not -- rex -%transfiletriggerin -- %{_datadir}/app-info/xmls +%transfiletriggerin -- %{_datadir}/swcatalog/xml %{_bindir}/appstreamcli refresh --force >& /dev/null ||: -%transfiletriggerpostun -- %{_datadir}/app-info/xmls -%{_bindir}/appstreamcli refresh >& /dev/null ||: -%else -%triggerun -- appstream-data -%{_bindir}/appstreamcli refresh >& /dev/null ||: -%endif +%transfiletriggerpostun -- %{_datadir}/swcatalog/xml +%{_bindir}/appstreamcli refresh --force >& /dev/null ||: %files -f appstream.lang %doc AUTHORS -%license LICENSE.GPLv2 -%license LICENSE.LGPLv2.1 +%license COPYING %{_bindir}/appstreamcli %{_mandir}/man1/appstreamcli.1* -%config(noreplace) %{_sysconfdir}/appstream.conf +%{_datadir}/appstream/ %dir %{_libdir}/girepository-1.0/ %{_libdir}/girepository-1.0/AppStream-1.0.typelib -%{_libdir}/libappstream.so.4* +%{_libdir}/libappstream.so.5 %{_libdir}/libappstream.so.%{version} %{_metainfodir}/org.freedesktop.appstream.cli.*.xml # put in -devel? -- rex %{_datadir}/gettext/its/metainfo.* -%ghost /var/cache/app-info/cache.watch -%dir /var/cache/app-info/ -%dir /var/cache/app-info/icons/ -%dir /var/cache/app-info/gv/ -%dir /var/cache/app-info/xmls/ +%ghost /var/cache/swcatalog/cache.watch +%dir /var/cache/swcatalog/ +%dir /var/cache/swcatalog/icons/ +%dir /var/cache/swcatalog/gv/ +%dir /var/cache/swcatalog/xml/ %files devel %{_includedir}/appstream/ @@ -169,12 +161,10 @@ mv %{buildroot}%{_datadir}/metainfo/*.xml \ %{_libdir}/pkgconfig/appstream.pc %dir %{_datadir}/gir-1.0/ %{_datadir}/gir-1.0/AppStream-1.0.gir -%if 0%{?vala} %dir %{_datadir}/vala %dir %{_datadir}/vala/vapi %{_datadir}/vala/vapi/appstream.deps %{_datadir}/vala/vapi/appstream.vapi -%endif %{_docdir}/appstream/html/ ## symlink pointing to ^^, but need to take care, since rpm has ## trouble replacing dirs with symlinks, omit it for now -- rex @@ -182,12 +172,10 @@ mv %{buildroot}%{_datadir}/metainfo/*.xml \ # Maybe this should be split out? -- ngompa %{_datadir}/installed-tests/appstream/metainfo-validate.test -%ldconfig_scriptlets compose - %files compose %{_libexecdir}/appstreamcli-compose %{_mandir}/man1/appstreamcli-compose.1* -%{_libdir}/libappstream-compose.so.0* +%{_libdir}/libappstream-compose.so.0 %{_libdir}/libappstream-compose.so.%{version} %{_libdir}/girepository-1.0/AppStreamCompose-1.0.typelib %{_metainfodir}/org.freedesktop.appstream.compose.metainfo.xml @@ -197,11 +185,12 @@ mv %{buildroot}%{_datadir}/metainfo/*.xml \ %{_libdir}/libappstream-compose.so %{_libdir}/pkgconfig/appstream-compose.pc %{_datadir}/gir-1.0/AppStreamCompose-1.0.gir - -%ldconfig_scriptlets qt +%dir %{_datadir}/gtk-doc/ +%dir %{_datadir}/gtk-doc/html/ +%{_datadir}/gtk-doc/html/appstream-compose %files qt -%{_libdir}/libAppStreamQt.so.2* +%{_libdir}/libAppStreamQt.so.3 %{_libdir}/libAppStreamQt.so.%{version} %files qt-devel @@ -211,6 +200,100 @@ mv %{buildroot}%{_datadir}/metainfo/*.xml \ %changelog +* Fri Jan 16 2026 Fedora Release Engineering - 1.1.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + +* Fri Sep 26 2025 Neal Gompa - 1.1.0-1 +- Update to 1.1.0 + +* Mon Aug 18 2025 Marc-André Lureau - 1.0.6-1 +- rebuilt + +* Wed Jul 23 2025 Fedora Release Engineering - 1.0.4-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Fri Mar 14 2025 Shawn W. Dunn - 1.0.4-2 +- Change appstream-data to a conditional Requires: + +* Sun Jan 19 2025 Pavel Solovev - 1.0.4-1 +- Update to 1.0.4 + +* Thu Jan 16 2025 Fedora Release Engineering - 1.0.2-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Wed Jul 17 2024 Fedora Release Engineering - 1.0.2-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Fri Jul 05 2024 Yaakov Selkowitz - 1.0.2-3 +- Disable stemming support on RHEL + +* Sat Mar 09 2024 Alessandro Astone - 1.0.2-2 +- Backport patch to fix installing swcatalog + +* Sun Feb 25 2024 Neal Gompa - 1.0.2-1 +- Update to 1.0.2 +- Clean up some pre-1.0 scriptlet cruft + +* Mon Jan 22 2024 Fedora Release Engineering - 1.0.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Jan 19 2024 Fedora Release Engineering - 1.0.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Wed Jan 03 2024 Steve Cossette - 1.0.1-1 +- Update to 1.0.1 + +* Fri Nov 17 2023 Neal Gompa - 1.0.0-1 +- Update to 1.0.0 final + +* Thu Nov 02 2023 Neal Gompa - 1.0.0~git20231102.d88ed03-1 +- Rebase to 1.0.0 git snapshot + +* Mon Aug 21 2023 Parag Nemade - 0.16.1-4 +- Migrate to SPDX license expression + +* Wed Jul 19 2023 Fedora Release Engineering - 0.16.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Mon Jun 19 2023 Yaakov Selkowitz - 0.16.1-2 +- Disable Qt5 in RHEL 10 builds +- Remove obsolete BuildRequires + +* Sat Feb 11 2023 Neal Gompa - 0.16.1-1 +- Update to 0.16.1 + +* Wed Jan 18 2023 Fedora Release Engineering - 0.15.5-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Tue Sep 6 2022 Amit Shah - 0.15.5-2 +- Make qt deps and builds conditional + +* Fri Sep 02 2022 Rex Dieter - 0.15.5-1 +- 0.15.5 + +* Wed Jul 20 2022 Fedora Release Engineering - 0.15.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Tue Jun 07 2022 Rex Dieter - 0.15.4-1 +- 0.15.4 + +* Tue Apr 19 2022 Rex Dieter 0.15.3-1 +- 0.15.3 + +* Wed Feb 23 2022 Rex Dieter - 0.15.2-1 +- 0.15.2 +- support only filetriggers + +* Wed Jan 19 2022 Fedora Release Engineering - 0.15.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Wed Dec 29 2021 Rex Dieter - 0.15.1-1 +- 0.15.1 (#2028696) +- update triggers to consistently use --force flag on 'appstreamcli refresh' calls + +* Tue Oct 12 2021 Rex Dieter - 0.14.6-1 +- 0.14.6 + * Sat Aug 28 2021 Neal Gompa - 0.14.5-1 - Update to 0.14.5 diff --git a/sources b/sources index 6a4e9fa..dc574cc 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (AppStream-0.14.5.tar.xz) = 3f2fff8ee98a5689534802136b9fc8368422ce73c72458924b49beeb5b01170dadf25308bee692cfbc0b0a6cd4b3ee3047e46668a1b76a16b23faec4bf8ae78c +SHA512 (AppStream-1.1.0.tar.xz) = d775f3e1ed22cdedcdc12e103a35752f2cbb1700deb03118600a83a3fbf1489f34d62c833f5fc0279f40d9d8066a6cb2e6be358844adc366809777c5061c2342 diff --git a/tests/test_appstream.py b/tests/test_appstream.py index 00e014c..6642809 100644 --- a/tests/test_appstream.py +++ b/tests/test_appstream.py @@ -35,7 +35,7 @@ class TestAppstream(unittest.TestCase): 'Homepage: https://mike-fabian.github.io/ibus-typing-booster/' in output_lines) self.assertTrue( - 'Icon: ibus-typing-booster.png' + 'Icon: org.freedesktop.ibus.engine.typing_booster.emoji_picker.png' in output_lines) # This section not always there, better don’t test for this: # self.assertTrue(