gnome2-utils.eclass: Make gnome2_icon_cache_update update all themes
authorMichał Górny <mgorny@gentoo.org>
Mon, 17 Apr 2017 10:38:37 +0000 (12:38 +0200)
committerMichał Górny <mgorny@gentoo.org>
Tue, 25 Apr 2017 17:57:48 +0000 (19:57 +0200)
Make the gnome2_icon_cache_update function update all icon themes rather
than depending on gnome2_icon_savelist to select themes to update. This
makes the function easier to use whenever the developer needs it
explicitly (i.e. knows that themes are installed), while the overhead of
regenerating multiple caches is neglible.

eclass/gnome2-utils.eclass

index f2aa2391a53229b0edc4433db1f336e38b858134..7db092e1ec6615e0a2a00b10affc18afec5ac959 100644 (file)
@@ -240,30 +240,30 @@ gnome2_icon_cache_update() {
        local retval=0
        local fails=( )
 
-       for dir in ${GNOME2_ECLASS_ICONS}
+       for dir in "${EROOT%/}"/usr/share/icons/*
        do
-               if [[ -f "${EROOT}${dir}/index.theme" ]] ; then
+               if [[ -f "${dir}/index.theme" ]] ; then
                        local rv=0
 
-                       "${updater}" -qf "${EROOT}${dir}"
+                       "${updater}" -qf "${dir}"
                        rv=$?
 
                        if [[ ! $rv -eq 0 ]] ; then
-                               debug-print "Updating cache failed on ${EROOT}${dir}"
+                               debug-print "Updating cache failed on ${dir}"
 
                                # Add to the list of failures
-                               fails[$(( ${#fails[@]} + 1 ))]="${EROOT}${dir}"
+                               fails+=( "${dir}" )
 
                                retval=2
                        fi
-               elif [[ $(ls "${EROOT}${dir}") = "icon-theme.cache" ]]; then
+               elif [[ $(ls "${dir}") = "icon-theme.cache" ]]; then
                        # Clear stale cache files after theme uninstallation
-                       rm "${EROOT}${dir}/icon-theme.cache"
+                       rm "${dir}/icon-theme.cache"
                fi
 
-               if [[ -z $(ls "${EROOT}${dir}") ]]; then
+               if [[ -z $(ls "${dir}") ]]; then
                        # Clear empty theme directories after theme uninstallation
-                       rmdir "${EROOT}${dir}"
+                       rmdir "${dir}"
                fi
        done