From c219df8f32291b0e9194f0187032de7b9070fbac Mon Sep 17 00:00:00 2001 From: Georgy Yakovlev Date: Wed, 12 Feb 2020 23:32:27 -0800 Subject: metadata/install-qa-check.d/60appdata-path: new check this will warn if package installs xml files to /usr/share/appdata this location is deprecated, files should be installed to /usr/share/metainfo https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html Signed-off-by: Georgy Yakovlev --- metadata/install-qa-check.d/60appdata-path | 35 ++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 metadata/install-qa-check.d/60appdata-path diff --git a/metadata/install-qa-check.d/60appdata-path b/metadata/install-qa-check.d/60appdata-path new file mode 100644 index 000000000000..578137a3e9e7 --- /dev/null +++ b/metadata/install-qa-check.d/60appdata-path @@ -0,0 +1,35 @@ +# Copyright 2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# QA check: ensure that metadata files are installed in /usr/share/metainfo +# Maintainer: Georgy Yakovlev + +appdata_path_check() { + [[ -d ${ED%/}/usr/share/appdata ]] || return + + local found=() f + while read -d '' -r f; do + found+=( "${f%/*}" ) + done < <(find "${ED%/}/usr/share/appdata" -name '*.xml' -print0 || die) + + if [[ ${found[@]} ]]; then + eqawarn + eqawarn "This package seems to install metainfo files into the following" + eqawarn "location(s):" + eqawarn + eqatag -v appdata.invalid-path "${found[@]#${D%/}}" + eqawarn + eqawarn "This location is deprecated, it should not be used anymore by new software." + eqawarn "Appdata/Metainfo files should be installed into /usr/share/metainfo directory." + eqawarn "For more details, please see the freedesktop Upstream Metadata guidelines at" + eqawarn "https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html" + eqawarn + eqawarn "Gentoo Tracker bug: https://bugs.gentoo.org/709450" + eqawarn + fi +} + +appdata_path_check +: # guarantee successful exit + +# vim:ft=sh -- cgit v1.2.3-18-g5258