diff --git a/install.sh b/install.sh
new file mode 100755
index 0000000000000000000000000000000000000000..0f2a19b42882cc52e6fcfb7b1ce13be65b0d11e1
--- /dev/null
+++ b/install.sh
@@ -0,0 +1,95 @@
+#!/bin/bash
+
+{ # this ensures the entire script is downloaded #
+
+is_installed() {
+  type "$1" > /dev/null 2>&1
+}
+
+if [ "_$1" != "_" ]; then
+  CESIUM_DIR="$1"
+fi
+if [ -z "$CESIUM_DIR" ]; then
+  DIRNAME=`pwd`
+  CESIUM_DIR="$DIRNAME/cesium"
+fi
+
+latest_version() {
+  echo "0.2.5"
+}
+
+api_release_url() {
+  echo "https://api.github.com/repos/duniter/cesium/releases/tags/v$(latest_version)"
+}
+
+download() {
+  if is_installed "curl"; then
+    curl -qkL $*
+  elif is_installed "wget"; then
+    # Emulate curl with wget
+    ARGS=$(echo "$*" | command sed -e 's/--progress-bar /--progress=bar /' \
+                           -e 's/-L //' \
+                           -e 's/-I /--server-response /' \
+                           -e 's/-s /-q /' \
+                           -e 's/-o /-O /' \
+                           -e 's/-C - /-c /')
+    wget $ARGS
+  fi
+}
+
+install_from_github() {
+
+  local RELEASE=`curl -XGET -i $(api_release_url)`
+  local CESIUM_URL=`echo "$RELEASE" | grep -P "\"browser_download_url\": \"[^\"]+" | grep -oP "https://[a-zA-Z0-9/.-]+-web.zip"`
+  local CESIUM_ARCHIVE=$CESIUM_DIR/cesium.zip
+  if [ -d "$CESIUM_DIR" ]; then
+    if [ -f "$CESIUM_ARCHIVE" ]; then
+      echo "WARNING: Deleting existing file: $CESIUM_ARCHIVE"
+      rm $CESIUM_ARCHIVE
+    fi
+  else
+    mkdir -p "$CESIUM_DIR"
+  fi
+
+  echo "=> Downloading Cesium from $CESIUM_URL"
+  echo "                        to $CESIUM_ARCHIVE"
+  download "$CESIUM_URL" -o "$CESIUM_ARCHIVE" || {
+      echo >&2 "Failed to download '$CESIUM_URL'"
+      return 4
+    }
+  echo "=> Unarchive to $CESIUM_DIR"
+  unzip $CESIUM_ARCHIVE -d $CESIUM_DIR
+  rm $CESIUM_ARCHIVE
+
+  echo
+
+  echo "Cesium successfully installed at $CESIUM_DIR"
+}
+
+do_install() {
+
+  if ! is_installed "curl"; then
+    echo "=> curl is not available. You will likely need to install 'curl' package."
+    exit 1
+  fi
+  if ! is_installed "unzip"; then
+    echo "=> unzip is not available. You will likely need to install 'unzip' package."
+    exit 1
+  fi
+
+  install_from_github
+}
+
+#
+# Unsets the various functions defined
+# during the execution of the install script
+#
+reset() {
+  unset -f reset is_installed latest_version \
+    download install_from_github do_install
+}
+
+
+[ "_$CESIUM_ENV" = "_testing" ] || do_install $1
+
+} # this ensures the entire script is downloaded #
diff --git a/release.sh b/release.sh
index 7cde58ca8d2fab0dcacac00a1428277c21904cf6..beedca7eac5b43cccfecfbd57688c7c5f880a636 100755
--- a/release.sh
+++ b/release.sh
@@ -24,6 +24,9 @@ if [[ $2 =~ ^[0-9]+.[0-9]+.[0-9]+((a|b)[0-9]+)?$ && $3 =~ ^[0-9]+$ ]]; then
       sed -i "s/version\": \"$current/version\": \"$2/g" package.json
       sed -i "s/ version=\".*\"/ version=\"$2\"/g" config.xml
       sed -i "s/ android-versionCode=\".*\"/ android-versionCode=\"$3\"/g" config.xml
+
+      # Bump the install.sh
+      sed -i "s/echo \"v$current\"/echo \"v$2\"/g" install.sh
       ;;
     *)
       echo "No task given"
@@ -35,7 +38,7 @@ if [[ $2 =~ ^[0-9]+.[0-9]+.[0-9]+((a|b)[0-9]+)?$ && $3 =~ ^[0-9]+$ ]]; then
 
   # Commit
   git reset HEAD
-  git add package.json config.xml
+  git add package.json config.xml install.sh
   git commit -m "v$2"
   git tag "v$2"
   git push
@@ -46,13 +49,7 @@ if [[ $2 =~ ^[0-9]+.[0-9]+.[0-9]+((a|b)[0-9]+)?$ && $3 =~ ^[0-9]+$ ]]; then
   gulp build:web --release
 
   echo "**********************************"
-  echo "* Build release $2 succeed !"
-  echo "* "
-  echo "* "
-  echo "* Now please deploy files to github using:"
-  echo "* "
-  echo "* > ./github.sh pre|rel user:pwd"
-  echo "* "
+  echo "* Build release $2 sucees !"
   echo "**********************************"
 else
   echo "Wrong version format"