#! /bin/sh

echo " *** SETUP ENV"

export WINARCH=win64

if [ -z $WINEPREFIX ];
then
    # FIXME Not tested yet...
    export WINEPREFIX=$(realpath ./wine-pamhyr-build)

    if [ ! -f python-3.8.10-amd64.exe ];
    then
        wget https://www.python.org/ftp/python/3.8.10/python-3.8.10-amd64.exe
    fi

    if [ ! -f nsis-3.08-setup.exe ];
    then
        wget https://freefr.dl.sourceforge.net/project/nsis/NSIS%203/3.08/nsis-3.08-setup.exe
    fi

    # Dummy display
    Xvfb :42 -screen 0 1024x768x16 &
    jid=$!

    # Install soft
    winetricks                                  \
        corefonts                               \
        7zip                                    \
        win10

    echo " *** PYTHON INSTALL"
    if [ ! -f "$WINEPREFIX/drive_c/Program Files/Python38/python.exe" ];
    then
        #DISPLAY=:42.0 wine cmd /c python-3.8.10-amd64.exe /quiet PrependPath=1
        wine cmd /c python-3.8.10-amd64.exe PrependPath=1
        wine python $WINEPREFIX/drive_c/Program\ Files/Python38/Tools/scripts/win_add2path.py
    fi

    echo " *** PIP UPGRADE AND DEPENDENCIES"
    wine python -m pip install --upgrade pip
    wine python -m pip install pyinstaller

    echo " *** NSIS INSTALL"
    if [ ! -f $WINEPREFIX/drive_c/Program\ Files\ \(x86\)/NSIS/makensis.exe ];
    then
        wine cmd /c nsis-3.08-setup.exe
    fi
fi

echo " *** PYINSTALL"

wine python -m pip install -r $(realpath ../requirements.txt)
wine pyinstaller ../src/pamhyr.py -y

echo " *** COPY DATA"

mkdir -p dist/pamhyr/View/ui
cp -r ../src/View/ui/ressources/ dist/pamhyr/View/ui/
cp -r ../src/View/ui/Widgets/*.ui dist/pamhyr/View/ui/
cp -r ../src/View/ui/*.ui dist/pamhyr/View/ui/

# Update TS and build QM files
OLD_PWD=$PWD
cd ../src/lang/
./create_ts.sh
cd $OLD_PWD

mkdir -p dist/pamhyr/lang
cp -r ../src/lang/*.qm dist/pamhyr/lang/

echo " *** MAKE PACKAGES"

echo " TAR pamhyr-win-amd64.tar.xz"

OLD_PWD=$PWD
cd dist/
tar --xz -cf pamhyr-win-amd64.tar.xz pamhyr --checkpoint=.100
cd $OLD_PWD
mv dist/pamhyr-win-amd64.tar.xz ./

echo " ZIP pamhyr-win-amd64.zip"

OLD_PWD=$PWD
cd dist/
zip -r pamhyr-win-amd64.zip pamhyr/
cd $OLD_PWD
mv dist/pamhyr-win-amd64.zip ./

echo " *** MAKE INSTALLER"

wine $WINEPREFIX/drive_c/Program\ Files\ \(x86\)/NSIS/makensis.exe   \
     pamhyr.nsi
