Hello community,
here is the log from the commit of package libzypp-plugin-appdata for
openSUSE:Factory checked in at 2018-04-30 22:49:48
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libzypp-plugin-appdata (Old)
and /work/SRC/openSUSE:Factory/.libzypp-plugin-appdata.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libzypp-plugin-appdata"
Mon Apr 30 22:49:48 2018 rev:19 rq:601527 version:1.0.1+git.20180426
Changes:
--------
---
/work/SRC/openSUSE:Factory/libzypp-plugin-appdata/libzypp-plugin-appdata.changes
2018-04-26 13:22:13.650812872 +0200
+++
/work/SRC/openSUSE:Factory/.libzypp-plugin-appdata.new/libzypp-plugin-appdata.changes
2018-04-30 22:49:50.112390916 +0200
@@ -1,0 +2,14 @@
+Thu Apr 26 08:01:48 UTC 2018 - [email protected]
+
+- Update to version 1.0.1+git.20180426:
+ * systemd-service: we only need local filesystem, no network.
+
+-------------------------------------------------------------------
+Wed Apr 25 16:03:37 UTC 2018 - [email protected]
+
+- Update to version 1.0.1+git.20180425:
+ * Rewrite InstallAppdata in python, having slightly better
+ control over the execution
+ * Add systemd service to resync the repodata cache (boo#1009745).
+
+-------------------------------------------------------------------
Old:
----
openSUSE-appstream-1.0.1+git.20180327.tar.xz
New:
----
libzypp-plugin-appdata-rpmlintrc
openSUSE-appstream-1.0.1+git.20180426.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libzypp-plugin-appdata.spec ++++++
--- /var/tmp/diff_new_pack.0IIgWT/_old 2018-04-30 22:49:51.196351367 +0200
+++ /var/tmp/diff_new_pack.0IIgWT/_new 2018-04-30 22:49:51.204351075 +0200
@@ -17,13 +17,14 @@
Name: libzypp-plugin-appdata
-Version: 1.0.1+git.20180327
+Version: 1.0.1+git.20180426
Release: 0
Summary: Extend libzypp to handle AppStream metadata
License: MIT AND CC0-1.0
Group: System/Libraries
URL: https://wiki.gnome.org/Design/Apps/Software
Source0: openSUSE-appstream-%{version}.tar.xz
+Source99: libzypp-plugin-appdata-rpmlintrc
# appstreamcli is provided by the AppStream package
Requires: AppStream
# appstream-glib >= 0.3.6 is the first to correctly to appstream-util
uninstall in /var/cache
@@ -67,16 +68,39 @@
cp appdata-extra/*/* %{buildroot}%{_datadir}/appdata-extra/
# Install AppData zypp plugin
-install -Dm 0755 InstallAppdata.sh
%{buildroot}%{_prefix}/lib/zypp/plugins/appdata/InstallAppdata.sh
+install -Dm 0755 InstallAppdata.py
%{buildroot}%{_prefix}/lib/zypp/plugins/appdata/InstallAppdata
install -Dm 0755 AsHelper.py %{buildroot}%{_libexecdir}/AsHelper
+# Install zypper helper command
+install -Dm 0755 zypper-appstream-cache
%{buildroot}%{_prefix}/lib/zypper/commands/zypper-appstream-cache
+
+# Install the systemd service, which triggers when /var/cache/app-info/xmls
does not yet exist during a boot
+install -dm 0755 %{buildroot}%{_unitdir}
+install -m 0644 appstream-sync-cache.service %{buildroot}%{_unitdir}
+
+%preun
+%service_del_preun appstream-sync-cache.service
+
+%pre
+%service_add_pre appstream-sync-cache.service
+
+%post
+%service_add_post appstream-sync-cache.service
+
+%postun
+%service_del_postun appstream-sync-cache.service
+
%files
# zypp plugin triggering AppData update on repo refresh
%dir %{_prefix}/lib/zypp
%dir %{_prefix}/lib/zypp/plugins
%dir %{_prefix}/lib/zypp/plugins/appdata/
-%{_prefix}/lib/zypp/plugins/appdata/InstallAppdata.sh
+%{_prefix}/lib/zypp/plugins/appdata/InstallAppdata
+%dir %{_prefix}/lib/zypper
+%dir %{_prefix}/lib/zypper/commands
+%{_prefix}/lib/zypper/commands/zypper-appstream-cache
%{_libexecdir}/AsHelper
+%{_unitdir}/appstream-sync-cache.service
%files -n openSUSE-appdata-extra
%{_datadir}/appdata-extra/
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.0IIgWT/_old 2018-04-30 22:49:51.248349470 +0200
+++ /var/tmp/diff_new_pack.0IIgWT/_new 2018-04-30 22:49:51.248349470 +0200
@@ -1,4 +1,4 @@
<servicedata>
<service name="tar_scm">
<param
name="url">https://github.com/DimStar77/openSUSE-appstream.git</param>
- <param
name="changesrevision">4852b6d6bcdc33e1d8c315657e3ffb8dfbf81410</param></service></servicedata>
\ No newline at end of file
+ <param
name="changesrevision">8708ff5b3330e28eefb228a78d719871ff5bd6da</param></service></servicedata>
\ No newline at end of file
++++++ libzypp-plugin-appdata-rpmlintrc ++++++
# W: shlib-policy-missing-lib: false positive: this integrates with libzypp,
name is correct
addFilter("shlib-policy-missing-lib");
# W: suse-missing-rclink: the service is not meant to be manually started,
hence the rcFOO link makes no sense
addFilter("suse-missing-rclink");
++++++ openSUSE-appstream-1.0.1+git.20180327.tar.xz ->
openSUSE-appstream-1.0.1+git.20180426.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-appstream-1.0.1+git.20180327/InstallAppdata.py
new/openSUSE-appstream-1.0.1+git.20180426/InstallAppdata.py
--- old/openSUSE-appstream-1.0.1+git.20180327/InstallAppdata.py 1970-01-01
01:00:00.000000000 +0100
+++ new/openSUSE-appstream-1.0.1+git.20180426/InstallAppdata.py 2018-04-26
11:36:41.000000000 +0200
@@ -0,0 +1,53 @@
+#!/usr/bin/python3
+
+# Copyright (c) 2014-2018 Dominique Leuenberger, Muhen, Switzerland
+# Copyright (c) 2016 Raymond Wooninck, Vienna, Austria
+
+# Permission is hereby granted, free of charge, to any person obtaining
+# a copy of this software and associated documentation files (the
+# "Software"), to deal in the Software without restriction, including
+# without limitation the rights to use, copy, modify, merge, publish,
+# distribute, sublicense, and/or sell copies of the Software, and to
+# permit persons to whom the Software is furnished to do so, subject to
+# the following conditions:
+
+# The above copyright notice and this permission notice shall be
+# included in all copies or substantial portions of the Software.
+
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+import os
+import sys
+import glob
+
+# Cleanup existing appdata found on the system
+
+for oldappdata in glob.glob('/var/cache/app-info/xmls/*.xml.gz'):
+ appdata=os.path.basename(oldappdata).strip('.xml.gz')
+ os.system("/usr/bin/appstream-util uninstall \"%s\"" % appdata)
+
+# Install new appdata files - libzypp calls us with 6 parameters per repo:
+# -R REPO_ALIAS -t REPO_TYPE -p REPO_METADATA_PATH [-R NEXT_REPO....]
+# We can just blindly pass the parameters through to to helper
+args=sys.argv[1:]
+
+try:
+ while args[0] == "-R":
+ os.system("/usr/lib/AsHelper install %s %s %s %s %s %s" % (args[0],
args[1], args[2], args[3], args[4], args[5]))
+ args=args[6:]
+except IndexError:
+ pass
+
+# Fixup icon that might have uncompressed with odd permissions
+for icondir in glob.glob('/var/cache/app-info/icons/*'):
+ os.chmod(icondir, 0o755)
+
+# (Re)create the Xapian database required by the KDE tools
+os.system("/usr/bin/appstreamcli refresh-cache")
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-appstream-1.0.1+git.20180327/InstallAppdata.sh
new/openSUSE-appstream-1.0.1+git.20180426/InstallAppdata.sh
--- old/openSUSE-appstream-1.0.1+git.20180327/InstallAppdata.sh 2018-03-27
13:24:05.000000000 +0200
+++ new/openSUSE-appstream-1.0.1+git.20180426/InstallAppdata.sh 1970-01-01
01:00:00.000000000 +0100
@@ -1,44 +0,0 @@
-#!/bin/bash
-
-# Copyright (c) 2014-2018 Dominique Leuenberger, Muhen, Switzerland
-# Copyright (c) 2016 Raymond Wooninck, Vienna, Austria
-
-# Permission is hereby granted, free of charge, to any person obtaining
-# a copy of this software and associated documentation files (the
-# "Software"), to deal in the Software without restriction, including
-# without limitation the rights to use, copy, modify, merge, publish,
-# distribute, sublicense, and/or sell copies of the Software, and to
-# permit persons to whom the Software is furnished to do so, subject to
-# the following conditions:
-
-# The above copyright notice and this permission notice shall be
-# included in all copies or substantial portions of the Software.
-
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-
-# Cleanup existing appdata found on the system
-for list in $(find /var/cache/app-info/xmls/*.xml.gz 2> /dev/null); do
- appdata=$(basename ${list} .xml.gz)
- appstream-util uninstall "${appdata}" 2>&1 > /dev/null
-done
-
-# Install new appdata files - libzypp calls us with 6 parameters per repo:
-# -R REPO_ALIAS -t REPO_TYPE -p REPO_METADATA_PATH [-R NEXT_REPO....]
-# We can just blindly pass the parameters through to to helper
-while ([ "$1" = "-R" ]); do
- /usr/lib/AsHelper install $1 $2 $3 $4 $5 $6
- shift 6
-done
-
-# Fixup icon that might have uncompressed with odd permissions
-chmod 755 /var/cache/app-info/icons/*
-
-# (Re)create the Xapian database required by the KDE tools
-appstreamcli refresh-cache
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-appstream-1.0.1+git.20180327/appstream-sync-cache.service
new/openSUSE-appstream-1.0.1+git.20180426/appstream-sync-cache.service
--- old/openSUSE-appstream-1.0.1+git.20180327/appstream-sync-cache.service
1970-01-01 01:00:00.000000000 +0100
+++ new/openSUSE-appstream-1.0.1+git.20180426/appstream-sync-cache.service
2018-04-26 11:36:41.000000000 +0200
@@ -0,0 +1,12 @@
+[Unit]
+Description=Synchronize AppStream metadata from repositories into AS-cache
+After=local-fs.target
+ConditionDirectoryNotEmpty=!/var/cache/app-info/xmls
+
+[Service]
+Type=forking
+ExecStart=/usr/bin/zypper appstream-cache
+
+[Install]
+WantedBy=multi-user.target
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/openSUSE-appstream-1.0.1+git.20180327/zypper-appstream-cache
new/openSUSE-appstream-1.0.1+git.20180426/zypper-appstream-cache
--- old/openSUSE-appstream-1.0.1+git.20180327/zypper-appstream-cache
1970-01-01 01:00:00.000000000 +0100
+++ new/openSUSE-appstream-1.0.1+git.20180426/zypper-appstream-cache
2018-04-26 11:36:41.000000000 +0200
@@ -0,0 +1,4 @@
+#!/bin/bash
+
+echo "Forcing resync of AppStream medata from repo cache into
/var/cache/app-info"
+ZYPP_PLUGIN_APPDATA_FORCE_COLLECT=1 zypper -n lr >/dev/null 2>&1