Recompiling WAPT from source

Todo

Review this section

WAPT components

Python environment

  • Python 2.7.13;
  • client python libraries in requirements.txt;
  • server python libraries in requirements-server.txt;

Creating a development environment with virtualenv:

With a clean Windows installed:

c:\python27\python -m pip install -U pip setuptools
  • create a development environment with virtualenv;
mkdir c:\tranquilit
git clone git@github.com:tranquilit/WAPT.git (ou git clean -fxd ...)
cd c:\tranquilit\wapt init_workdir.bat

Build environment on Debian Linux

mkdir ~/tranquilit/
cd ~/tranquilit/
git clone git@github.com:tranquilit/WAPT.git
cd ~/tranquilit/wapt/waptserver/deb
python createdeb.py
cd ~/tranquilit/wapt/waptrepo/deb
python createdeb.py

Tranquil IT packages

Building WAPT

Installing the WAPT development environment

Installing Lazarus

wapt-get install tis-pyscripter tis-tortoisegit tis-7zip tis-python27 tis-notepadplusplus tis-firefox tis-putty tis-lazarus tis-openssh tis-signtool

wget https://www.sqlite.org/2018/sqlite-dll-win32-x86-3250200.zip
unzip sqlite3.dll dans C:\Windows\SysWOW64
md c:\tranquilit

git.exe clone  --recurse-submodules "ssh://htouvet@srvdev.ad.tranquil.it:29418/wapt/wapt.git" "C:\tranquilit\wapt"
REM git pull --recurse-submodules=yes --ff-only)
cd  \tranquilit\wapt
init_workdir.bat

git clone git://srvdev.ad.tranquil.it/wapt/pltis_indy.git c:\tranquilit\pltis_indy
git clone git://srvdev.ad.tranquil.it/wapt/pltis_utils.git c:\tranquilit\pltis_utils
git clone git://srvdev.ad.tranquil.it/wapt/pltis_sogrid.git  c:\tranquilit\pltis_sogrid
git clone git://srvdev.ad.tranquil.it/wapt/pltis_superobject.git  c:\tranquilit\pltis_superobject
git clone git://srvdev.ad.tranquil.it/wapt/Python-for-Lazarus.git  c:\tranquilit\Python-for-Lazarus
git clone git://srvdev.ad.tranquil.it/wapt/pltis_virtualtrees.git c:\tranquilit\pltis_virtualtrees
git clone git://srvdev.ad.tranquil.it/wapt/pltis_virtualtreesextra.git c:\tranquilit\pltis_virtualtreesextra
git clone git://srvdev.ad.tranquil.it/wapt/pltis_dcpcrypt.git c:\tranquilit\pltis_dcpcrypt
git clone git://srvdev.ad.tranquil.it/wapt/pltis_luipack.git c:\tranquilit\pltis_luipack
git clone git://srvdev.ad.tranquil.it/wapt/pltis_synapse.git c:\tranquilit\pltis_synapse

c:\lazarus\lazbuild.exe --add-package c:\tranquilit\pltis_dcpcrypt\dcpcrypt_laz.lpk
c:\lazarus\lazbuild.exe --add-package c:\tranquilit\pltis_indy\indylaz.lpk
c:\lazarus\lazbuild.exe c:\tranquilit\pltis_utils\pltis_utils.lpk
c:\lazarus\lazbuild.exe c:\tranquilit\pltis_superobject\pltis_superobject.lpk
c:\lazarus\lazbuild.exe --add-package c:\tranquilit\pltis_virtualtrees\pltis_virtualtrees.lpk
c:\lazarus\lazbuild.exe --add-package c:\tranquilit\pltis_virtualtreesextra\pltis_virtualtreesextra.lpk
c:\lazarus\lazbuild.exe --add-package c:\tranquilit\pltis_sogrid\pltis_sogrid.lpk
c:\lazarus\lazbuild.exe --add-package c:\tranquilit\pltis_dcpcrypt\dcpcrypt_laz.lpk
c:\lazarus\lazbuild.exe c:\tranquilit\pltis_synapse\laz_synapse.lpk
c:\lazarus\lazbuild.exe --add-package c:\tranquilit\pltis_luipack\luicomponents\luicomponents.lpk
c:\lazarus\lazbuild.exe --add-package c:\tranquilit\pltis_luipack\luicomponents\luicomponents.lpk
c:\lazarus\lazbuild.exe --add-package C:\tranquilit\Python-for-Lazarus\python4lazarus\python4lazarus_package.lpk
c:\lazarus\lazbuild.exe --add-package C:\lazarus\components\anchordocking\design\anchordockingdsgn.lpk
c:\lazarus\lazbuild.exe --build-ide=
c:\lazarus\lazbuild.exe c:\tranquilit\wapt\wapt-get\pltis_wapt.lpk

REM depending on version, change community to enterprise
waptpython build_exe.py community

Installing the server environment on Windows

cd \tranquilit\wapt
waptpython waptserver\winsetup.py all

Create the InnoSetup installers

The .iss files are located in C:tranquilitwaptwaptsetup ;

The waptsetup installer includes the python libraries, the command line tool wapt-get, the local webservice waptservice, the packaging tool and the WAPT console waptconsole.

The file waptserver.iss allows to build an installer that includes a Nginx web server in front and the Flask webservice waptserver.py.

The waptstarter installer only includes the local webservice and the command line tool wapt-get. It does not include the WAPT console waptconsole, nor the packaging tools.

Right-click on the .iss file ‣ Compile ` will compile an installer with :program:`InnoSetup.

or using the command line:

"C:\Program Files (x86)\Inno Setup 5\ISCC.exe" C:\tranquilit\wapt\waptsetup\waptsetup.iss

The installer’s global parameters are defined with #define in the file header.

If you do not sign the installers, you may comment the lines #define signtool ...