#!/bin/bash # Copyright (c) 2014 Dominique Leuenberger, Amsterdam, The Netherlands # 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. RPMMD=/repodata YAST2=/suse/setup/descr # 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 while ([ "$1" = "-R" ]); do case $4 in rpm-md) if appstream-util validate-relax --nonet "$6$RPMMD/"*appdata.xml.gz 2>&1 > /dev/null; then appstream-util install-origin "$2" "$6$RPMMD/"*appdata.xml.gz "$6$RPMMD/"*app-icons.tar.gz 2>&1 > /dev/null fi ;; yast2) # We do not validate an appdata.xml.gz in a yast2 repo: those are created by appstream-builder, and we can trust them #if appstream-util validate-relax --nonet "$6$YAST2/appdata.xml.gz" 2>&1 > /dev/null; then appstream-util install-origin "$2" "$6$YAST2/appdata.xml.gz" "$6$YAST2/appdata-icons.tar.gz" 2>&1 > /dev/null #fi ;; *) echo "unknown repo type - Appstream data not considered" esac shift 6 done # Fixup icon that might have uncompressed with odd permissions chmod 755 /var/cache/app-info/icons/*