From e589fcdd3dcfd3c0cf16b4bad2861451d68fa9d5 Mon Sep 17 00:00:00 2001
From: Pierre-Antoine Rouby <pierre-antoine.rouby@inrae.fr>
Date: Wed, 27 Sep 2023 16:42:42 +0200
Subject: [PATCH] doc: dev: Complete dev documentation.

---
 doc/dev/documentation.org | 62 +++++++++++++++++++++++++++++++++++----
 1 file changed, 57 insertions(+), 5 deletions(-)

diff --git a/doc/dev/documentation.org b/doc/dev/documentation.org
index 7aa30aca..a68a3c09 100644
--- a/doc/dev/documentation.org
+++ b/doc/dev/documentation.org
@@ -201,8 +201,8 @@ other components are linked to one of these basic components.
       bgcolor="transparent";
       node[colorscheme=set19,shape=box,style="filled",fillcolor="2"];
 
-      subgraph cluster0 {
-          style=dashed;
+      //subgraph cluster0 {
+      //    style=dashed;
           study[label="Study"];
           river[label="River"];
 
@@ -220,7 +220,7 @@ other components are linked to one of these basic components.
               geocrosssection[label="Cross-section"];
               geopoint[label="Point"];
           }
-      }
+      //}
 
       //subgraph cluster1 {
       //    style=dashed;
@@ -294,6 +294,22 @@ other components are linked to one of these basic components.
       rreach -> georeach;
       rreach -> rcrosssection;
       rcrosssection -> geocrosssection;
+
+      // river -> boundaryconditionlist -> boundarycondition -> results[style=invis];
+      // river -> lateralcontributionlist -> lateralcontribution -> results[style=invis];
+      // river -> initialconditionsdict -> initialconditions -> results[style=invis];
+      // initialconditions -> results[style=invis];
+      // river -> stricklerslist -> stricklers -> results[style=invis];
+      // river -> solverparameterslist -> results[style=invis];
+      // river -> sedimentlayerlist -> sedimentlayer -> layer -> results[style=invis];
+
+      geopoint -> boundaryconditionlist[style=invis];
+      geopoint -> lateralcontributionlist[style=invis];
+      geopoint -> initialconditionsdict[style=invis];
+      geopoint -> initialconditions[style=invis];
+      geopoint -> stricklerslist[style=invis];
+      geopoint -> solverparameterslist[style=invis];
+      geopoint -> sedimentlayerlist[style=invis];
   }
 #+end_src
 
@@ -965,7 +981,7 @@ data base file.
 #+CAPTION: Pamhyr2 debug Python REPL
 [[./images/python-debug-repl.png]]
 
-* TODO Build the project
+* Build the project
 
 The project uses gitlab-ci runners to build packages, but it is possible
 to build packages manually.
@@ -1010,9 +1026,45 @@ winetricks installed.
 
 [fn:nsis] The NSIS web site: https://sourceforge.net/projects/nsis/
 
-** TODO Setup the CI environment
+** Setup the CI environment
+
+Pamhyr2 need a Linux ci-runner and a Windows ci-runner for building
+package. The windows ci-runner could run on a Wine environement.
+
 *** Linux
+
+The Linux ci-runner need some software and dependencies in addtion of
+gitlab-ci.
+
+#+begin_src shell
+  sudo apt install                                \
+       emacs emacs-goodies-el                     \
+       texlive-full                               \
+       python3.8 python3.8-venv
+  sudo python3 -m pip install pyinstaller
+#+end_src
+
 *** Windows (Wine)
+
+The ci-runner environment for Wine need at least wine version 8, let
+[[https://www.numetopia.fr/comment-installer-wine-sur-ubuntu-ou-linux-mint/][see who to add wine official depot to your linux distribution]].
+
+#+begin_src shell
+sudo apt install wine-stable winetricks
+#+end_src
+
+In addition, the environment need windows version of:
+ - [[https://www.python.org/ftp/python/3.8.10/python-3.8.10-amd64.exe][Python 3.8.10]]
+ - Git
+ - PowerShell
+ - Gitlab-ci
+ - [[https://freefr.dl.sourceforge.net/project/nsis/NSIS%203/3.08/nsis-3.08-setup.exe][Nsis]]
+
+Now, we can install =pyinstaller= on this windows environment:
+#+begin_src shell
+wine python -m pip install pyinstaller
+#+end_src
+
 * Documentation files
 
 This document and the user documentation are org files. This text file
-- 
GitLab