#!/bin/bash OPT_SPEC="hes:lb:r::" LONG_OPT_SPEC="http-server:,skip-lock,basedir:,backup-dir:,from-revision:,exec-only,help:" PARSED_OPTIONS=$(getopt -n "$0" -a -o $OPT_SPEC --long $LONG_OPT_SPEC -- "$@") OPTIONS_RET=$? eval set -- "$PARSED_OPTIONS" help_usage() { cat < /dev/null for MODULE in $MODULES; do echo -n " $MODULE... " chmod +x $BASEDIR/bin/mayor if [ $? != 0 ]; then exit 2; fi UJ_REV=`$SVN --force export svn+ssh://svn.mayor.hu/var/svn/trunk/$MODULE/update "$BASEDIR/update" | grep revision | cut -d ' ' -f 3 | uniq | sed -e 's/\.//g'` if [ $? != 0 ]; then exit 3; fi echo "kész." done else echo -e "\n\nERROR: A subversion kliens nem található: $SVN" exit 4 fi else # Munkakönyvtár létrehozása if [ ! -d $TMPDIR ]; then mkdir $TMPDIR chown -R 0:0 $TMPDIR chmod -R 700 $TMPDIR else rm -rf $TMPDIR/* fi cd $TMPDIR # Az md5sum állomány leszedáse if [ -z $VERSION ]; then wget "http://www.mayor.hu/download/md5sum" else wget "http://www.mayor.hu/download/$VERSION/md5sum" if [[ ! $HTTP_SERVER =~ .*$VERSION.* ]]; then HTTP_SERVER="$HTTP_SERVER/$VERSION"; fi fi if [ $? != 0 ]; then exit 5; fi UJ_REV=`grep Revision md5sum | cut -d ' ' -f 2` if [ "$REV" -lt "$UJ_REV" ]; then # csomagok leszedése for MODULE in $MODULES; do echo -n " $MODULE... " MOD=`echo $MODULE | sed "s#/#-#"` FILE=`grep "$MOD-rev" md5sum | cut -d ' ' -f 3` if [ "$FILE" != '' ]; then wget "$HTTP_SERVER/$FILE" if [ $? != 0 ]; then echo -e "\n\n ERROR: Az frissítés nem tölthető le: $FILE!\n" exit 6 fi grep $FILE md5sum | md5sum -c --status if [ $? == 0 ]; then tar xfz $FILE -C $BASEDIR ./update else echo -e "\n\n ERROR: Az ellenörző összeg nem egyezik!\n" exit 7 fi else echo 'Nincs ilyen modul!' exit 8 # nem szabad hiányzó csomagok mellett frissíteni!! fi done fi cd $BASEDIR/bin fi fi else # exec-only if [ -f $REVISION_FILE ]; then UJ_REV=`cat $REVISION_FILE` else UJ_REV=0 # nem frissítünk semmit fi fi if [ "$REV" -ge "$UJ_REV" ]; then echo -e "\nNincs újabb változat.\n" echo -e "\n * A szükséges jogosultságok beállítása:" chmod +x $BASEDIR/bin/mayor echo 'kész.' else echo 'kész.' . $BASEDIR/update/processUpdateScripts.sh fi PWDTEX=`pwd` echo -e "\nMaYoR TeX formátum állomány újragenerálása... " cd $BASEDIR/print/module-naplo/tex/ && fmtutil-sys --cnffile $BASEDIR/print/module-naplo/tex/mayor.cnf --fmtdir $BASEDIR/print/module-naplo/ --byfmt mayor > /dev/null 2>&1 echo -e "\nMaYoR XeTeX formátum állomány újragenerálása... " cd $BASEDIR/print/module-naplo/xetex/ && fmtutil-sys --cnffile $BASEDIR/print/module-naplo/xetex/mayor-xetex.cnf --fmtdir $BASEDIR/print/module-naplo/ --byfmt mayor-xetex > /dev/null 2>&1 cd $PWDTEX echo 'kész.' echo -e "\nFrissítés vége.\n" exit 0