#! /bin/sh

#************************************************************************
#* kinst - KDE Application Installer - install-creator                  *
#* Copyright (C) 2000  Steffen Sobiech                                  *
#*                                                                      *
#* This program is free software; you can redistribute it and/or modify *
#* it under the terms of the GNU General Public License as published by *
#* the Free Software Foundation; either version 2 of the License, or    *
#* (at your option) any later version.                                  *
#*                                                                      *
#* This program is distributed in the hope that it will be useful,      *
#* but WITHOUT ANY WARRANTY; without even the implied warranty of       *
#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        *
#* GNU General Public License for more details.                         *
#*                                                                      *
#* You should have received a copy of the GNU General Public License    *
#* along with this program; if not, write to the Free Software          *
#* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.            *
#************************************************************************

PREFIX=$KDEDIR
NLSPREFIX=$KDEDIR/share/locale

PROGRAMGROUP=Utilities

if [ "$1" = "--help" ]; then
    echo "install-creator - kinst-creator Installer"
    echo "Copyright (C) 1999  Steffen Sobiech"
    echo ""
    echo "This program underlies the GPL and comes with NO WARRANTY"
    echo ""
    echo "Usage: install-creator [--prefix] [--nlsprefix]"
    echo "       install-creator [--help][-h]"
    echo ""
    echo "Default installation prefix is $PREFIX"
    echo "Default NLS-Path is $NLSPREFIX"
    exit
fi

if [ "$1" = "-h" ]; then
    echo "install-creator - kinst-creator Installer"
    echo "Copyright (C) 1999  Steffen Sobiech"
    echo ""
    echo "This program underlies the GPL and comes with NO WARRANTY"
    echo ""
    echo "Usage: install-creator [--prefix] [--nlsprefix]"
    echo "       install-creator [--help][-h]"
    echo ""
    echo "Default installation prefix is $PREFIX"
    echo "Default NLS-Path is $NLSPREFIX"
    exit
fi

if [ "$KDEDIR" = "" ]; then
    echo "Error: No KDEDIR variable set!"
fi

while [ "x$1" != "x" ]; do
    case "$1" in
	"--prefix") 
		shift
		PREFIX=$1
		;;
	"--nlsprefix")
		shift
		NLSPREFIX=$1
		;;
    esac
    shift
done

#if [ -e ./tools/createinst/createinst ]; then
#    echo "Installing createinst ..."
#    mkdir -p $PREFIX/bin
#    install ./tools/createinst/createinst $PREFIX/bin
#else
#    echo "Compiling ..."
#    ./configure
#    make
#    echo "Installing createinst ..."
#    mkdir -p $PREFIX/bin
#    install ./tools/createinst/createinst $PREFIX/bin
#fi

if [ -e ./tools/kcreateinst/kcreateinst ]; then
    echo "Installing kcreateinst ..."
    mkdir -p $PREFIX/bin
    install ./tools/kcreateinst/.libs/kcreateinst $PREFIX/bin
else
    echo "Compiling ..."
    ./configure
    make
    echo "Installing kcreateinst ..."
    mkdir -p $PREFIX/bin
    install ./tools/kcreateinst/.libs/kcreateinst $PREFIX/bin
fi

if [ -e ./tools/packer/kipack ]; then
    echo "Installing kipack ..."
    mkdir -p $PREFIX/bin
    install ./tools/packer/kipack $PREFIX/bin
else
    echo "Compiling ..."
    ./configure
    make
    echo "Installing kipack ..."
    mkdir -p $PREFIX/bin
    install ./tools/packer/kipack $PREFIX/bin
fi

if [ -e ./tools/kiselfextract/kiselfextract ]; then
    echo "Installing kiselfextract ..."
    mkdir -p $PREFIX/bin
    install ./tools/kiselfextract/kiselfextract $PREFIX/bin
else
    echo "Compiling ..."
    ./configure
    make
    echo "Installing kiselfextract ..."
    mkdir -p $PREFIX/bin
    install ./tools/kiselfextract/kiselfextract $PREFIX/bin
fi

if [ -e ./src/kinst ]; then
    echo "Installing kinst ..."
    mkdir -p $PREFIX/bin
    install ./src/kinst $PREFIX/bin
else
    echo "Compiling ..."
    ./configure
    make
    echo "Installing kinst ..."
    mkdir -p $PREFIX/bin
    install ./src/kinst $PREFIX/bin
fi

