diff --git a/Cargo.lock b/Cargo.lock
index 8c0ca63a396dada73fd78738f86dd393ce1fa0ef..11e4923e074358799b14a01a8f966ff63a12cb7f 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -428,7 +428,7 @@ dependencies = [
 
 [[package]]
 name = "duniter-launcher"
-version = "1.9.0-alpha1"
+version = "1.8.1"
 dependencies = [
  "anyhow",
  "ctrlc",
@@ -443,7 +443,7 @@ dependencies = [
 
 [[package]]
 name = "duniteroxyde"
-version = "0.3.0"
+version = "1.8.1"
 dependencies = [
  "bincode",
  "bs58",
diff --git a/Cargo.toml b/Cargo.toml
index 5cf345d3082f7b3a11ca1cde64e73d76526077a2..e146e0790cb5cf9344057486f718130c3496e027 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -6,7 +6,7 @@ keywords = ["duniter", "launcher"]
 license = "AGPL-3.0"
 name = "duniter-launcher"
 repository = "https://git.duniter.org/nodes/typescript/duniter"
-version = "1.9.0-alpha1"
+version = "1.8.1"
 
 [[bin]]
 bench = false
diff --git a/neon/native/Cargo.toml b/neon/native/Cargo.toml
index a1c4d66d19d427c505eea0204646f5bdaf0cf953..3f9b5be73008eb2c63001132a7fb958d51996854 100644
--- a/neon/native/Cargo.toml
+++ b/neon/native/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "duniteroxyde"
-version = "0.3.0"
+version = "1.8.1"
 authors = ["librelois <elois@ifee.fr>"]
 license = "AGPL-3.0"
 build = "build.rs"
diff --git a/release.toml b/release.toml
new file mode 100644
index 0000000000000000000000000000000000000000..774ed7f623e7bd7ee4455932f21196673ffd7c34
--- /dev/null
+++ b/release.toml
@@ -0,0 +1,25 @@
+disable-publish = true
+disable-push = true
+no-dev-version = true
+pre-release-commit-message = "v{{version}}"
+pre-release-replacements = [
+    # package.json
+    {file="package.json", search="version\": \"[0-9]+.[0-9]+.[0-9]+(-(alpha|beta|rc).[0-9]+)?\",", replace="version\": \"{{version}}\",", exactly=1, prerelease=true},
+    {file="package-lock.json", search="duniter\",\n  \"version\": \"[0-9]+.[0-9]+.[0-9]+(-(alpha|beta|rc).[0-9]+)?\",", replace="duniter\",\n  \"version\": \"{{version}}\",", exactly=1, prerelease=true},
+    # duniteroxyde
+    {file="neon/native/Cargo.toml", search="version = \"[0-9]+.[0-9]+.[0-9]+(-(alpha|beta|rc).[0-9]+)?\"\n", replace="version = \"{{version}}\"\n", exactly=1, prerelease=true},
+    {file="Cargo.lock", search="duniteroxyde\"\nversion = \"[0-9]+.[0-9]+.[0-9]+(-(alpha|beta|rc).[0-9]+)?\"\n", replace="duniteroxyde\"\nversion = \"{{version}}\"\n", exactly=1, prerelease=true},
+    # debian packages
+    {file="release/extra/debian/package/DEBIAN/control", search="Version: [0-9]+.[0-9]+.[0-9]+(-(alpha|beta|rc).[0-9]+)?", replace="Version: {{version}}", exactly=1, prerelease=true},
+    # GUI containers version
+    {file="package.json", search="title\": \"v[0-9]+.[0-9]+.[0-9]+(-(alpha|beta|rc).[0-9]+)?\",", replace="title\": \"v{{version}}\",", exactly=1, prerelease=true},
+    {file="gui/index.html", search="<title>Duniter [0-9]+.[0-9]+.[0-9]+(-(alpha|beta|rc).[0-9]+)?</title>", replace="<title>Duniter {{version}}</title>", exactly=1, prerelease=true},
+    # Duniter.iss (Windows installer)
+    {file="release/arch/windows/duniter.iss", search="define MyAppVerStr \"v[0-9]+.[0-9]+.[0-9]+(-(alpha|beta|rc).[0-9]+)?\"", replace="define MyAppVerStr \"v{{version}}\"", exactly=1, prerelease=true},
+    # CHANGELOG
+    #{file="CHANGELOG.md", search="Unreleased", replace="{{version}}"},
+    #{file="CHANGELOG.md", search="\\.\\.\\.HEAD", replace="...{{tag_name}}", exactly=1},
+    #{file="CHANGELOG.md", search="ReleaseDate", replace="{{date}}"},
+    #{file="CHANGELOG.md", search="<!-- next-header -->", replace="<!-- next-header -->\n\n## [Unreleased] - ReleaseDate"},
+    #{file="CHANGELOG.md", search="<!-- next-url -->", replace="<!-- next-url -->\n[Unreleased]: https://git.duniter.org/libs/dubp-rs-libs/compare/{{tag_name}}...HEAD", exactly=1},
+]
diff --git a/release/new_version.sh b/release/new_version.sh
deleted file mode 100755
index 179a88dac26244972acee10740fcb59a179cce56..0000000000000000000000000000000000000000
--- a/release/new_version.sh
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/bin/bash
-
-### Releasing
-current=`grep -P "version\": \"\d+.\d+.\d+(-\w*)" package.json | grep -oP "\d+.\d+.\d+(-\w*)"`
-echo "Current version: $current"
-
-if [[ $1 =~ ^[0-9]+.[0-9]+.[0-9]+(-(alpha|beta|rc)[0-9]*)?$ ]]; then
-  echo "Changing to version: $1"
-  # Change the version in package.json and package-lock.json
-  sed -i "s/version\": .*/version\": \"$1\",/" package.json
-  sed -i "3 s/version\": .*/version\": \"$1\",/" package-lock.json
-
-  # Debian file
-  sed -i "s/Version: .*/Version: $1/" release/extra/debian/package/DEBIAN/control
-
-  # Duniter.iss (Windows installer)
-  sed -i "s/define MyAppVerStr.*/define MyAppVerStr \"v$1\"/" release/arch/windows/duniter.iss
-
-  # GUI containers version
-  sed -i "s/title\": .*/title\": \"v$1\",/" package.json
-  sed -i "s/<title>Duniter.*<\/title>/<title>Duniter $1<\/title>/" gui/index.html
-
-  # Commit
-  git reset HEAD
-  git add package.json package-lock.json gui/index.html release/extra/debian/package/DEBIAN/control release/arch/windows/duniter.iss
-  git commit -m "v$1"
-  git tag "v$1"
-else
-  echo "Wrong version format"
-fi