Move to new Build system

This commit is contained in:
Mario Fetka 2012-01-28 21:57:06 +01:00
parent 5b9f556d98
commit d83c66c74b
5 changed files with 69 additions and 122 deletions

View File

@ -1 +1 @@
1bc855fdf28c3ab185d7e848e7a227e2ea20042b /usr/portage/distfiles/PlanMakerViewer2010.msi
1bc855fdf28c3ab185d7e848e7a227e2ea20042b /home/mario/opsi-dist.private/softmaker.de/pmviewer/2010/PlanMakerViewer2010.msi

14
ReadMe.txt Normal file
View File

@ -0,0 +1,14 @@
############################################################
# Create msi packages:
############################################################
Requirements:
1. Download WixEdit from http://wixedit.sourceforge.net/ and install it
2. Download Softmaker Planmaker Viewer 2010 from http://www.officeviewers.de/
3. Extract PMViewerSetup.exe into a temporary folder
4. Copy TextMakerViewer2010.wxs to this folder
5. Start WixEdit and open the wxs file
6. Then select "Build" "Create MSI"
7. When the creation is finisched you will find PlanMakerViewer2010.msi
in the temporary folder

121
build.sh
View File

@ -1,121 +0,0 @@
#!/bin/sh
PN="pmviewer"
VERSION="2010"
RELEASE="10"
PRIORITY="0"
ADVICE=""
TYPE="restrict"
# all downloads should not have any traling parameters like ?downlaodid=1234 .....(should rewrite in python)
ICON="http://www.android-user.de/var/ezflow_site/storage/images/artikel/exklusiv-vorschau-auf-softmaker-office-fuer-android/softmaker-logo.png/25888-1-ger-DE/SoftMaker-Logo.png_medium.png"
X86="http://internal.graz.disconnected-by-peer.at/Orig/SoftMaker/Viewer/HB/2010/PlanMakerViewer2010.msi"
#AMD64="http://downloads.sourceforge.net/sevenzip/7z920-x64.msi"
ICONFILE=${ICON##*/}
X86FILE=${X86##*/}
#AMD64FILE=${AMD64##*/}
if [ -e /var/tmp/opsi/upload/$TYPE/${PN}_${VERSION}-${RELEASE}.opsi ]
then
echo "package ${PN}_${VERSION}-${RELEASE}.opsi already generated"
exit 1
fi
OUT=$(mktemp -d /tmp/output.XXXXXXXXXX) || { echo "Failed to create temp dir"; exit 1; }
mkdir $OUT/$PN
cp -Rv OPSI CLIENT_DATA $OUT/$PN
unix2dos $OUT/$PN/CLIENT_DATA/*
if [ -e /usr/portage/distfiles/$ICONFILE ]
then
if [ -e $ICONFILE.sha1sum ]
then
SHA1SUM=`cat $ICONFILE.sha1sum`
CHECKSUM=`sha1sum /usr/portage/distfiles/$ICONFILE`
if [ "$CHECKSUM" = "$SHA1SUM" ]
then
convert -colorspace rgb /usr/portage/distfiles/$ICONFILE -transparent white -background transparent -resize 160x160\> \
-size 160x160 xc:transparent +swap -gravity center -composite $OUT/$PN/CLIENT_DATA/$PN.png
else
echo "The checksums do not match."
exit 1
fi
else
echo "You need to create the checksums with: sha1sum /usr/portage/distfiles/$ICONFILE > $ICONFILE.sha1sum"
exit 1
fi
else
echo "Downloading file"
wget -P /usr/portage/distfiles/ $ICON
exit 1
fi
if [ -e /usr/portage/distfiles/$X86FILE ]
then
if [ -e $X86FILE.sha1sum ]
then
SHA1SUM=`cat $X86FILE.sha1sum`
CHECKSUM=`sha1sum /usr/portage/distfiles/$X86FILE`
if [ "$CHECKSUM" = "$SHA1SUM" ]
then
cp /usr/portage/distfiles/$X86FILE $OUT/$PN/CLIENT_DATA
else
echo "The checksums do not match."
exit 1
fi
else
echo "You need to create the checksums with: sha1sum /usr/portage/distfiles/$X86FILE > $X86FILE.sha1sum"
exit 1
fi
else
echo "Downloading file"
wget -O /usr/portage/distfiles/$X86FILE $X86
exit 1
fi
# if [ -e /usr/portage/distfiles/$AMD64FILE ]
# then
# if [ -e $AMD64FILE.sha1sum ]
# then
# SHA1SUM=`cat $AMD64FILE.sha1sum`
# CHECKSUM=`sha1sum /usr/portage/distfiles/$AMD64FILE`
# if [ "$CHECKSUM" = "$SHA1SUM" ]
# then
# cp /usr/portage/distfiles/$AMD64FILE $OUT/$PN/CLIENT_DATA
# else
# echo "The checksums do not match."
# exit 1
# fi
# else
# echo "You need to create the checksums with: sha1sum /usr/portage/distfiles/$AMD64FILE > $AMD64FILE.sha1sum"
# exit 1
# fi
# else
# echo "Downloading file"
# wget -P /usr/portage/distfiles/ $AMD64
# exit 1
# fi
sed -e "s!VERSION!$VERSION!g" -e "s!RELEASE!$RELEASE!g" -e "s!PRIORITY!$PRIORITY!g" -e "s!ADVICE!$ADVICE!g" -i $OUT/$PN/OPSI/control
#sed -e "s!X86FILE!$X86FILE!g" -e "s!AMD64FILE!$AMD64FILE!g" -i $OUT/$PN/CLIENT_DATA/setup.ins
sed -e "s!X86FILE!$X86FILE!g" -i $OUT/$PN/CLIENT_DATA/setup32.ins
if test -d ".git"; then
git log --date-order --date=short | \
sed -e '/^commit.*$/d' | \
awk '/^Author/ {sub(/\\$/,""); getline t; print $0 t; next}; 1' | \
sed -e 's/^Author: //g' | \
sed -e 's/>Date: \([0-9]*-[0-9]*-[0-9]*\)/>\t\1/g' | \
sed -e 's/^\(.*\) \(\)\t\(.*\)/\3 \1 \2/g' > $OUT/$PN/OPSI/changelog.txt
else
echo "No git repository present."
exit 1
fi
pushd $OUT
opsi-makeproductfile -v $OUT/$PN
popd
mkdir -p /var/tmp/opsi/upload/$TYPE/
cp -afv $OUT/*.opsi /var/tmp/opsi/upload/$TYPE/
rm -rf $OUT

33
builder-product.cfg Normal file
View File

@ -0,0 +1,33 @@
############################
# Setup product information
############################
VENDOR="softmaker.de"
PN="pmviewer"
VERSION="2010"
RELEASE="10"
PRIORITY="0"
ADVICE=""
TYPE="restrict"
#####################
# File object array
#####################
FILE[0]="SoftMaker-Logo.png_medium.png"
SOURCE[0]="http://www.android-user.de/var/ezflow_site/storage/images/artikel/exklusiv-vorschau-auf-softmaker-office-fuer-android/softmaker-logo.png/25888-1-ger-DE/SoftMaker-Logo.png_medium.png"
FILE[1]="PlanMakerViewer2010.msi"
SOURCE[1]="http://internal.graz.disconnected-by-peer.at/Orig/SoftMaker/Viewer/HB/2010/PlanMakerViewer2010.msi"
ARCH[1]="X86"
WINST[1]="InstallMsi"
# Download direct the executable
#FILE[1]="TMViewerSetup.exe"
#SOURCE[1]="http://www.softmaker.net/down/TMViewerSetup.exe"
#ARCH[1]="X86"
#WINST[1]="InstallExe"
# File array index for the image showing while installing the program
ICON_FILE_INDEX=0

21
builder-targets-cb.sh Normal file
View File

@ -0,0 +1,21 @@
##############################################################################
# This optional file "builder-targets-cb.sh" will be called by builder.sh
#
# target order: config, prepare, retrieve, create, package, publish, commit, cleanup
# callbacks: cb_package_makeproductfile
#
##############################################################################
function create() {
echo "Create"
builder_create
}
function cleanup() {
echo "Cleanup:"
local opsi_file=${OPSI_REPOS_PRODUCT_DIR}/${OPSI_REPOS_FILE_PATTERN}.opsi
cp -av ${OPSI_REPOS_PRODUCT_DIR}/${OPSI_REPOS_FILE_PATTERN}.opsi /tmp
chmod 666 /tmp/${OPSI_REPOS_FILE_PATTERN}.opsi
}