echo "Installing locale data ..."
#CATALOGS=$(ls ./tools/createinst/po/*.gmo)
#for cat in $CATALOGS; do
#    lang=`echo $cat | sed 's/\.gmo//'`
#    lang=`echo $lang | sed 's/\.\/tools\/createinst\/po\///'`
#    mkdir -p $NLSPREFIX/$lang/LC_MESSAGES
#    install ./tools/createinst/po/$lang.gmo $NLSPREFIX/$lang/LC_MESSAGES/createinst.mo
#done
CATALOGS=$(ls ./tools/kcreateinst/po/*.gmo)
for cat in $CATALOGS; do
    lang=`echo $cat | sed 's/\.gmo//'`
    lang=`echo $lang | sed 's/\.\/tools\/kcreateinst\/po\///'`
    mkdir -p $NLSPREFIX/$lang/LC_MESSAGES
    install ./tools/kcreateinst/po/$lang.gmo $NLSPREFIX/$lang/LC_MESSAGES/kcreateinst.mo
done

echo "Installing documentation/help ..."
DOCUMENTATION=$(ls ./tools/kcreateinst/doc)
for docs in $DOCUMENTATION; do
    mkdir -p $KDEDIR/share/doc/HTML/$docs/kcreateinst
    cp -r -f ./tools/kcreateinst/doc/$docs/* $KDEDIR/share/doc/HTML/$docs/kcreateinst
done

echo "Installing complete kinst locale set to $KDEDIR/share/apps/kcreateinst/kinst-locale ..."
CATALOGS=$(ls ./po/*.gmo)
for cat in $CATALOGS; do
    mkdir -p $KDEDIR/share/apps/kcreateinst/kinst-locale
    install $cat $KDEDIR/share/apps/kcreateinst/kinst-locale
done

echo "Installing script templates to $KDEDIR/share/apps/kcreateinst/scripts ..."
mkdir -p $KDEDIR/share/apps/kcreateinst/scripts
cp -f ./scripts/template* $KDEDIR/share/apps/kcreateinst/scripts

echo "Registering with KDE ..."
# applnk createinst
#mkdir -p $KDEDIR/share/applnk/$PROGRAMGROUP
#echo "# KDE Config File" > $KDEDIR/share/applnk/$PROGRAMGROUP/createinst.desktop
#echo "[KDE Desktop Entry]" >> $KDEDIR/share/applnk/$PROGRAMGROUP/createinst.desktop
#echo "Name=createinst" >> $KDEDIR/share/applnk/$PROGRAMGROUP/createinst.desktop
#echo "Comment=KDE Application Installer Creator" >> $KDEDIR/share/applnk/$PROGRAMGROUP/createinst.desktop
#echo "BinaryPattern=createinst" >> $KDEDIR/share/applnk/$PROGRAMGROUP/createinst.desktop
#echo "Exec=$PREFIX/bin/createinst" >> $KDEDIR/share/applnk/$PROGRAMGROUP/createinst.desktop
#echo "Type=Application" >> $KDEDIR/share/applnk/$PROGRAMGROUP/createinst.desktop
#echo "Terminal=1" >> $KDEDIR/share/applnk/$PROGRAMGROUP/createinst.desktop
#echo "" >> $KDEDIR/share/applnk/$PROGRAMGROUP/createinst.desktop
# applnk kcreateinst
mkdir -p $KDEDIR/share/applnk/$PROGRAMGROUP
echo "[Desktop Entry]" > $KDEDIR/share/applnk/$PROGRAMGROUP/kcreateinst.desktop
echo "Name=kcreateinst" >> $KDEDIR/share/applnk/$PROGRAMGROUP/kcreateinst.desktop
echo "Comment=KDE Application Installer Creator (GUI Version)" >> $KDEDIR/share/applnk/$PROGRAMGROUP/kcreateinst.desktop
echo "BinaryPattern=kcreateinst" >> $KDEDIR/share/applnk/$PROGRAMGROUP/kcreateinst.desktop
echo "Exec=$PREFIX/bin/kcreateinst" >> $KDEDIR/share/applnk/$PROGRAMGROUP/kcreateinst.desktop
echo "Type=Application" >> $KDEDIR/share/applnk/$PROGRAMGROUP/kcreateinst.desktop
echo "" >> $KDEDIR/share/applnk/$PROGRAMGROUP/kcreateinst.desktop
# kcreateinst config defaults
echo "# KDE Config File" > $KDEDIR/share/config/kcreateinstrc
echo "[Locations]" >> $KDEDIR/share/config/kcreateinstrc
echo "kipackpath=$PREFIX/bin/kipack" >> $KDEDIR/share/config/kcreateinstrc
echo "selfextractpath=$PREFIX/bin/kiselfextract" >> $KDEDIR/share/config/kcreateinstrc
echo "kinstpath=$PREFIX/bin/kinst" >> $KDEDIR/share/config/kcreateinstrc
echo "kinstlocalepath=$KDEDIR/share/apps/kcreateinst/kinst-locale" >> $KDEDIR/share/config/kcreateinstrc
echo "scriptpath=$KDEDIR/share/apps/kcreateinst/scripts" >> $KDEDIR/share/config/kcreateinstrc

KDERUNNING=$(ps h -C kfm)

if [ "$KDERUNNING" != "" ]; then
    echo "You should now restart any instances of KDE."
fi
