#!/bin/sh
#
# script file om semiautomatisch een .xap en .info bestand
# aan te maken voor installatie op een Trendtac laptop
#
# geschreven door Gert van der Knokke
# datum 09-09-2008
#
# aanroepen vanuit de directory waarin de bestanden en folders staan
# met de te installeren bestanden.
#
# voorbeeld:
# mkpackage xapfilename files folders
#

# op andere Linux systemen
if [ -x /bin/bzip2 ]
then
        BZIP2=/bin/bzip2
fi

# op de Trendtac
if [ -x /bin/bzip2-shared ]
then
        BZIP2=/bin/bzip2-shared
fi

if [ $# -lt 2 ]
then
        echo "Usage: $0 xapfilename files and or folders"
        exit 1
fi

# datums vastleggen
DATESTRING1=`date +"%Y%m%d"`
DATESTRING2=`date +"%Y-%m-%d"`

# revision vast ingesteld op 1
REVISION=01

# naam van de xap uitlezen
NAME=$1

# offficiele xap naam genereren
XAPNAME="$NAME-R3-$REVISION($DATESTRING1)"
if [ ! -d share ]
then
        mkdir share
fi

if [ ! -d share/info ]
then
        mkdir share/info
fi

# maak dummy info file aan in share/info
touch "share/info/$XAPNAME.info"

# nu de .info file aanmaken
{

# de bestandsnaam van de tar.bz2 file
echo "$XAPNAME.xap"

# de naam van de .xap
echo "$NAME"

# release revisie en datum
echo "R3-$REVISION($DATESTRING1)"

# naam van xap overslaan
shift

# '$*' is nu de rest van de commandline (bestanden en folders)

# aantal regels tellen
LINES=`du -ah share $* | wc -l`

# in de info file zetten gevolgde door :datum
echo "$LINES:$DATESTRING2"

# lijst met bestanden en groottes maken
du -ah share $*
} > "$XAPNAME.info"

# copieer de info file over de dummy
cp -f "$XAPNAME.info" share/info/
                                                                         
# de .xap file aanmaken met tar
tar -cf tarball.tar share $*
$BZIP2 tarball.tar
mv tarball.tar.bz2 "$XAPNAME.xap"
# klaar...


