====== How to join the Simeo project ====== Simeo is part of the **AMAPstudio project** developped at the AMAP laboratory. In order to join the **Simeo project** and integrate their model(s) in Simeo, modellers should follow the next steps: ===== 1. Who can join the Simeo project ? ===== The Simeo software can host various types of dynamics models at the scale of the vegetation scene. The core part of the software is free to make it easy for partners to join Simeo. **Note**: Forestry modellers may be interesting in joining instead the [[https://www.inra.fr/capsis|Capsis project]] that focusses on forestry growth and yield / dynamics models. Simeo is for experimental descriptive or evolution models combining plants / trees fine architecture at the plantation level, possibly linked to biophysical models (radiative balance, biomechanics...). **Any interested scientist can contact the [[mailto:coligny@cirad.fr|Simeo team]]** to discuss the interest for him to become a Simeo modeller in accordance with the 'AMAPstudio charter'. This implies that the scientist will be helped to become a beginner developer to be able to do the integration job by himself with simple tools, with support at starting time and then when he needs help. The Simeo developers are skilled in software development and not in modelling. The help will concern the **integration** of the model within the Simeo software and **NOT the model creation** by itself. ===== 2. Accept the AMAPstudio charter ===== Simeo is a sub-project of the AMAPstudio project. [[https://amapstudio.cirad.fr/doku.php?id=charter|The AMAPstudio charter]] explains the roles and rules for all the members of the project. It must be read and accepted by all members. ===== 3. Install Java SE 6 (JDK) ===== **Under Windows**: * Download and install the Java Developpement Kit, Standard Edition (JDK and NOT JRE) version 1.6 : https://java.sun.com/javase/downloads/index.jsp * Update the PATH environment variable according to your installation directory Click Start > Control Panel > System on Windows XP or Start > Settings > Control Panel > System > Advanced > Environment Variables. Add the location of the bin/ folder (the 'java path') of the JDK into the 'System Variables' > PATH (or in case of trouble in the 'User Variables' > PATH). A typical value for the 'java path' is: C:\Program Files\Java\jdk1.6.0_\bin We suggest you add this 'java path' at the beginning of the 'system PATH', followed by a ';' You should have a single bin/ directory for a single JDK in the path at a time. Those following the first instance are ignored. If one is already present, update it to jdk1.6.0_\bin. **Under Linux**: Use your system installer (i.e. aptitude, apt-get, yum, urpmi…). For instance, on Ubuntu : sudo apt-get install sun-java6-jdk sun-java6-bin ===== 4. Create an amap-dev account ===== Simeo files are hosted on the amap-dev development server. To access to these files, you need to create an account on the server. If you are not already a Simeo modeller and if you want to integrate a model in Simeo, please **contact the development team** (see section 1: Who can join the Simeo project ?). Otherwise your registration will not be validated. Register yourself on: [[https://amap-dev.cirad.fr/account/register]]. Once your account has been validated by an administrator you can access to the Simeo project: [[https://amap-dev.cirad.fr/projects/show/simeo]] Your login/password will be used to access to SVN files, but also to manage Simeo on the amap-dev development server (e.g. ask for a bug correction / a new feature). ===== 5. Get a local copy of the project (svn checkout) ===== There are different methods to get the source codes of Simeo. ==== 5.1 SmartSVN (windows / linux / mac) ==== SmartSVN is a portable client written in Java to access to SVN repositories. * Download and Install: https://www.syntevo.com/smartsvn/download.html * Start SmartSVN If SmartSVN asks for svnserve and svnadmin, click Cancel. During installation, SmartSVN will ask you if you want to evaluate the Pro version. You can ignore this message (it may begin 'pro' and turn to 'common' after a while). * Choose Check out project from repository Quick Checkout: URL: https://amap-dev.cirad.fr/svn/jeeb/trunk Local directory: the directory you choose for your local copy (e.g. C:\AMAPstudio OR /home/coligny/java/AMAPstudio) * Enter your login and password **Note**: This is your new login password you entered when you registered on amap-dev * Validate and finish ==== 5.2 TortoiseSVN (windows only) ==== This SVN client fully integrates in the Windows file manager by adding SVN related options in the right-click menu for directories and files under SVN. To get a local copy (checkout) of the AMAPstudio project: * Download and install TortoiseSVN: https://tortoisesvn.tigris.org/ * Open your file manager * Create a container directory named 'AMAPstudio' and move into it * Right-click and choose 'SVN Checkout...' * URL of the repository: https://amap-dev.cirad.fr/svn/jeeb/trunk * Check out dir: do not change (the 'AMAPstudio' directory) * Validate ==== 5.3 Command line ==== * Install the 'svn' program (under Linux: sudo apt-get install subversion) * In a shell, do svn checkout --username login https://amap-dev.cirad.fr/svn/jeeb/trunk AMAPstudio ==== 5.4 Eclipse ==== For expert users only, no help provided here at this time. ===== 6. Usual Operations ===== **SVN update**: you should update your local copy every time you start to work on your project (every morning ?). Updating often helps reduce the number of conflicts. **Complete project recompilation** is needed after an update, see section 7. **SVN commit**: sends your local modifications to the server. Do not hesitate to commit often (if the local compilation is ok) in order to avoid conflicts. (every evening ?) Subversion generates a unique revision number after each commit. Then you can easily recover your project in a particular state (in case of problems or incompatibility) ⇒ update to a particular revision. ==== 6.1 SmartSVN ==== * Open SmartSVN and open your project * Make sure the highest directory (the install directory) is selected in the left arborescence **To update your local copy...** * Right-click on it and choose 'Update...' * Validate the default options * **Note**: in case of trouble during the commit operation, you may need to update to be able to re-commit. * This will update your local copy to synchronize with the 'HEAD' revision in the SVN server (i.e. the most recent version). **To commit your changes...** * Check the 'View' menu: check 'Files from subdirectories' and uncheck the other options * You will see only the files to be commited (added, removed, modified) * Select them, right click, commit * Enter a little message in english to tag your commit (useful for admin in case of trouble) * Validate ==== 6.2 TortoiseSVN ==== * Open a file manager * Find the install directory of your project **To update your local copy...** * Right-click on the name of the install directory and choose the 'SVN Update' option * Validate the default options * Check the update result in the TortoiseSVN dialog box **To commit your changes...** * Right-click on the name of the install directory and choose the 'SVN Commit' option * Enter a little message in english to tag your commit (useful for admin in case of trouble) * Validate ==== 6.3 Command line ==== * In a terminal, 'cd' inside the install directory, then **To update your local copy...** svn up **To commit your changes...** svn ci // Enter a little message in english in the default editor, then Ctrl-O and Ctrt-X ===== 7. Recompile AMAPstudio and start Simeo ===== * Open a terminal (Dos prompt under windows, shell under linux) * Go to the AMAPstudio install directory with cd * Recompile the project // Windows ant compile // Linux and Mac sh ant compile If you need a full recompilation // Windows ant clean compile // Linux and Mac sh ant clean compile **Note**: this recompilation should be done after each update. If there are errors, please contact the Simeo team. * Then you can launch Simeo. The simeo.bat or simeo.sh scripts are used to start Simeo: // Windows simeo // Linux and Mac sh simeo.sh **Note**: you may also use ant run