diff options
Diffstat (limited to 'source/l/gtk+2/update-gdk-pixbuf-loaders')
-rw-r--r-- | source/l/gtk+2/update-gdk-pixbuf-loaders | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/source/l/gtk+2/update-gdk-pixbuf-loaders b/source/l/gtk+2/update-gdk-pixbuf-loaders new file mode 100644 index 00000000..942ca186 --- /dev/null +++ b/source/l/gtk+2/update-gdk-pixbuf-loaders @@ -0,0 +1,86 @@ +#! /bin/sh +# Updates the gdk-pixbuf.loaders in /etc/gtk-2.0/$host + +umask 022 + +# Get the machine type from uname: +host=$(uname -m)-slackware-linux + +# Fix $host for arm arch: +case "$host" in + arm*) host=arm-slackware-linux-gnueabi ;; +esac + +# Deriving /etc/gtk-2.0/$host location +# +# We have had problems in the past with build systems +# changing host from i386 to i686 and appending/dropping +# the -gnu suffix, so try to match up the $host we got +# with whats actually there. +if [ ! -d /etc/gtk-2.0/$host ]; then + case "$host" in + i?86*) + for d in $(ls -d /etc/gtk-2.0/i?86*); do + host=$(basename $d) + break + done + ;; + esac +fi + +FILE=/etc/gtk-2.0/$host/gdk-pixbuf.loaders + +case "$host" in + s390x*|x86_64*) + if [ -x /usr/bin/gdk-pixbuf-query-loaders-64 ]; then + if [ "$1" = "--verbose" ]; then + echo "Updating gdk-pixbuf.loaders for ${host}:" + echo " /usr/bin/gdk-pixbuf-query-loaders-64 \\" + echo " > $FILE" + fi + /usr/bin/gdk-pixbuf-query-loaders-64 > $FILE + # Check for x86_64 multilib: + if ls -d /etc/gtk-2.0/i?86* 1> /dev/null 2> /dev/null ; then + for d in $(ls -d /etc/gtk-2.0/i?86*); do + mlhost=$(basename $d) + break + done + if [ -r /etc/gtk-2.0/$mlhost/gdk-pixbuf.loaders -a \ + -x /usr/bin/gdk-pixbuf-query-loaders-32 ]; then + FILE=/etc/gtk-2.0/$mlhost/gdk-pixbuf.loaders + if [ "$1" = "--verbose" ]; then + echo "Updating gdk-pixbuf.loaders for ${mlhost}:" + echo " /usr/bin/gdk-pixbuf-query-loaders-32 \\" + echo " > $FILE" + fi + /usr/bin/gdk-pixbuf-query-loaders-32 > $FILE + fi + fi + else + if [ "$1" = "--verbose" ]; then + echo "Updating gdk-pixbuf.loaders for ${host}:" + echo " /usr/bin/gdk-pixbuf-query-loaders \\" + echo " > $FILE" + fi + /usr/bin/gdk-pixbuf-query-loaders > $FILE + fi + ;; + *) + if [ -x /usr/bin/gdk-pixbuf-query-loaders-32 ]; then + if [ "$1" = "--verbose" ]; then + echo "Updating gdk-pixbuf.loaders for ${host}:" + echo " /usr/bin/gdk-pixbuf-query-loaders-32 \\" + echo " > $FILE" + fi + /usr/bin/gdk-pixbuf-query-loaders-32 > $FILE + else + if [ "$1" = "--verbose" ]; then + echo "Updating gdk-pixbuf.loaders for ${host}:" + echo " /usr/bin/gdk-pixbuf-query-loaders \\" + echo " > $FILE" + fi + /usr/bin/gdk-pixbuf-query-loaders > $FILE + fi + ;; +esac + |