summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org>2019-02-12 06:47:45 +0100
committerZac Medico <zmedico@gentoo.org>2019-02-12 15:35:37 -0800
commit571947cbec7f1f79f8cfff5a4b1ecac129f8e635 (patch)
treed4136eb03155854aac140dd1198e9d51d0076d40
parentDon't define a default for ACCEPT_LICENSE (diff)
downloadportage-571947cbec7f1f79f8cfff5a4b1ecac129f8e635.tar.gz
portage-571947cbec7f1f79f8cfff5a4b1ecac129f8e635.tar.bz2
portage-571947cbec7f1f79f8cfff5a4b1ecac129f8e635.zip
{pre,post}inst-qa-check.d: Move gnome2_icon_cache_check() from 50gnome2-utils to 50xdg-utils.
No changes inside source code of this function. Bug: https://bugs.gentoo.org/677776 Signed-off-by: Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org> Signed-off-by: Zac Medico <zmedico@gentoo.org>
-rw-r--r--bin/postinst-qa-check.d/50gnome2-utils54
-rw-r--r--bin/postinst-qa-check.d/50xdg-utils54
2 files changed, 54 insertions, 54 deletions
diff --git a/bin/postinst-qa-check.d/50gnome2-utils b/bin/postinst-qa-check.d/50gnome2-utils
index 29ea7c844..9a5565ee2 100644
--- a/bin/postinst-qa-check.d/50gnome2-utils
+++ b/bin/postinst-qa-check.d/50gnome2-utils
@@ -1,61 +1,7 @@
# check for missing calls to gnome2-utils regen functions
-gnome2_icon_cache_check() {
- type -P gtk-update-icon-cache &>/dev/null || return
-
- local d f all_files=() missing
- for d in usr/share/icons/*/; do
- # gnome2_icon_cache_update updates only themes with an index
- [[ -f ${d}/index.theme ]] || continue
-
- local files=() find_args=(
- # gtk-update-icon-cache supports only specific file
- # suffixes; match that to avoid false positives
- '(' -name '*.png' -o -name '*.svg'
- -o -name '*.xpm' -o -name '*.icon' ')'
- )
- # if the cache does not exist at all, we complain for any file
- # otherwise, we look for files newer than the cache
- [[ -f ${d}/icon-theme.cache ]] &&
- find_args+=( -newercm "${d}"/icon-theme.cache ) || missing=1
-
- # (use -mindepth 2 to easily skip the cache files)
- while read -r -d $'\0' f; do
- files+=( "${f}" )
- done < <(find "${d}" -mindepth 2 -type f "${find_args[@]}" -print0)
-
- # if any files were found, update the db to avoid repeating
- # the warning for subsequent packages
- if [[ ${files[@]} ]]; then
- all_files+=("${files[@]}")
- addwrite "${d}"
- gtk-update-icon-cache -qf "${d}"
- fi
- done
-
- # preinst initializes the baseline state for the posinst check
- [[ ${PORTAGE_QA_PHASE} == preinst ]] && return
-
- # parallel-install makes it impossible to blame a specific package
- has parallel-install ${FEATURES} && return
-
- # avoid false-positives on first install (bug 649464)
- [[ ${PN} == gtk-update-icon-cache ]] && return
-
- # The eqatag call is prohibitively expensive if the cache is
- # missing and there are a large number of files.
- if [[ -z ${missing} && ${all_files[@]} ]]; then
- eqawarn "QA Notice: new icons were found installed but GTK+ icon cache"
- eqawarn "has not been updated:"
- eqatag -v gnome2-utils.icon-cache "${all_files[@]/#//}"
- eqawarn "Please make sure to call gnome2_icon_cache_update()"
- eqawarn "in pkg_postinst() and pkg_postrm() phases of appropriate pkgs."
- fi
-}
-
gnome2_utils_postinst_check() {
cd "${EROOT:-/}" || die
- gnome2_icon_cache_check
}
gnome2_utils_postinst_check
diff --git a/bin/postinst-qa-check.d/50xdg-utils b/bin/postinst-qa-check.d/50xdg-utils
index b33df4743..9945cc336 100644
--- a/bin/postinst-qa-check.d/50xdg-utils
+++ b/bin/postinst-qa-check.d/50xdg-utils
@@ -46,6 +46,59 @@ xdg_desktop_database_check() {
fi
}
+gnome2_icon_cache_check() {
+ type -P gtk-update-icon-cache &>/dev/null || return
+
+ local d f all_files=() missing
+ for d in usr/share/icons/*/; do
+ # gnome2_icon_cache_update updates only themes with an index
+ [[ -f ${d}/index.theme ]] || continue
+
+ local files=() find_args=(
+ # gtk-update-icon-cache supports only specific file
+ # suffixes; match that to avoid false positives
+ '(' -name '*.png' -o -name '*.svg'
+ -o -name '*.xpm' -o -name '*.icon' ')'
+ )
+ # if the cache does not exist at all, we complain for any file
+ # otherwise, we look for files newer than the cache
+ [[ -f ${d}/icon-theme.cache ]] &&
+ find_args+=( -newercm "${d}"/icon-theme.cache ) || missing=1
+
+ # (use -mindepth 2 to easily skip the cache files)
+ while read -r -d $'\0' f; do
+ files+=( "${f}" )
+ done < <(find "${d}" -mindepth 2 -type f "${find_args[@]}" -print0)
+
+ # if any files were found, update the db to avoid repeating
+ # the warning for subsequent packages
+ if [[ ${files[@]} ]]; then
+ all_files+=("${files[@]}")
+ addwrite "${d}"
+ gtk-update-icon-cache -qf "${d}"
+ fi
+ done
+
+ # preinst initializes the baseline state for the posinst check
+ [[ ${PORTAGE_QA_PHASE} == preinst ]] && return
+
+ # parallel-install makes it impossible to blame a specific package
+ has parallel-install ${FEATURES} && return
+
+ # avoid false-positives on first install (bug 649464)
+ [[ ${PN} == gtk-update-icon-cache ]] && return
+
+ # The eqatag call is prohibitively expensive if the cache is
+ # missing and there are a large number of files.
+ if [[ -z ${missing} && ${all_files[@]} ]]; then
+ eqawarn "QA Notice: new icons were found installed but GTK+ icon cache"
+ eqawarn "has not been updated:"
+ eqatag -v gnome2-utils.icon-cache "${all_files[@]/#//}"
+ eqawarn "Please make sure to call gnome2_icon_cache_update()"
+ eqawarn "in pkg_postinst() and pkg_postrm() phases of appropriate pkgs."
+ fi
+}
+
xdg_mimeinfo_database_check() {
type -P update-mime-database &>/dev/null || return
@@ -92,6 +145,7 @@ xdg_mimeinfo_database_check() {
xdg_utils_postinst_check() {
cd "${EROOT:-/}" || die
xdg_desktop_database_check
+ gnome2_icon_cache_check
xdg_mimeinfo_database_check
}