Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • cordeliaze/cesium
  • pfouque06/cesium
  • wellno1/cesium
  • 1000i100/cesium
  • vincentux/cesium
  • calbasi/cesium
  • thomasbromehead/cesium
  • matograine/cesium
  • clients/cesium-grp/cesium
  • cedricmenec/cesium
  • Pamplemousse/cesium
  • etienneleba/cesium
  • tnntwister/cesium
  • scanlegentil/cesium
  • morvanc/cesium
  • yyy/cesium
  • Axce/cesium
  • Bertrandbenj/cesium
  • Lupus/cesium
  • elmau/cesium
  • MartinDelille/cesium
  • tykayn/cesium
  • numeropi/cesium
  • Vivakvo/cesium
  • pokapow/cesium
  • pini-gh/cesium
  • anam/cesium
  • RavanH/cesium
  • bpresles/cesium
  • am97/cesium
  • tuxmain/cesium
  • jytou/cesium
  • oliviermaurice/cesium
  • 666titi999/cesium
  • Yvv/cesium
35 results
Show changes
Showing
with 1231 additions and 94 deletions
# Version v1.6.8
## All platforms
- [enh] Build: upgrade to cordova@10.0.0, and node.js v12. Refactor Cordova hook to use main gulpfile.js
- [fix] Map: optimize loading time (remove the search layer)
## Web extension
- [enh] Handle G1 link, like 'web+june://' - See [this post](https://forum.duniter.org/t/g1link-syntax-review-choisissons-la-syntaxe-g1lien/7522)
## Android
- [enh] Handle G1 link, like 'june://' - See [this post](https://forum.duniter.org/t/g1link-syntax-review-choisissons-la-syntaxe-g1lien/7522)
## Desktop
- [fix] Fix startup error on Ubuntu 20+ - [#921](https://git.duniter.org/clients/cesium-grp/cesium/-/issues/921)
\ No newline at end of file
# Version v1.7.0
## All platforms
- [enh] Add mre languages : Italian, Deutsch, Catalan, Portuges
- [fix] Update default Duniter and Cesium+ Pod peers
\ No newline at end of file
# Deploy Cesium # Deploy Cesium on a web server
## Bash script > **WARN**: Installing Cesium as a web site is NOT recommended, for security reasons!
> A DNS attack can redirect to another web site (with modified javascript code) in order to retrieve user credentials (wallet secret key)
>
> We recommend the use of the [web extension](build_web_extension.md), or the [desktop application](build_desktop.md);
>
> Read [this post](https://forum.monnaie-libre.fr/t/cesium-evolue-aie-ca-va-piquer-mais/10015) for details (French).
## First deployment
1. Download the [latest release](https://github.com/duniter/cesium/releases/latest) (file `cesium-vx.y.z-web.zip`);
2. Unpack into an empty directory;
3. Change Cesium default settings, by editing the file `config.js` (see next bottom);
4. Configure the web server engine (e.g. Apache, nginx):
* Add a new `location` (or a new `virtual host`), that use the directory as `web root`.
* Make sure the file `index.html` exist inside this directory.
This is a bash script example, that you can use to deploy the latest release. Please refer to your engine documentation.
5. Restart your web engine.
That's it !
## Configure Cesium default settings
To change default configuration, that Cesium will use:
- Edit the file `config.js` in the web root directory, and change some properties:
```js
angular.module("cesium.config", [])
.constant("csConfig", {
"fallbackLanguage": "en",
"rememberMe": false,
"timeWarningExpireMembership": 5184000,
"timeWarningExpire": 7776000,
"useLocalStorage": true,
"useRelative": true,
"decimalCount": 4,
"helptip": {
"enable": true,
"installDocUrl": "https://github.com/duniter/duniter/blob/master/doc/install-a-node.md"
},
"node": {
"host": "g1.duniter.org",
"port": "443"
},
"plugins": {
"es": {
"enable": "true",
"host": "g1.data.duniter.fr",
"port": "443"
}
},
"version": "1.3.7",
"build": "2019-04-02T08:27:57.915Z"
});
```
- Configure a Duniter node:
* set `node.host` and `node.port` to the default node address.
- Configure the optional extension for [Cesium+](https://git.duniter.org/clients/cesium-grp/cesium-plus-pod/)
* set `plugins.es.host` and `plugins.es.port` to the default Cesium+ Pod (aka ES) address.
* set `plugins.es.enable` with [true|false] to change the default extension state.
To learn more about configuration options, see the [detailed documentation](configuration.md).
## Update to the last version
On Linux server, you can use an update script:
```
cd <CESIUM_WEB_ROOT>
curl -kL https://git.duniter.org/clients/cesium-grp/cesium/raw/master/install.sh | bash
```
or:
```
cd <CESIUM_WEB_ROOT>
wget -qO- https://git.duniter.org/clients/cesium-grp/cesium/raw/master/install.sh | bash
```
> **Note**: You should NOT need root permission. Make sure to NEVER replace `| bash` by `| sudo bash`!
> For any permission issue during installation, change permission on directory, then retry.
## Another Bash script
This is a bash script example, that you can use to deploy the latest release, in a existing Cesium web site.
This script will create or replace a directory name `cesium`, where application will be unpack. This script will create or replace a directory name `cesium`, where application will be unpack.
**Be aware** that the destination directory will be created **where the script is**. **Be aware** that the destination directory will be created **where the script is**.
...@@ -34,6 +126,7 @@ cd $BASEDIR ...@@ -34,6 +126,7 @@ cd $BASEDIR
echo "Installing cesium into '$BASEDIR/cesium'..." echo "Installing cesium into '$BASEDIR/cesium'..."
# In order to get the latest version, simplify run:
wget -qO- https://git.duniter.org/clients/cesium-grp/cesium/raw/master/install.sh | bash wget -qO- https://git.duniter.org/clients/cesium-grp/cesium/raw/master/install.sh | bash
export VERSION=`sed -rn "s/\s*\"version\": \"([^\"]*)\",\s*/\1/p" cesium/config.js` export VERSION=`sed -rn "s/\s*\"version\": \"([^\"]*)\",\s*/\1/p" cesium/config.js`
......
# Development Guide # Development Guide
## Prerequisite ## In a post-it
```bash
# Install NodeJS v16
nvm use 16
npm install -g yarn
# Clone and compile from source
git clone git@git.duniter.org:clients/cesium-grp/cesium.git
cd cesium
yarn
# Run the App !
yarn run start
```
## Step by step
### Prerequisite
To build Cesium, you will have to: To build Cesium, you will have to:
- Installing build tools: 1. Installing build tools:
``` ```bash
sudo apt-get install build-essential sudo apt-get install git wget curl unzip build-essential software-properties-common ruby ruby-dev ruby-ffi gcc make
``` ```
- Installing [nvm](https://github.com/creationix/nvm) 2. Installing node.js v16 :
```
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash
```
> Then reload your terminal, for instance by executing the commande `bash` * First, install [nvm](https://github.com/nvm-sh/nvm) (Node Version Manager) :
```bash
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.1/install.sh | bash
```
- Configure NodeJS to use a version 5: (**WARNING**: upper version will NOT work !) > Alternatively, if you are using `fish shell`, there is a [dedicated plugin](https://github.com/jorgebucaran/fish-nvm).
```
nvm install 5 * Then, reload your terminal (for instance by executing the command `bash`);
```
* Configure nvm to use the expected version: (**WARNING**: upper version will NOT work !)
```bash
nvm install 16
```
- Installing node.js build tools: 3. Installing node build tools, as global dependencies:
``` ```bash
npm install -g gulp bower@1.8.0 cordova@6.5.0 ionic@1.7.16 npm install -g yarn gulp cordova @ionic/cli@6.20.9 web-ext
``` ```
## Get the source code and dependencies ### Get the source code and dependencies
- Getting source and installing project dependencies: 1. Getting the source code:
``` ```bash
git clone git@git.duniter.org:clients/cesium-grp/cesium.git git clone git@git.duniter.org:clients/cesium-grp/cesium.git
cd cesium ```
npm install
``` 2. Install project dependencies:
```bash
- Installing Cordova plugins (need for platforms specific builds) cd cesium
``` yarn
ionic state restore ```
ionic browser add crosswalk@12.41.296.5
```
- This should create a new directory `platforms/android` 3. Installing Cordova plugins (required to build Android and iOS artifacts):
```bash
export JAVA_HOME=/path/to/jdk-11
export PATH=$JAVA_HOME/bin:$PATH
ionic cordova prepare
```
> To remind: check that your command line is configured: This should create new directories `platforms/android` and `platforms/ios`.
> - You must place yourself in the directory of the application: `cd cesium`
> - and be configured for NodeJs v5: `nvm use 5` (please check using the command `node --version`)
> As a reminder: check that your command line is well configured:
> - You must place yourself in the directory of the application: `cd cesium`
> - and working with NodeJs **v16**: `nvm use 16` (please check using the command `node --version`)
## Prepare environment, then compile and launch ### Prepare configuration file
- To configure your build environment : Configure Cesium default settings :
* Add your environment config into `app/config.json` 1. Add your environment config into `app/config.json`
* Update default configuration, using the command: 2. Update default configuration, using the command:
```bash
``` gulp config --env <your_env_name>
gulp config --env <your_env_name> ```
```
> This will update the configuration file used by cesium, at `www/js/config.json`. This will update a configuration file `www/js/config.json`.
- Compiling and running Cesium: ### Compile and launch
```
npm start To compile and launch Cesium, run:
```bash
yarn run start
``` ```
> or alternative: `ionic serve`
- Open a web browser at address: [localhost:8100](http://localhost:8100). The application should be running. or alternative: `npm start` or `ionic serve`
## Best practices for development The application should be running at [localhost:8100](http://localhost:8100)!
### Build artifacts
Cesium can be build:
- [as an unhosted web applicationa](build_web.md);
- [for Android](build_android.md);
- [for iOS](build_ios.md);
- [as a Web extension](build_web_extension.md) for Mozilla Firefox or Chrome/Chomium;
- [as a Desktop application](build_desktop.md) for Linux (`.deb`), Windows and MacOSx;
You may also [use Docker image](build_docker.md) to simplify this task;
### Time to code !
#### Pull request
For each pull request, please create an issue first.
#### Best practices for development
Cesium could be run on phone devices. Please read [performance tips on AgularJS + Ionic](http://julienrenaux.fr/2015/08/24/ultimate-angularjs-and-ionic-performance-cheat-sheet/)
before starting to contribute.
Cesium could be run on phone devices. Please read [performance tips on AgularJS + Ionic ](http://julienrenaux.fr/2015/08/24/ultimate-angularjs-and-ionic-performance-cheat-sheet/) Read also [Angular performance for large applicatoins](https://www.airpair.com/angularjs/posts/angularjs-performance-large-applications).
before starting to contribute.
Read also [Angular performance for large applicatoins](https://www.airpair.com/angularjs/posts/angularjs-performance-large-applications).
## Introduction
This article is an introductory tutorial to the source code of the Cesium software.
This will allow you, through a succession of steps, to access the mastery of the tools and methods used daily by the developers of Cesium to create and modify the software.
At the end of this tutorial, you will be *able to modify the software*. And if you feel like it, you can even make a change and share it with the main code repository, so that it is officially integrated and available to users!
To your keyboards!
## Level I: Retrieve the source code
This first level consists of creating *your own version* of the software sources and retrieving this copy on your computer. You will produce:
* your own account on the [GitLab de Duniter](https://git.duniter.org)
* your own version of the software, your *fork*
* a local copy of the source code files from your *fork*
### Create a GitLab Duniter account
> If you already have a GitLab account, you can skip this step.
Go to [https://git.duniter.org](https://git.duniter.org/users/sign_in?redirect_to_referer=yes) (site in english).
In 'Register' Fill in the 3 proposed fields:
* Full name
* Username
* E-mail
* Password
You will probably receive a confirmation email that you will need to validate. Once this step is over, you should have an account on the GitLab Duniter.
### Fork the main repo
Go to https://git.duniter.org/clients/cesium-grp/cesium.
Click the "Fork" button at the top of the page (below the logo).
### Install Git
Installing Git depends on your operating system. Simply follow the instructions on : https://git-scm.com/
### Clone your fork
At this point, you are able to retrieve your version of the source code (your *fork*), so that you can work on it.
#### Open Git from the command line
To retrieve the source code, launch Git in console mode.
* On Linux and MacOS, simply open Terminal
* On Windows launch the *Git Bash* program :
<img src="../fr/img/6fc638dc0a22d88da7e84dbf0371e69747767f78.png" width="432" height="80">
#### Clone your fork from the command line
Go back to the GitHub webpage and find the "Clone or download" button: Click on it, you can then copy the clone URL by clicking on the suitcase icon.
All you have to do is go back to your Git console and enter:
git clone <paste the copied URL>
which gives **in my case**:
```
git clone git@git.duniter.org:blavenie/cesium.git
Cloning into 'cesium'...
(...)
Checking connectivity... done.
```
If you have come to a similar behavior, **great**, you now have the Cesium source code!
## Level II: Compiling and Launching in a Browser
This second level aims to obtain the basic tools to execute the source code, and verify its proper functioning. You will realize:
* installation of the JavaScript runtime *Node.js*
* the verification of the proper functioning of the source code *via* the launch of the application, in web mode.
If the application launches, you will already have a fully **functional** environment!
### Install Node.js
#### Under Linux / MacOS
Installing Node.js has become extremely simple for these OS: a tool allows you to install the version of Node.js you want, change it whenever you want and without conflict with a previous version: it is [nvm](https://github.com/creationix/nvm).
You can install nvm with the following command:
```bash
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.6/install.sh | bash
```
Close and reopen your terminal, as shown. Then, install Node.js (choose version 12):
```bash
nvm install 12
```
You will then have the latest version of node's 5.x branch.js ready to use.
##### Compilation tools
Install the necessary tools for compilation.
```bash
sudo apt-get install build-essential
```
(mac users https://appuals.com/how-to-fix-sudo-apt-get-command-not-found-on-macos/)
#### On Windows
For Windows, download version 6 available from the official website of Node.js: https://nodejs.org
Then launch the installer thus downloaded.
### Install Cesium Node.js modules
Cesium relies on third-party libraries to run called *dependencies*, such as compilation libraries (gulp, ionic, angularJS).
The fact that you cloned the sources is actually not enough to launch the application. We need to get the code of the dependencies to get all the executable code of the program. To do this, go back to the Git console and move to the cloned directory:
```bash
cd cesium
```
Then, start downloading and installing the Cesium modules using the command:
```bash
npm install -g yarn gulp cordova@10.0.0 @ionic/cli web-ext
```
Then for non-global dependencies:
```bash
yarn
```
> The installation process may take several minutes. Indeed, it is necessary to download all the dependencies of Cesium and even compile some of them.
If everything went well, you should get an end tree in the console, and the command prompt should have returned your hand:
```bash
yarn install v1.15.2
[1/4] Resolving packages...
(...)
$ node -e "try { require('fs').symlinkSync(require('path').resolve('node_modules/@bower_components'), 'www/lib', 'junction') } catch (e) { }"
Done in 0.82s.
```
> You may get `npm WARN messages [...] `. Nothing serious: as the name of the message suggests, it is simply a non-blocking warning for the rest of the events.
Then install the remaining dependencies (via bower):
```bash
npm run postinstall
```
### Install an IDE
To develop in NodeJS, you can use the IDE of your choice:
* For example Sublime Text (not free) : https://www.sublimetext.com/
* Other possibilities :
* VS Code (free).
* WebStorm (not free but very advanced operation).
### Install Chrome and/or Firefox
To debug Cesium javascript more easily, it is easier to use the Chrome browser
## Level III: Mastering the usual commands
This third level allows you to discover the few (five) commands that you will use all the time if you develop Cesium. You will learn:
* configure Cesium, including the Duniter node it will use (default);
* to launch Cesium in your browser;
### Configure Cesium
The default configuration of our environment is visible in the file 'app/config.json'. Several profiles are present: 'default', 'dev', etc.
```json
{
"default": {
"cacheTimeMs": 60000,
"fallbackLanguage": "en",
"rememberMe": false,
"showUDHistory": false,
"timeout": 10000,
"timeWarningExpireMembership": 5184000,
"timeWarningExpire": 7776000,
"useLocalStorage": true,
"useRelative": true,
"initPhase": false,
"expertMode": false,
"decimalCount": 4,
"helptip": {
"enable": true,
"installDocUrl": "https://github.com/duniter/duniter/blob/master/doc/install-a-node.md"
},
"node": {
"host": "g1.duniter.org",
"port": "443"
},
"plugins":{
"es": {
"enable": true,
"askEnable": false,
"host": "g1.data.duniter.fr",
"port": "443"
}
}
},
(...)
"dev": {
"cacheTimeMs": 60000,
"fallbackLanguage": "fr-FR",
"defaultLanguage": "fr-FR",
"rememberMe": true,
"showUDHistory": false,
"timeout": 6000,
"timeWarningExpireMembership": 5184000,
"timeWarningExpire": 7776000,
"useLocalStorage": true,
"useRelative": true,
"initPhase": false,
"expertMode": false,
"decimalCount": 2,
"helptip": {
"enable": true,
},
"node": {
"host": "localhost",
"port": "9600"
},
"plugins":{
"es": {
"enable": false
}
}
},
}
```
We will use the "dev" configuration, you may use your Duniter node.
Change the 'host' and 'port' values of the 'dev' configuration profile to match your Duniter node:
```json
"dev: {
...
"node": {
"host": "localhost",
"port": "9600"
},
...
```
Disable the plugin "es" (used for Cesium+) :
```json
"dev: {
...
"plugins":{
"es": {
"enable": false
}
}
...
```
To enable this configuration, now run the command:
```bash
gulp config --env dev
```
```bash
[17:32:34] Using gulpfile (...)/cesium/gulpfile.js
[17:32:34] Starting 'config'...
[17:32:34] Building `www/js/config.js` for `dev` environment...
[17:32:36] Finished 'config' after 10 μs
```
> This command will be restarted at the time of your changes to the `app/config` file.
Cesium is now configured to use your local Duniter node.
### Launch Cesium (web mode)
All you have to do is launch the application (in web mode) to find out if everything went well and that you are ready for the future.
Run the following command :
```bash
npm start
```
> Alternative : `ionic serve`
When complete, the command displays :
```bash
Running live reload server: http://localhost:35729
Watching: 0=www/**/*, 1=!www/lib/**/*
Running dev server: http://localhost:8100
Ionic server commands, enter:
restart or r to restart the client app from the root
goto or g and a url to have the app navigate to the given url
consolelogs or c to enable/disable console log output
serverlogs or s to enable/disable server log output
quit or q to shutdown the server and exit
ionic $
```
You can open a web browser at http://localhost:8100
You should see the Cesium homepage there.
Congratulations, you have an operational Cesium installation!
### Documentation
Cesium uses the Ionic framework, which has good documentation : http://ionicframework.com.
Visit this site to learn more.
## Level IV: Finding your way around the code
### Locate software layers
Open your IDE, and open the Cesium project.
Search and locate in the code:
* HTML templates that carry HMIs: www/templates
* controllers (JS): www/js/controllers
* services (JS): www/js/services
<img src="../fr/img/a5078db3abdf71c87f245e948ce94a181b0e0f37.png" width="690" height="369">
### Go further in the code
Cesium relies on AngularJS. Excellent documentation is available on the web.
__Note :__ The version of AngularJS used is a 1.x. The 2.x and above change completely and impose a complete redesign... This redesign is planned by 2019, in a version 2 of Cesium.
## Level V: Debugging
### On Chrome
#### Open The Source Explorer
Open the app in Chrome at http://localhost:8100
Open the developer tools:
* Menu `Option > More Tools > Developer Tools`
* or by the keyboard shortcuts: `Ctrl + Shift + i`
#### Debug a user's certification
Open the source explorer, and then locate the file `dist/dist_js/app/controllers/wot-controllers.js`.
Find the method `$scope.certify()`, and place a breakpoint there.
Navigate the Cesium app as follows:
* Click in the menu (on the left) `Annuaire`;
* Searches for a user and then visualizes their identity;
* In `Certification received`, click on the `Certify` button;
* Verify that the console stops at the breakpoint.
<img src="../fr/img/eca671a6d24b8e11566cfcca11b65e6c9c9c370c.png" width="690" height="223">
Discover the code by scrolling down the step-by-step action.
> Use the keys from `F9` to `F11`, to enter a method (F11), advance step by step (F10) or to the next breakpoint (F9), etc.
## See more ?!
You can now continue with the following levels. We will see how to modify a Cesium screen.
[See more here >>](./development_tutorial-02.md)
## Presentation
This article is the 2nd initiation tutorial to the Cesium software source code.
You will be able to understand the role of the different software layers,
by modifying them in order to improve a screen of Cesium.
## Prerequisites
Before doing this tutorial, you must:
- Know the functionalities of Cesium. If not, refer to [la vidéo de présentation générale des fonctionnalités](https://www.youtube.com/watch?v=FQzGIzJf9Nw&list=PLr7acQJbh5rzgkXOrCws2bELR8TNRIuv0&index=6) (RML7) and the one detailing the new features (RML8 - link to come)
- Have followed the 1st tutorial for setting up the environment [jusqu'au niveau III](https://github.com/duniter/cesium/blob/master/doc/fr/development_tutorial.md)
## Level VI: Display a missing currency parameter
__Objective :__ In this level, the objective is to display in the [`Currency`](http://g1.duniter.fr/#/app/currency/view/lg/) page the monetary parameter `stepMax`.
> As a reminder, `stepMax` is the maximum distance between a member and an applicant, so that the latter can enter the web of trust.
### Modify the HTML template
Open the template file `/www/templates/currency/items_parameters.html`.
Add a new item in the list of parameters, i.e. a new `<ion-item>` tag, below the other tags of the same name:
```html
(...)
<ion-item class="item-icon-left">
<i class="icon ion-steam"></i>
<span translate>CURRENCY.VIEW.STEP_MAX</span>
<span class="badge badge-stable">{{stepMax}}</span>
</ion-item>
```
If you refresh the `Currency` page of your browser, you should see the change:
<img src="../fr/img/19a637b1fa847aa5bbb18565737e9e5e28729221.jpg" width="431" height="97">
### Internationalizing a Label
The `CURRENCY.VIEW.STEP_MAX` string actually represents an **internationalized message key**.
We now need to add the translation of this key.
> The icon is configured simply by the `ion-stream` CSS class. To find out which icons are available, see
[ionicons.com](http://ionicons.com/)
Open the file `www/i18n/locale-fr-FR.json` and identify the element `CURRENCY` then `VIEW`.
Add the translation for our new key:
```json
"CURRENCY": {
(...)
"VIEW": {
"TITLE": "Monnaie",
(...)
"SIG_WINDOW": "Maximum delay a certification can wait<br/>before being expired for non-writing.",
"STEP_MAX": "Distance maximale dans la toile de confiance<br/>entre chaque membre et un nouvel entrant"
}
}
```
Don't forget **to add a comma** on the preceding line...
> Note: Cesium internationalization uses the AngularJS plugin [angular-translate](https://github.com/angular-translate/angular-translate).
> Depending on the case, it is possible to use HTML tags, like here the tag `<br/>`
Refresh your browser page: the key has been translated!
<img src="../fr/img/6bd04622dd2eb59f6d716ae9e2f114276e4ca35a.jpg" width="690" height="116">
Repeat the operation in the **other translation files** present in `www/i18n`:
```
(...)
"STEP_MAX": "Maximum distance between<br/>each WoT member and a newcomer"
}
```
### Add a dynamic variable
All that remains is to dynamically display the value of our `stepMax` parameter. We will use the `data-binding` functions that AngularJS allows.
> In AngularJS, it is a controller that manages the filling of values, typically from data obtained on the network.
Open the `CurrencyViewController` controller present in the file `www/js/controllers/currency-controllers.js`
This controller already makes a call to the Duniter API [`/blockchain/parameters`](http://cgeek.fr:9330/blockchain/parameters).
Identify the `load()` function.
Modify the return code of the `/blockchain/parameters` call, to store the `stepMax` value in the `$scope`:
```
function CurrencyViewController($scope, $q, $translate, $timeout, BMA, UIUtils, csSettings, csCurrency, csNetwork) {
// Ajout d'une propriété qui stockera la valeur de stepMax
// (On met ici la valeur par défaut)
$scope.stepMax = 0;
(...)
$scope.load = function() {
(...)
return $q.all([
// Get the currency parameters
BMA.node.blockchain.parameters()
.then(function(json){
$scope.currency = json.currency;
(...)
// Mise à jour de la valeur, à partir du résultat que renvoi le noeud Duniter
$scope.stepMax = json.stepMax;
}),
(...)
```
> The '$scope' object is used to manipulate values shared between the controller and the template.
> The value we put in `$scope.stepMax` is displayed thanks to the `{{stepMax}}` instruction that you put in the HTML template.
Your browser should now display:
<img src="../fr/img/3df8cbd2133ea9e9a28855f4b50413846fdf292c.jpg" width="519" height="85">
Congratulations, you now know how to display new values in Cesium screens!
## Level VII: Publish your changes
__Objective :__ Become an official contributor, by publishing your code!
### Make a `pull request`
If you have never used git on your current machine, you will first need to define
1. your email address: `git config --global user.email "your@email.xyz"`
2. your first and last name: `git config --global user.name "First name NAME"`
The change you just made actually corresponds to [ticket #209](https://git.duniter.org/clients/cesium-grp/cesium/issues/209).
To add your modification to it, and thus **become an official contributor** of Cesium:
* Type the command `git add` followed by the names of the files you modified or, more simply, `git add *` to add all modified files to the commit.
* Then do a `git commit` to commit your code;
* Finally, do a `git push` to push to your GitHub repo.
* In GitLab, log in to your account;
* Open your `Cesium` repository via the "Projects" > "Your projects" menu that you will find at the top left, in the navigation bar.
* In the left menu, go to "Merge requests", and click on the "New merge request" button
* Most of the fields are already pre-populated, so all you have to do is select the source branch (if you haven't changed your branch via the git command line, it's "master")
* Click on `Compare branches and continue`
* In the title the reference to the ticket: `#209`
Your contribution is now visible to Cesium developers, who will be able to integrate your code more easily.
> _Note :_ Since RML7, this ticket has been closed. You can therefore continue this level, by adding other missing variables (see next paragraph), then
> publish your changes: the `pull request` process remains the same.
## Niveau VIII : Free modification
__Objective :__ Now it's up to you to add the missing information that seems interesting.
### Add new variables
To get your hands on the changes in Cesium, you can add other missing currency settings.
For example, among those concerning the _BlockChain_: `xpercent`, `percentRot`, `blocksRot`...
You can find their definition in the [Duniter protocol documentation](https://github.com/duniter/duniter/blob/master/doc/Protocol.md#protocol-parameters).
> _Tip:_ to separate the different parts of the screen, add a separator, i.e. a `<div>` tag with the CSS class `item item-divider`:
```html
<div class="item item-divider">
<span translate>CURRENCY.VIEW.BLOCKCHAIN_DIVIDER</span>
</div>
<!-- paramètres relatifs à la blockchain -->
```
## See more ?!
You can now continue with the following levels. We will see how to compile and deploy Cesium on Android, then how to add a plugin, and even add a dynamic graph!
[See more here >>](./development_tutorial-03-android.md)
\ No newline at end of file
## Introduction
This article is a tutorial to develop on Cesium, to compile and test the application on Android.
## Prerequisites
Before doing this tutorial, you must:
- Have followed the tutorials on Cesium [up to level VIII] (./development_tutorial-02.md)
## Level IX
### Objective
The objective here is to install the basic tools to compile and verify its proper functioning under Android. You will achieve: </p>
- installation of `JDK`
- installation of `Android Studio` software
- installation of `KVM` emulator
- installation of `NDK Android` (optional - will be needed later)
### Installing software
#### Installing JDK
The JDK or _Java Development Kit_
You can download it from [Oracle](http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html).
<img src="../fr/img/fef4f4dfe7c2168cb27c9e7f5e399fd547ce774a.png" width="400">
Depending on your operating system, download corresponding.
Then install the file as normal, following the guided steps.
#### Install Android Studio
You can find all files at [AndroidStudio-Downloads](https://developer.android.com/studio/index.html#downloads)
For Windows download file without Android SDK:
<img src="../fr/img/3b8fa2f5c0465b13ae5ce74d49702e0c9f027866.png" width="690" height="237">
##### For Linux
All you need to do is unzip the ZIP file, open a terminal in that folder, and type the command:
```bash
./bin/studio.sh
```
##### For Windows and Mac OS
Install the executable you downloaded earlier.
##### All machines combined
At the end of the installation or at the first launch, Android Studio will tell you that you do not have an SDK and will offer to install it:
- If you have already installed it, you can indicate where it is.
- Otherwise install the version it offers.
#### Install NDK (optional)
> The NDK is used for executing code under C++, in particular the NaCL cryptography library.
> This step is currently optional (for experts only).
You can download it at: [this site](https://developer.android.com/ndk/downloads/index.html)
Warning: do not install version 12 of the NDK. It's not stable yet.
Once again downloaded the correct version, unzip the file next to your SDK.
Under Android Studio go to the menu `File > Project Structure...`
<img src="../fr/img/04e64b769cbd45b9d275cd5f81002a399a1a7684.png" width="300">
A window like this should open:
<img src="../fr/img/ceb75301172038e75f5c43b328dd7febd7bedc7e.png" width="450">
Enter the NDK installation path.
#### Install KVM emulator (optional)
For Linux / Debian only:
```bash
sudo apt-get install kvm qemu-kvm libvirt-bin bridge-utils virt-manager
sudo groupadd libvirtd
sudo adduser `id -un` libvirtd
```
##### In case of problem...
If you get this error :
```
Cannot run program "/home/eis/android-sdks/build-tools/21.1.2/aapt": error=2, Aucun fichier ou dossier de ce type
```
Install two additional compatibility libraries (solution from [this post](http://stackoverflow.com/questions/22701405/aapt-ioexception-error-2-no-such-file-or-directory-why-cant-i-build-my-grad)) :
```bash
sudo apt-get install lib32stdc++6 lib32z1
```
## Level X: Launching the application in Android Studio
### Project Setup
Go to the folder in which you installed cesium using the `cd` command followed by the path to the appropriate directory.
Check that you are using the version of NodeJs that Cesium needs using the command
```
node --version
```
If you are not on a v6, use the command
```
nvm use 12
```
You can now launch the installation of the Cesium project for Android:
```
ionic cordova prepare
```
Normally, this command should initialize (among other things) a `platforms/android` directory.
> This command may take a moment to complete.
Now run the build for Android:
```
ionic build android
```
Now launch Android Studio. You should arrive at this window:
<img src="../fr/img/33266d44fdbfd6c8b44e46a3664edafacaf0a316.png" width="500">
Select "Open an existing Android Studio project" and point the folder to `cesium/platforms/android`.
### Launch the application
To be able to launch an emulator, we will have to create one.
To do this, go to `Tools` > `AVD Manager`, or click on the following icon:
<img src="../fr/img/46e959d1e616e34972a41f4d120a1d4f5beb0955.png" width="690" height="42">
A window will open and offer you to create a "Virtual Device" follow the software.
If you have an Android phone you can put it in developer mode and plug it in if you want to see the app on your phone.
Then, once the emulator is created, you can click the "Play" button (<img src="../fr/img/70b2ce88a5e7aa5754f6a771cf5efed3c639a27b.png" width="46" height="44">) to launch the application.
You can also use the icon (<img src="../fr/img/b7c419b33a43f6a43c5b756074ee0c199072f7d1.png" width="40" height="44">) to launch the application in debug mode.
Android Studio will ask you which device you want to launch the app on, select emulator or phone and leave it alone.
## Level XI: Application launched by `ionic`
You can now use the `ionic` tool directly:
- Either to launch your application on a connected phone:
```bash
ionic run android
```
- Either to launch it on an emulator:
```bash
ionic emulate android
```
## The following ?!
You can now continue with the following levels. We will see there how to add a plugin to Cesium.
[See more here >>](../fr/development_tutorial-04-add_plugin.md)
\ No newline at end of file
{
"version": "https://jsonfeed.org/version/1.1",
"title": "News",
"user_comment": "Ce fichier redirige vers le forum Duniter (via 'next_url')",
"feed_url": "https://raw.githubusercontent.com/duniter/cesium/master/doc/feed/1.1/feed-en-GB.json",
"home_page_url": "https://forum.duniter.org/t/new-version-of-cesium-en/11460",
"next_url": "https://forum.duniter.org/t/new-version-of-cesium-en/11460.json"
}
{
"version": "https://jsonfeed.org/version/1.1",
"title": "News",
"user_comment": "Ce fichier redirige vers le forum Duniter (via 'next_url')",
"feed_url": "https://raw.githubusercontent.com/duniter/cesium/master/doc/feed/1.1/feed-en.json",
"home_page_url": "https://forum.duniter.org/t/new-version-of-cesium-en/11460",
"next_url": "https://forum.duniter.org/t/new-version-of-cesium-en/11460.json"
}
{
"version": "https://jsonfeed.org/version/1.1",
"title": "Noticias",
"user_comment": "Ce fichier redirige vers le forum Duniter (via 'next_url')",
"feed_url": "https://raw.githubusercontent.com/duniter/cesium/master/doc/feed/1.1/feed-es-ES.json",
"home_page_url": "https://forum.duniter.org/t/nueva-version-de-cesium-es/11459",
"next_url": "https://forum.duniter.org/t/nueva-version-de-cesium-es/11459.json"
}
{
"version": "https://jsonfeed.org/version/1.1",
"title": "Actualités",
"user_comment": "Ce fichier redirige vers le forum Duniter (via 'next_url')",
"feed_url": "https://raw.githubusercontent.com/duniter/cesium/master/doc/feed/1.1/feed-fr-FR.json",
"home_page_url": "https://forum.monnaie-libre.fr/t/actu-generale-la-1-bouge/31318",
"next_url": "https://forum.monnaie-libre.fr/t/actu-generale-la-1-bouge/31318.json"
}
{
"version": "https://jsonfeed.org/version/1.1",
"title": "Actualités",
"user_comment": "Ce fichier redirige vers le forum Duniter (via 'next_url')",
"feed_url": "https://raw.githubusercontent.com/duniter/cesium/master/doc/feed/1.1/feed-fr-FR.json",
"home_page_url": "https://forum.monnaie-libre.fr/t/actu-generale-la-1-bouge/31318",
"next_url": "https://forum.monnaie-libre.fr/t/actu-generale-la-1-bouge/31318.json"
}
{
"version": "https://jsonfeed.org/version/1",
"title": "News",
"user_comment": "Ce fichier est nécessaire pour les versions avant la 1.7.7",
"feed_url": "https://raw.githubusercontent.com/duniter/cesium/master/doc/feed/feed-en.json",
"home_page_url": "https://forum.duniter.org/t/nouvelle-version-de-cesium-fr/11458/2",
"author": {
"name": "Benoit Lavenier",
"url": "@BenoitLavenier",
"avatar": "https://forum.duniter.org//user_avatar/forum.duniter.org/kimamila/48/185_2.png"
},
"items": [
{
"title": "New version of Cesium",
"author": {
"name": "Benoit Lavenier",
"url": "@BenoitLavenier",
"avatar": "https://forum.duniter.org//user_avatar/forum.duniter.org/kimamila/48/185_2.png"
},
"date_published": "2023-08-14T19:30:00+02:00",
"id": "https://forum.duniter.org/t/new-version-of-cesium-en/11460",
"url": "https://forum.duniter.org/t/new-version-of-cesium-en/11460",
"content_html": "<p>A new release version of Cesium <a href=\"https://cesium.app\">is available</a>!</p><blockquote><p>The cesium.app website is currently being updated... The same goes for the Play Store, App Store, etc.\nPlease be patient! :slight_smile:</p></blockquote><p>In recent months, many of you have encountered multiple difficulties: transactions disappearing or being completely lost, “timeout” error, desynchronized node, etc.</p><p>We are well aware of these issues. They are related to several factors:</p><ul><li>on the one hand, to the new version 1.7 of Cesium, which introduces automatic node selection for Duniter, by random drawing among synchronized nodes;</li><li>on the other hand, to the state of the Duniter nodes network, some nodes have been found to be misconfigured to work with Cesium, or using unstable versions of Duniter.</li></ul><h2><a name=\"new-features-1\" class=\"anchor\" href=\"#new-features-1\"></a>New Features</h2><h3><a name=\"at-start-up-2\" class=\"anchor\" href=\"#at-start-up-2\"></a>At Start-Up</h3><p>Node selection at startup has been reviewed to select only those compatible with Cesium’s features. This should fix the previously explained problems.</p><h3><a name=\"my-operations-3\" class=\"anchor\" href=\"#my-operations-3\"></a>My Operations</h3><p>In “My Operations,” long comments are now more visible, whether on a phone:<br><img src=\"https://forum.duniter.org/uploads/default/original/2X/4/4fa5d83286441e6689d93b6d636a46771fcb543d.png\" alt=\"image\" data-base62-sha1=\"bmB2vlwdnBe1zK86r7RGiQpJesl\" width=\"594\" height=\"357\"></p><p>…or in a web browser:</p><p><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://forum.duniter.org/uploads/default/original/2X/7/7d081473f9398e237425c96c8b9d55ef81e5662e.png\" data-download-href=\"https://forum.duniter.org/uploads/default/7d081473f9398e237425c96c8b9d55ef81e5662e\" title=\"image\"><img src=\"https://forum.duniter.org/uploads/default/optimized/2X/7/7d081473f9398e237425c96c8b9d55ef81e5662e_2_690x192.png\" alt=\"image\" data-base62-sha1=\"hQ4ZGoEbNyaKoAMxEGc1d0Ksby6\" width=\"690\" height=\"192\" srcset=\"https://forum.duniter.org/uploads/default/optimized/2X/7/7d081473f9398e237425c96c8b9d55ef81e5662e_2_690x192.png, https://forum.duniter.org/uploads/default/original/2X/7/7d081473f9398e237425c96c8b9d55ef81e5662e.png 1.5x, https://forum.duniter.org/uploads/default/original/2X/7/7d081473f9398e237425c96c8b9d55ef81e5662e.png 2x\" data-dominant-color=\"F2F6F8\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">819×229 36.5 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p><p>Other small improvements on this page:</p><ul><li>Refreshing the list no longer causes flickering of existing operations. Only new operations are animated;</li><li>loading older operations (at the bottom of the page) is now done directly by scrolling down. No need to click on “Show More” or “Show All”! Beyond 6 months of history, these buttons appear to limit the number of network requests.<br><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://forum.duniter.org/uploads/default/original/2X/8/8617ad8aa899debbc16bd92f38f1eefe68ed4699.png\" data-download-href=\"https://forum.duniter.org/uploads/default/8617ad8aa899debbc16bd92f38f1eefe68ed4699\" title=\"image\"><img src=\"https://forum.duniter.org/uploads/default/optimized/2X/8/8617ad8aa899debbc16bd92f38f1eefe68ed4699_2_690x211.png\" alt=\"image\" data-base62-sha1=\"j8eI3VQg2QseXemuowxFVl8qFlf\" width=\"690\" height=\"211\" srcset=\"https://forum.duniter.org/uploads/default/optimized/2X/8/8617ad8aa899debbc16bd92f38f1eefe68ed4699_2_690x211.png, https://forum.duniter.org/uploads/default/optimized/2X/8/8617ad8aa899debbc16bd92f38f1eefe68ed4699_2_1035x316.png 1.5x, https://forum.duniter.org/uploads/default/original/2X/8/8617ad8aa899debbc16bd92f38f1eefe68ed4699.png 2x\" data-dominant-color=\"F7F9FA\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">1094×335 36.1 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></li></ul><h3><a name=\"networks-in-expert-mode-4\" class=\"anchor\" href=\"#networks-in-expert-mode-4\"></a>Networks (in expert mode)</h3><p>The network view now allows you to see the status of the waiting queues (or pools) containing pending documents (transactions and membership requests).</p><blockquote><p>Only if you have activated “expert mode” in the settings,<br>and for nodes that have activated the BMA API</p></blockquote><p><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://forum.duniter.org/uploads/default/original/2X/f/f475de5c8c5f2e8efa21e33a387c3262a33eded5.png\" data-download-href=\"https://forum.duniter.org/uploads/default/f475de5c8c5f2e8efa21e33a387c3262a33eded5\" title=\"image\"><img src=\"https://forum.duniter.org/uploads/default/optimized/2X/f/f475de5c8c5f2e8efa21e33a387c3262a33eded5_2_690x258.png\" alt=\"image\" data-base62-sha1=\"ySB2aVf3V1kcQ5aWwasCVNCX9kN\" width=\"690\" height=\"258\" srcset=\"https://forum.duniter.org/uploads/default/optimized/2X/f/f475de5c8c5f2e8efa21e33a387c3262a33eded5_2_690x258.png, https://forum.duniter.org/uploads/default/original/2X/f/f475de5c8c5f2e8efa21e33a387c3262a33eded5.png 1.5x, https://forum.duniter.org/uploads/default/original/2X/f/f475de5c8c5f2e8efa21e33a387c3262a33eded5.png 2x\" data-dominant-color=\"F3F7F4\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">781×293 36.4 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p><p>Another small novelty: you can now see if a node (BMA) properly archives the history of transactions. The symbol <strong><img src=\"https://forum.duniter.org/images/emoji/twitter/credit_card.png?v=12\" title=\":credit_card:\" class=\"emoji\" alt=\":credit_card:\" loading=\"lazy\" width=\"20\" height=\"20\"> <code>TX</code></strong> now appears in the <code>API</code> column.</p><blockquote><p>Only visible in expert mode, by <strong>expanding the display</strong> of rows</p></blockquote><p><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://forum.duniter.org/uploads/default/original/2X/f/f6c5abe0063f927df3b6a1814f3265d611c4ac4c.png\" data-download-href=\"https://forum.duniter.org/uploads/default/f6c5abe0063f927df3b6a1814f3265d611c4ac4c\" title=\"image\"><img src=\"https://forum.duniter.org/uploads/default/optimized/2X/f/f6c5abe0063f927df3b6a1814f3265d611c4ac4c_2_690x40.png\" alt=\"image\" data-base62-sha1=\"zd2XW5qedxuZ7gjgSiRiYV6K2D2\" width=\"690\" height=\"40\" srcset=\"https://forum.duniter.org/uploads/default/optimized/2X/f/f6c5abe0063f927df3b6a1814f3265d611c4ac4c_2_690x40.png, https://forum.duniter.org/uploads/default/original/2X/f/f6c5abe0063f927df3b6a1814f3265d611c4ac4c.png 1.5x, https://forum.duniter.org/uploads/default/original/2X/f/f6c5abe0063f927df3b6a1814f3265d611c4ac4c.png 2x\" data-dominant-color=\"EFF3F1\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">787×46 8.14 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p><h3><a name=\"other-fixes-5\" class=\"anchor\" href=\"#other-fixes-5\"></a>Other Fixes</h3><ul><li>Android / iOS: file downloading works! For the revocation file in particular, but also for the list of operations, the saving of identifiers, etc.<blockquote><p>You will find the downloaded file in the “Downloads” directory (on Android) or “Documents” (on iOS);</p></blockquote></li><li>My Operations: the list of UDs is now correctly displayed (without going through the Duniter nodes to bypass a limitation, but through the Cesium+ pod if activated);</li><li>Notifications: the number of messages or notifications is now correct when you log in for the first time on an account.</li></ul><br/><br/>(...)"
}
]
}
{
"version": "https://jsonfeed.org/version/1",
"title": "News",
"user_comment": "Ce fichier est nécessaire pour les versions avant la 1.7.7",
"feed_url": "https://raw.githubusercontent.com/duniter/cesium/master/doc/feed/feed-es.json",
"home_page_url": "https://forum.duniter.org/t/nueva-version-de-cesium-es/11459/3",
"author": {
"name": "Benoit Lavenier",
"url": "@BenoitLavenier",
"avatar": "https://forum.duniter.org//user_avatar/forum.duniter.org/kimamila/48/185_2.png"
},
"items": [
{
"title": "Nueva versión de Cesium",
"author": {
"name": "Benoit Lavenier",
"url": "@BenoitLavenier",
"avatar": "https://forum.duniter.org//user_avatar/forum.duniter.org/kimamila/48/185_2.png"
},
"date_published": "2023-08-14T19:30:00+02:00",
"id": "https://forum.duniter.org/t/nueva-version-de-cesium-es/11459",
"url": "https://forum.duniter.org/t/nueva-version-de-cesium-es/11459",
"content_html": "<p>¡Una nueva versión de Cesium <a href=\"https://cesium.app\">está disponible</a>!</p><blockquote><p>El sitio cesium.app está siendo actualizado... Lo mismo para Play Store, App Store, etc.\n¡Tengan paciencia!</p></blockquote><p>En los últimos meses, muchos de ustedes han encontrado múltiples dificultades: transacciones que desaparecen o se pierden completamente, error de “tiempo de espera excedido”, nodo desincronizado, etc.</p><p>Somos muy conscientes de estos problemas. Están relacionados con varios factores:</p><ul><li>por un lado, a la nueva versión 1.7 de Cesium, que introduce la selección automática del nodo Duniter, mediante sorteo entre los nodos sincronizados;</li><li>por otro lado, al estado de la red de nodos Duniter, algunos de los cuales se han revelado mal configurados para funcionar con Cesium, o utilizando versiones inestables de Duniter.</li></ul><h2><a name=\"novedades-1\" class=\"anchor\" href=\"#novedades-1\"></a>Novedades</h2><h3><a name=\"al-inicio-2\" class=\"anchor\" href=\"#al-inicio-2\"></a>Al inicio</h3><p>La selección de nodos al inicio ha sido revisada, para seleccionar solo aquellos compatibles con las funcionalidades de Cesium. Esto debería corregir los problemas explicados anteriormente.</p><h3><a name=\"mis-operaciones-3\" class=\"anchor\" href=\"#mis-operaciones-3\"></a>Mis operaciones</h3><p>En “Mis operaciones”, los comentarios largos son ahora más visibles, ya sea en un teléfono:<br><img src=\"https://forum.duniter.org/uploads/default/original/2X/4/4fa5d83286441e6689d93b6d636a46771fcb543d.png\" alt=\"image\" data-base62-sha1=\"bmB2vlwdnBe1zK86r7RGiQpJesl\" width=\"594\" height=\"357\"></p><p>…o en un navegador web:</p><p><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://forum.duniter.org/uploads/default/original/2X/7/7d081473f9398e237425c96c8b9d55ef81e5662e.png\" data-download-href=\"https://forum.duniter.org/uploads/default/7d081473f9398e237425c96c8b9d55ef81e5662e\" title=\"image\"><img src=\"https://forum.duniter.org/uploads/default/optimized/2X/7/7d081473f9398e237425c96c8b9d55ef81e5662e_2_690x192.png\" alt=\"image\" data-base62-sha1=\"hQ4ZGoEbNyaKoAMxEGc1d0Ksby6\" width=\"690\" height=\"192\" srcset=\"https://forum.duniter.org/uploads/default/optimized/2X/7/7d081473f9398e237425c96c8b9d55ef81e5662e_2_690x192.png, https://forum.duniter.org/uploads/default/original/2X/7/7d081473f9398e237425c96c8b9d55ef81e5662e.png 1.5x, https://forum.duniter.org/uploads/default/original/2X/7/7d081473f9398e237425c96c8b9d55ef81e5662e.png 2x\" data-dominant-color=\"F2F6F8\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">819×229 36.5 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p><p>Otras pequeñas mejoras en esta página:</p><ul><li>El hecho de refrescar la lista ya no provoca el parpadeo de las operaciones existentes. Solo las nuevas operaciones están animadas;</li><li>la carga de las operaciones más antiguas (en la parte inferior de la página) se hace directamente desplazándose hacia abajo. ¡No es necesario hacer clic en “Mostrar más” o “Mostrar todo”! Más allá de 6 meses de historial, estos botones aparecen para limitar el número de solicitudes a la red.<br><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://forum.duniter.org/uploads/default/original/2X/8/8617ad8aa899debbc16bd92f38f1eefe68ed4699.png\" data-download-href=\"https://forum.duniter.org/uploads/default/8617ad8aa899debbc16bd92f38f1eefe68ed4699\" title=\"image\"><img src=\"https://forum.duniter.org/uploads/default/optimized/2X/8/8617ad8aa899debbc16bd92f38f1eefe68ed4699_2_690x211.png\" alt=\"image\" data-base62-sha1=\"j8eI3VQg2QseXemuowxFVl8qFlf\" width=\"690\" height=\"211\" srcset=\"https://forum.duniter.org/uploads/default/optimized/2X/8/8617ad8aa899debbc16bd92f38f1eefe68ed4699_2_690x211.png, https://forum.duniter.org/uploads/default/optimized/2X/8/8617ad8aa899debbc16bd92f38f1eefe68ed4699_2_1035x316.png 1.5x, https://forum.duniter.org/uploads/default/original/2X/8/8617ad8aa899debbc16bd92f38f1eefe68ed4699.png 2x\" data-dominant-color=\"F7F9FA\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">1094×335 36.1 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></li></ul><h3><a name=\"redes-en-modo-experto-4\" class=\"anchor\" href=\"#redes-en-modo-experto-4\"></a>Redes (en modo experto)</h3><p>La vista de red permite ahora ver el estado de las colas de espera (o piscinas) que contienen los documentos pendientes (transacciones y solicitudes de membresía).</p><blockquote><p>Solo si ha activado el “modo experto” en la configuración,<br>y para los nodos que han activado la API BMA</p></blockquote><p><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://forum.duniter.org/uploads/default/original/2X/f/f475de5c8c5f2e8efa21e33a387c3262a33eded5.png\" data-download-href=\"https://forum.duniter.org/uploads/default/f475de5c8c5f2e8efa21e33a387c3262a33eded5\" title=\"image\"><img src=\"https://forum.duniter.org/uploads/default/optimized/2X/f/f475de5c8c5f2e8efa21e33a387c3262a33eded5_2_690x258.png\" alt=\"image\" data-base62-sha1=\"ySB2aVf3V1kcQ5aWwasCVNCX9kN\" width=\"690\" height=\"258\" srcset=\"https://forum.duniter.org/uploads/default/optimized/2X/f/f475de5c8c5f2e8efa21e33a387c3262a33eded5_2_690x258.png, https://forum.duniter.org/uploads/default/original/2X/f/f475de5c8c5f2e8efa21e33a387c3262a33eded5.png 1.5x, https://forum.duniter.org/uploads/default/original/2X/f/f475de5c8c5f2e8efa21e33a387c3262a33eded5.png 2x\" data-dominant-color=\"F3F7F4\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">781×293 36.4 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p><p>Otra pequeña novedad: ahora puede ver si un nodo (BMA) archiva correctamente el historial de transacciones. El símbolo <strong><img src=\"https://forum.duniter.org/images/emoji/twitter/credit_card.png?v=12\" title=\":credit_card:\" class=\"emoji\" alt=\":credit_card:\" loading=\"lazy\" width=\"20\" height=\"20\"> <code>TX</code></strong> aparece ahora en la columna <code>API</code>.</p><blockquote><p>Solo visible en modo experto, al <strong>expandir la visualización</strong> de las filas</p></blockquote><p><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://forum.duniter.org/uploads/default/original/2X/f/f6c5abe0063f927df3b6a1814f3265d611c4ac4c.png\" data-download-href=\"https://forum.duniter.org/uploads/default/f6c5abe0063f927df3b6a1814f3265d611c4ac4c\" title=\"image\"><img src=\"https://forum.duniter.org/uploads/default/optimized/2X/f/f6c5abe0063f927df3b6a1814f3265d611c4ac4c_2_690x40.png\" alt=\"image\" data-base62-sha1=\"zd2XW5qedxuZ7gjgSiRiYV6K2D2\" width=\"690\" height=\"40\" srcset=\"https://forum.duniter.org/uploads/default/optimized/2X/f/f6c5abe0063f927df3b6a1814f3265d611c4ac4c_2_690x40.png, https://forum.duniter.org/uploads/default/original/2X/f/f6c5abe0063f927df3b6a1814f3265d611c4ac4c.png 1.5x, https://forum.duniter.org/uploads/default/original/2X/f/f6c5abe0063f927df3b6a1814f3265d611c4ac4c.png 2x\" data-dominant-color=\"EFF3F1\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">787×46 8.14 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p><h3><a name=\"otras-correcciones-5\" class=\"anchor\" href=\"#otras-correcciones-5\"></a>Otras correcciones</h3><ul><li>Android / iOS: ¡la descarga de archivos funciona! Para el archivo de revocación en particular, pero también para la lista de operaciones, la salvaguardia de identificadores, etc.<blockquote><p>Encontrarás el archivo descargado en el directorio “Descargas” (en Android) o “Documentos” (en iOS);</p></blockquote></li><li>Mis operaciones: la lista de UDs se muestra ahora correctamente (sin pasar por los nodos Duniter para eludir una limitación, pero a través del pod Cesium+ si está activado);</li><li>Notificaciones: el número de mensajes o notificaciones es ahora correcto cuando inicia sesión por primera vez en una cuenta.</li></ul><br/><br/>(...)"
}
]
}
{
"version": "https://jsonfeed.org/version/1",
"title": "Actualités",
"user_comment": "Ce fichier est nécessaire pour les versions avant la 1.7.7",
"feed_url": "https://raw.githubusercontent.com/duniter/cesium/master/doc/feed/feed-ff.json",
"home_page_url": "https://forum.duniter.org/t/nouvelle-version-de-cesium-fr/11458/2",
"author": {
"name": "Benoit Lavenier",
"url": "@BenoitLavenier",
"avatar": "https://forum.duniter.org//user_avatar/forum.duniter.org/kimamila/48/185_2.png"
},
"items": [
{
"title": "Nouvelle version de Cesium",
"author": {
"name": "Benoit Lavenier",
"url": "@BenoitLavenier",
"avatar": "https://forum.duniter.org//user_avatar/forum.duniter.org/kimamila/48/185_2.png"
},
"date_published": "2023-08-14T19:30:00+02:00",
"id": "https://forum.duniter.org/t/nouvelle-version-de-cesium/11458",
"url": "https://forum.duniter.org/t/nouvelle-version-de-cesium/11458",
"content_html": "<p>Une nouvelle version de Cesium <a href=\"https://cesium.app\">est disponible</a> !</p><blockquote><p>La mise jour du site et des Play Store est en cours.\nSoyez patient !</p></blockquote><p>Ces derniers mois, beaucoup d’entre vous ont rencontré des difficultés multiples : transactions qui disparaissent ou sont carrément perdues, erreur “délai d’attente dépassé”, nœud désynchronisé, etc.</p><p>Nous sommes bien conscients de ces problèmes. Ils sont liés à plusieurs facteurs :</p><ul><li>d’une part, à la nouvelle version 1.7 de Cesium, qui introduit la sélection automatique du nœud Duniter, par tirage au sort parmi les nœuds synchronisés ;</li><li>d’autre part, à l’état du réseau des nœuds Duniter, dont certains nœuds se sont révélés mal configurés pour fonctionner avec Cesium, ou utilisant des versions de Duniter non stables.</li></ul><h2><a name=\"nouveauts-1\" class=\"anchor\" href=\"#nouveauts-1\"></a>Nouveautés</h2><h3><a name=\"au-dmarrage-2\" class=\"anchor\" href=\"#au-dmarrage-2\"></a>Au démarrage</h3><p>La sélection des nœuds au démarrage a été revue, pour ne sélectionner que ceux compatibles avec les fonctionnalités de Cesium. Ceci devrait corriger les problèmes précédemment expliqués.</p><h3><a name=\"mes-oprations-3\" class=\"anchor\" href=\"#mes-oprations-3\"></a>Mes opérations</h3><p>Dans “Mes opérations”, les longs commentaires sont mieux visibles, que ce soit sur téléphone :<br><img src=\"https://forum.duniter.org/uploads/default/original/2X/4/4fa5d83286441e6689d93b6d636a46771fcb543d.png\" alt=\"image\" data-base62-sha1=\"bmB2vlwdnBe1zK86r7RGiQpJesl\" width=\"594\" height=\"357\"></p><p>…ou dans un navigateur web :</p><p><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://forum.duniter.org/uploads/default/original/2X/7/7d081473f9398e237425c96c8b9d55ef81e5662e.png\" data-download-href=\"https://forum.duniter.org/uploads/default/7d081473f9398e237425c96c8b9d55ef81e5662e\" title=\"image\"><img src=\"https://forum.duniter.org/uploads/default/optimized/2X/7/7d081473f9398e237425c96c8b9d55ef81e5662e_2_690x192.png\" alt=\"image\" data-base62-sha1=\"hQ4ZGoEbNyaKoAMxEGc1d0Ksby6\" width=\"690\" height=\"192\" srcset=\"https://forum.duniter.org/uploads/default/optimized/2X/7/7d081473f9398e237425c96c8b9d55ef81e5662e_2_690x192.png, https://forum.duniter.org/uploads/default/original/2X/7/7d081473f9398e237425c96c8b9d55ef81e5662e.png 1.5x, https://forum.duniter.org/uploads/default/original/2X/7/7d081473f9398e237425c96c8b9d55ef81e5662e.png 2x\" data-dominant-color=\"F2F6F8\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">819×229 36.5 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p><p>Autres petites améliorations sur cette page :</p><ul><li>Le fait de rafraîchir la liste ne provoque plus de clignotement des opérations déjà existantes. Seules les nouvelles opérations sont animées ;</li><li>le chargement des opérations plus anciennes (en bas de page) se fait directement par défilement vers le bas. Plus besoin de cliquer sur “Afficher plus” ou “Afficher tout” ! Au-delà de 6 mois d’historique, ces boutons apparaissent, pour limiter le nombre de requêtes au réseau.<br><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://forum.duniter.org/uploads/default/original/2X/8/8617ad8aa899debbc16bd92f38f1eefe68ed4699.png\" data-download-href=\"https://forum.duniter.org/uploads/default/8617ad8aa899debbc16bd92f38f1eefe68ed4699\" title=\"image\"><img src=\"https://forum.duniter.org/uploads/default/optimized/2X/8/8617ad8aa899debbc16bd92f38f1eefe68ed4699_2_690x211.png\" alt=\"image\" data-base62-sha1=\"j8eI3VQg2QseXemuowxFVl8qFlf\" width=\"690\" height=\"211\" srcset=\"https://forum.duniter.org/uploads/default/optimized/2X/8/8617ad8aa899debbc16bd92f38f1eefe68ed4699_2_690x211.png, https://forum.duniter.org/uploads/default/optimized/2X/8/8617ad8aa899debbc16bd92f38f1eefe68ed4699_2_1035x316.png 1.5x, https://forum.duniter.org/uploads/default/original/2X/8/8617ad8aa899debbc16bd92f38f1eefe68ed4699.png 2x\" data-dominant-color=\"F7F9FA\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">1094×335 36.1 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></li></ul><h3><a name=\"rseaux-en-mode-expert-4\" class=\"anchor\" href=\"#rseaux-en-mode-expert-4\"></a>Réseaux (en mode expert)</h3><p>La vue réseau permet maintenant de voir l’état des files d’attente (ou piscines) contenant les documents en attente (transactions et demandes d’adhésion).</p><blockquote><p>Uniquement si vous avez activé le “mode expert” dans les paramètres,<br>et pour les nœuds ayant activé l’API BMA</p></blockquote><p><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://forum.duniter.org/uploads/default/original/2X/f/f475de5c8c5f2e8efa21e33a387c3262a33eded5.png\" data-download-href=\"https://forum.duniter.org/uploads/default/f475de5c8c5f2e8efa21e33a387c3262a33eded5\" title=\"image\"><img src=\"https://forum.duniter.org/uploads/default/optimized/2X/f/f475de5c8c5f2e8efa21e33a387c3262a33eded5_2_690x258.png\" alt=\"image\" data-base62-sha1=\"ySB2aVf3V1kcQ5aWwasCVNCX9kN\" width=\"690\" height=\"258\" srcset=\"https://forum.duniter.org/uploads/default/optimized/2X/f/f475de5c8c5f2e8efa21e33a387c3262a33eded5_2_690x258.png, https://forum.duniter.org/uploads/default/original/2X/f/f475de5c8c5f2e8efa21e33a387c3262a33eded5.png 1.5x, https://forum.duniter.org/uploads/default/original/2X/f/f475de5c8c5f2e8efa21e33a387c3262a33eded5.png 2x\" data-dominant-color=\"F3F7F4\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">781×293 36.4 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p><p>Autre petite nouveauté : vous pouvez voir si un nœud (BMA) archive bien l’historique des transactions. Le symbole <strong><img src=\"https://forum.duniter.org/images/emoji/twitter/credit_card.png?v=12\" title=\":credit_card:\" class=\"emoji\" alt=\":credit_card:\" loading=\"lazy\" width=\"20\" height=\"20\"> <code>TX</code></strong> s’affiche maintenant, dans la colonne <code>API</code>.</p><blockquote><p>Visible uniquement en mode expert, en <strong>décompactant l’affichage</strong> des lignes</p></blockquote><p><div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://forum.duniter.org/uploads/default/original/2X/f/f6c5abe0063f927df3b6a1814f3265d611c4ac4c.png\" data-download-href=\"https://forum.duniter.org/uploads/default/f6c5abe0063f927df3b6a1814f3265d611c4ac4c\" title=\"image\"><img src=\"https://forum.duniter.org/uploads/default/optimized/2X/f/f6c5abe0063f927df3b6a1814f3265d611c4ac4c_2_690x40.png\" alt=\"image\" data-base62-sha1=\"zd2XW5qedxuZ7gjgSiRiYV6K2D2\" width=\"690\" height=\"40\" srcset=\"https://forum.duniter.org/uploads/default/optimized/2X/f/f6c5abe0063f927df3b6a1814f3265d611c4ac4c_2_690x40.png, https://forum.duniter.org/uploads/default/original/2X/f/f6c5abe0063f927df3b6a1814f3265d611c4ac4c.png 1.5x, https://forum.duniter.org/uploads/default/original/2X/f/f6c5abe0063f927df3b6a1814f3265d611c4ac4c.png 2x\" data-dominant-color=\"EFF3F1\"><div class=\"meta\"><svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use href=\"#far-image\"></use></svg><span class=\"filename\">image</span><span class=\"informations\">787×46 8.14 KB</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use href=\"#discourse-expand\"></use></svg></div></a></div></p><h3><a name=\"autres-correctifs-5\" class=\"anchor\" href=\"#autres-correctifs-5\"></a>Autres correctifs</h3><ul><li>Android / iOS : le téléchargement de fichier fonctionne ! Pour le fichier de révocation notamment, mais aussi pour la liste des opérations, la sauvegarde des identifiants, etc.<blockquote><p>Vous trouverez le fichier téléchargé dans le répertoire “Téléchargements” (sous Android) ou “Documents” (sous iOS) ;</p></blockquote></li><li>Mes opérations : la liste des DU s’affiche maintenant correctement (sans passer par les nœuds Duniter pour contourner une limitation, mais par le pod Cesium+ s’il est activé) ;</li><li>Notifications : le nombre de messages ou de notifications est maintenant correct lorsque vous vous connectez pour la première fois sur un compte.</li></ul><br/> (...)"
},
{
"title": "Actu générale : La Ǧ1 bouge !",
"author": {
"name": "Collectif MaJ V2",
"url": "@LeForum",
"avatar": "https://forum.monnaie-libre.fr/user_avatar/forum.monnaie-libre.fr/leforum/48/8260_2.png"
},
"date_published": "2025-02-25T12:09:00+02:00",
"id": "https://forum.monnaie-libre.fr/t/actu-generale-la-1-bouge/31318",
"url": "https://forum.monnaie-libre.fr/t/actu-generale-la-1-bouge/31318",
"content_html": "<p>La Ǧ1 bouge, plusieurs chantiers importants sont en cours :</p>\n<ul>\n<li>Son écosystème technique qui approche de sa <a href=\"https://monnaie-libre.fr/maj-v2/\">mise à jour (V2) </a> sur laquelle nous travaillons depuis plusieurs années.</li>\n<li>Organisation et prises des décisions (gouvernance) dont un <a href=\"https://forum.monnaie-libre.fr/t/proposition-licence-g1-v0-3-0/31234\">vote pour faire évoluer la licence Ǧ1</a> auquel vous pouvez prendre part avant le 13 mars.</li>\n</ul>\n<p><strong>Pour la dernière ligne droite, la Ǧ1 a besoin de vous :</strong></p>\n<ul>\n<li>Pour accélérer les développements restants par un <a href=\"https://www.helloasso.com/associations/axiom-team/collectes/finalisation-de-cesium-v2-et-duniter-v2\">financement participatif</a> pour rémunérer quelques mois un développeur afin de finaliser Cesium².</li>\n<li>Pour tester les logiciels et nous dire ce qui ne marche pas sur votre appareil (ordi, tablette ou smartphone).</li>\n</ul>\n<p>Pour être tenu au courant d’un ou plusieurs des sujets évoqués, <a href=\"https://s.42l.fr/form-g1v2\">laissez-nous votre email</a>.</p>"
}
]
}
File added
# Connexion automatique, par fichier de trousseau
> Possible uniquement sur la version de bureau (desktop) de Cesium
Pour se connecter dès la lancement, à partir d'une fichier de trousseau (ou fichier de clefs), suivez les étapes suivantes :
1. Générer un fichier de trousseau :
* Allez dans "Mon compte > Options > Compte et sécurité";
* Choisissez "Générer mon fichier de trousseau";
* Puis "format "PubSec".
2. Placer le fichier à l'emplacement suivant `<home>/.config/cesium/keyring.yml`
3. Lancer Cesium : vous devriez être directement connecté sur ce compte.
...@@ -90,16 +90,16 @@ Installer Node.js est devenu extrêmement simple pour ces OS : un outil vous per ...@@ -90,16 +90,16 @@ Installer Node.js est devenu extrêmement simple pour ces OS : un outil vous per
Vous pouvez installer nvm avec la commande suivante : Vous pouvez installer nvm avec la commande suivante :
```bash ```bash
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.6/install.sh | bash curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.39.3/install.sh | bash
``` ```
Fermez puis rouvrez votre terminal, comme indiqué. Puis, installez Node.js (choisissez la version 5) : Fermez puis rouvrez votre terminal, comme indiqué. Puis, installez Node.js (choisissez la version 12) :
```bash ```bash
nvm install 5 nvm install 12
``` ```
Vous aurez alors la dernière version de la branche 5.x de Node.js prête à l'emploi. Vous aurez alors la dernière version de la branche 12.x de Node.js prête à l'emploi.
##### Outils de compilation ##### Outils de compilation
...@@ -110,13 +110,13 @@ sudo apt-get install build-essential ...@@ -110,13 +110,13 @@ sudo apt-get install build-essential
#### Sous Windows #### Sous Windows
Pour Windows, téléchargez la version 5 disponible sur le site officiel de Node.js : https://nodejs.org Pour Windows, téléchargez la version 12 disponible sur le site officiel de Node.js : https://nodejs.org
Puis lancez l'installeur ainsi téléchargé. Puis lancez l'installeur ainsi téléchargé.
### Installer les modules Node.js de Cesium ### Installer les modules Node.js de Cesium
Cesium repose sur des librairies tierce pour fonctionner appelées *dépendances*, comme par exemple des librairies de compilation (gulp, bower, ionic). Cesium repose sur des librairies tierce pour fonctionner appelées *dépendances*, comme par exemple des librairies de compilation (gulp, ionic, angularJS).
Le fait d'avoir cloné les sources n'est en réalité pas suffisant pour lancer l'application. Nous devons obtenir le code des dépendances pour obtenir ainsi l'ensemble du code exécutable du programme. Pour ce faire, retournez dans la console Git et déplacez-vous dans le répertoire cloné : Le fait d'avoir cloné les sources n'est en réalité pas suffisant pour lancer l'application. Nous devons obtenir le code des dépendances pour obtenir ainsi l'ensemble du code exécutable du programme. Pour ce faire, retournez dans la console Git et déplacez-vous dans le répertoire cloné :
...@@ -127,13 +127,13 @@ cd cesium ...@@ -127,13 +127,13 @@ cd cesium
Puis, lancez le téléchargement et l'installation des modules Cesium à l'aide de la commande : Puis, lancez le téléchargement et l'installation des modules Cesium à l'aide de la commande :
```bash ```bash
npm install -g gulp bower@1.8.0 cordova@6.5.0 ionic@1.7.16 npm install -g yarn gulp cordova@10.0.0 @ionic/cli web-ext
``` ```
Puis pour les dépendances non globales : Puis pour les dépendances non globales :
```bash ```bash
npm install yarn
``` ```
> Le processus d'installation peut prendre plusieurs minutes. En effet, il faut télécharger toutes les dépendances de Cesium et même en compiler certaines. > Le processus d'installation peut prendre plusieurs minutes. En effet, il faut télécharger toutes les dépendances de Cesium et même en compiler certaines.
...@@ -141,23 +141,11 @@ npm install ...@@ -141,23 +141,11 @@ npm install
Si tout s'est bien passé, vous devriez obtenir une fin d'arborescence dans la console, et l'invité de commande devrait vous avoir rendu la main : Si tout s'est bien passé, vous devriez obtenir une fin d'arborescence dans la console, et l'invité de commande devrait vous avoir rendu la main :
```bash ```bash
├── bower@1.7.9 yarn install v1.15.2
├─┬ gulp@3.9.1 [1/4] Resolving packages...
│ ├── archy@1.0.0 (...)
│ ├─┬ chalk@1.1.3 $ node -e "try { require('fs').symlinkSync(require('path').resolve('node_modules/@bower_components'), 'www/lib', 'junction') } catch (e) { }"
(...) Done in 0.82s.
│ ├─┬ through2@0.5.1
│ │ ├── readable-stream@1.0.34
│ │ └── xtend@3.0.0
│ └─┬ vinyl@0.2.3
│ └── clone-stats@0.0.1
└── shelljs@0.3.0
npm WARN cesium@0.0.1 No repository field.
npm WARN cesium@0.0.1 No license field.
user1@~$
``` ```
> Il se peut que vous obteniez des messages `npm WARN [...]`. Rien de grave : comme le nom du message l'indique, il s'agit simplement d'un avertissement non bloquant pour la suite des événements. > Il se peut que vous obteniez des messages `npm WARN [...]`. Rien de grave : comme le nom du message l'indique, il s'agit simplement d'un avertissement non bloquant pour la suite des événements.
......
...@@ -130,14 +130,23 @@ __Objectif :__ Devenir contributeur officiel, en publiant votre code ! ...@@ -130,14 +130,23 @@ __Objectif :__ Devenir contributeur officiel, en publiant votre code !
### Faire un `pull request` ### Faire un `pull request`
La modification que vous venez de faire correspond en réalité au [ticket gihub #209](https://github.com/duniter/cesium/issues/209). Si vous n'avez jamais utilisé git sur votre machine courante, il va d'abord falloir que vous définissiez
1. votre adresse e-mail : `git config --global user.email "votre@email.xyz"`
2. vos nom et prénom : `git config --global user.name "Prénom NOM"`
La modification que vous venez de faire correspond en réalité au [ticket #209](https://git.duniter.org/clients/cesium-grp/cesium/issues/209).
Pour lui adjoindre votre modification, et ainsi **devenir officiellement contributeur** de Cesium : Pour lui adjoindre votre modification, et ainsi **devenir officiellement contributeur** de Cesium :
* Faites un `git commit` pour valider votre code; * Tapez la commande `git add` suivie des noms des fichiers que vous avez modifiés ou, plus simplement `git add *` pour ajouter au commit tous les fichiers modifiés.
* Puis un `git push` pour envoyer sur votre repo GitHub. * Puis faites un `git commit` pour valider votre code;
* Dans github, connectez sur votre compte; * Enfin, faites un `git push` pour envoyer sur votre repo GitHub.
* Ouvrez votre dépot `Cesium` * Dans GitLab, connectez-vous sur votre compte;
* Cliquer sur `New pull request`, en indiquant dans le titre la référence au ticket : `#209` * Ouvrez votre dépot `Cesium` via le menu "Projets" > "Your projects" que vous trouverez tout en haut à gauche, dans la barre de navigation.
* Dans le menu de gauche, rendez-vous dans "Merge requests", et cliquez sur le bouton "New merge request"
* La plupart des champs étant déjà préremplis, il ne vous reste plus qu'à sélectionner la branche source (si vous n'avez pas changé de branche via la ligne de commande git, c'est "master")
* Cliquez sur `Compare branches and continue`
* Dans le titre la référence au ticket : `#209`
Votre contribution est maintenant visible par les développeurs de Cesium, qui pourront plus facilement intégrer votre code. Votre contribution est maintenant visible par les développeurs de Cesium, qui pourront plus facilement intégrer votre code.
......
...@@ -108,17 +108,30 @@ sudo apt-get install lib32stdc++6 lib32z1 ...@@ -108,17 +108,30 @@ sudo apt-get install lib32stdc++6 lib32z1
### Configuration du projet ### Configuration du projet
Dans la ligne de commande (utilisée précédemment pour lancer `ionic serve`) lancer l'instalaltion du projet Cesium pour android : Placez-vous dans le dossier dans lequel vous avez installé cesium via la commande `cd` suivie du chemin vers le répertoire idoine.
Vérifiez que vous utilisez bien la version de NodeJs dont Cesium a besoin à l'aide de la commande
```
node --version
```
Si vous n'êtes pas sur une v6, utilisez la commande
```
nvm use 12
```
Vous pouvez maintenant lancer l'instalaltion du projet Cesium pour Android :
``` ```
ionic state restore ionic cordova prepare
``` ```
Normalement, cette commande devrait initialiser (entre autre) un répertoire `platforms/android`. Normalement, cette commande devrait initialiser (entre autre) un répertoire `platforms/android`.
> Pour rappel: vérifier que votre ligne de commande est bien configurée : > Cette commande peut prendre un moment à se terminer.
> - Vous devez vous placer dans le répertoire de l'application : `cd cesium`
> - et fonctionner sous nodeJs v5 : `nvm use 5` (vérifier à l'aide de `node --version`)
Lancez maintenant la compilation pour Android : Lancez maintenant la compilation pour Android :
...@@ -136,15 +149,15 @@ Sélectionnez "Open an existing Android Studio project" et indiquez le dossier v ...@@ -136,15 +149,15 @@ Sélectionnez "Open an existing Android Studio project" et indiquez le dossier v
Pour pouvoir lancer un émulateur, on va devoir en créer un. Pour pouvoir lancer un émulateur, on va devoir en créer un.
Pour cela cliqué sur l'icone suivante : Pour cela, allez dans `Tools` > `AVD Manager`, ou cliquez sur l'icone suivante :
<img src="./img/46e959d1e616e34972a41f4d120a1d4f5beb0955.png" width="690" height="42"> <img src="./img/46e959d1e616e34972a41f4d120a1d4f5beb0955.png" width="690" height="42">
Une fenêtre va s'ouvrir et vous proposer de créer un "Virtual Device" suivez le logiciel. Une fenêtre va s'ouvrir et vous proposer de créer un "Virtual Device" suivez le logiciel.
Si vous avez un téléphone Android vous pouvez le mettre en mode développeur et le brancher si vous souhaitez vois l'application sur votre téléphone. Si vous avez un téléphone Android vous pouvez le mettre en mode développeur et le brancher si vous souhaitez voir l'application sur votre téléphone.
Puis une fois l'émulateur de créer vous pouvez le bouton "Play" (<img src="./img/70b2ce88a5e7aa5754f6a771cf5efed3c639a27b.png" width="46" height="44">) pour lancer l'application. Puis, une fois l'émulateur créé, vous pouvez cliquer le bouton "Play" (<img src="./img/70b2ce88a5e7aa5754f6a771cf5efed3c639a27b.png" width="46" height="44">) pour lancer l'application.
Vous pouvez aussi utiliser l'icone (<img src="./img/b7c419b33a43f6a43c5b756074ee0c199072f7d1.png" width="40" height="44">) pour lancer l'application en mode debug. Vous pouvez aussi utiliser l'icone (<img src="./img/b7c419b33a43f6a43c5b756074ee0c199072f7d1.png" width="40" height="44">) pour lancer l'application en mode debug.
Android Studio vous demandera sur quel appareil vous souhaitez lancer l'application, sélectionner l'émulateur ou le téléphone et laissez faire. Android Studio vous demandera sur quel appareil vous souhaitez lancer l'application, sélectionner l'émulateur ou le téléphone et laissez faire.
......