#! /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

# 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
   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

