diff --git a/documentation/dev-portal/book.toml b/documentation/dev-portal/book.toml index 3b6b9f077d..8533a08344 100644 --- a/documentation/dev-portal/book.toml +++ b/documentation/dev-portal/book.toml @@ -31,9 +31,13 @@ assets_version = "3.0.0" # do not edit: managed by `mdbook-admonish install` minimum_rust_version = "1.66" wallet_release_version = "1.2.8" # nym-vpn related variables -nym_vpn_latest_binary_url = "https://github.com/nymtech/nym/releases/tag/nym-vpn-alpha-0.0.4" +nym_vpn_releases = "https://github.com/nymtech/nym-vpn-client/releases" nym_vpn_form_url = "https://opnform.com/forms/nymvpn-user-research-at-37c3-yccqko-2" +# versions are pulled by cmdrun now +# nym_vpn_gui_version = "0.0.6" +# nym_vpn_cli_version = "0.0.4" + [preprocessor.last-changed] command = "mdbook-last-changed" renderer = ["html"] diff --git a/documentation/dev-portal/src/SUMMARY.md b/documentation/dev-portal/src/SUMMARY.md index 3a14919b99..8a0db815c4 100644 --- a/documentation/dev-portal/src/SUMMARY.md +++ b/documentation/dev-portal/src/SUMMARY.md @@ -25,7 +25,6 @@ - [CLI](nymvpn/cli.md) - [Linux](nymvpn/cli-linux.md) - [MacOS](nymvpn/cli-mac.md) - - [Testing](nymvpn/testing.md) - [Troubleshooting](nymvpn/troubleshooting.md) - [NymVPN FAQ](nymvpn/faq.md) - [NymConnect X Monero](tutorials/monero.md) diff --git a/documentation/dev-portal/src/nymvpn/cli-linux.md b/documentation/dev-portal/src/nymvpn/cli-linux.md index eb08043535..2c8f932e0a 100644 --- a/documentation/dev-portal/src/nymvpn/cli-linux.md +++ b/documentation/dev-portal/src/nymvpn/cli-linux.md @@ -8,25 +8,29 @@ NymVPN is an experimental software and it's for [testing](./testing.md) purposes > Any syntax in `<>` brackets is a user's/version unique variable. Exchange with a corresponding name without the `<>` brackets. -1. Open Github [releases page]({{nym_vpn_latest_binary_url}}) and download the binary for Debian based Linux -2. Verify sha hash of your downloaded binary with the one listed on the [releases page]({{nym_vpn_latest_binary_url}}). You can use a simple `shasum` command and compare strings (ie with Python) or run in the same directory the following command, exchanging `` with the one of your binary, like in the example: +1. Open Github [releases page]({{nym_vpn_releases}}) and download the binary for Debian based Linux + +2. Verify sha hash of your downloaded binary with the one listed on the [releases page]({{nym_vpn_releases}}). You can use a simple `shasum` command and compare strings (ie with Python) or run in the same directory the following command, exchanging `` with the one of your binary, like in the example: ```sh echo "" | shasum -a 256 -c # choose a correct one according to your binary, this is just an example -# echo "0e4abb461e86b2c168577e0294112a3bacd3a24bf8565b49783bfebd9b530e23 nym-vpn-cli_0.1.0_ubuntu-22.04_amd64.zip" | shasum -a 256 -c +# echo "0e4abb461e86b2c168577e0294112a3bacd3a24bf8565b49783bfebd9b530e23 nym-vpn-cli__ubuntu-22.04_amd64.tar.gz" | shasum -a 256 -c ``` -1. Extract files: + +3. Extract files: ```sh -tar -xvf +tar -xvf .tar.gz # for example -# tar -xvf nym-vpn-cli_0.0.2_ubuntu-22.04_x86_64.tar.gz +# tar -xvf nym-vpn-cli__ubuntu-22.04_x86_64.tar.gz ``` -2. Make executable by running: + +4. Make executable by running: ```sh -# possibly you may have to cd into a sub-directory +# make sure you are in the right sub-directory chmod u+x ./nym-vpn-cli ``` + 5. Create Sandbox environment config file by saving [this](https://raw.githubusercontent.com/nymtech/nym/develop/envs/sandbox.env) as `sandbox.env` in the same directory as your NymVPN binaries by running: ```sh curl -o sandbox.env -L https://raw.githubusercontent.com/nymtech/nym/develop/envs/sandbox.env diff --git a/documentation/dev-portal/src/nymvpn/cli-mac.md b/documentation/dev-portal/src/nymvpn/cli-mac.md index a4093168db..fa75a90659 100644 --- a/documentation/dev-portal/src/nymvpn/cli-mac.md +++ b/documentation/dev-portal/src/nymvpn/cli-mac.md @@ -8,19 +8,19 @@ NymVPN is an experimental software and it's for [testing](./testing.md) purposes > Any syntax in `<>` brackets is a user's/version unique variable. Exchange with a corresponding name without the `<>` brackets. -1. Open Github [releases page]({{nym_vpn_latest_binary_url}}) and download the binary for MacOS -2. Verify sha hash of your downloaded binary with the one listed on the [releases page]({{nym_vpn_latest_binary_url}}). You can use a simple `shasum` command and compare strings (ie with Python) or run in the same directory the following command, exchanging `` with the one of your binary, like in the example: +1. Open Github [releases page]({{nym_vpn_releases}}) and download the binary for MacOS +2. Verify sha hash of your downloaded binary with the one listed on the [releases page]({{nym_vpn_releases}}). You can use a simple `shasum` command and compare strings (ie with Python) or run in the same directory the following command, exchanging `` with the one of your binary, like in the example: ```sh echo "" | shasum -a 256 -c # choose a correct one according to your binary, this is just an example -# echo "96623ccc69bc4cc0e4e3e18528b6dae6be69f645d0a592d926a3158ce2d0c269 nym-vpn-cli_0.1.0_macos_x86_64.zip" | shasum -a 256 -c +# echo "96623ccc69bc4cc0e4e3e18528b6dae6be69f645d0a592d926a3158ce2d0c269 nym-vpn-cli__macos_x86_64.zip" | shasum -a 256 -c ``` 3. Extract files: ```sh tar -xvf # for example -# tar -xvf nym-vpn-cli_0.0.2_macos_aarch64.tar.gz +# tar -xvf nym-vpn-cli__macos_aarch64.tar.gz ``` 4. Make executable by running: ```sh diff --git a/documentation/dev-portal/src/nymvpn/cli.md b/documentation/dev-portal/src/nymvpn/cli.md index ea0a7f0e9a..7151082e2a 100644 --- a/documentation/dev-portal/src/nymvpn/cli.md +++ b/documentation/dev-portal/src/nymvpn/cli.md @@ -5,33 +5,22 @@ Our alpha testing round is done with participants at live workshop events. This **If you commit to test NymVPN alpha, please start with the [user research form]({{nym_vpn_form_url}}) where all the steps will be provided**. If you disagree with any of the conditions listed, please leave this page. ``` - -NymVPN CLI is a fundamental way to run the client for different purposes, currently it is a must for users who want to run the [testing scripts](testing.md). - Follow the simple [automated script](#automated-script-for-cli-installation) below to install and run NymVPN CLI. If you prefer to do a manual setup follow the steps in the guide for [Linux](cli-linux.md) or [MacOS](cli-mac.md). +Visit NymVPN alpha latest [release page]({{nym_vpn_releases}}) to check sha sums or download the binaries directly. + ## Automated Script for CLI Installation We wrote a [script](https://gist.github.com/serinko/d65450653d6bbafacbcee71c9cb8fb31) which does download of the CLI, sha256 verification, extraction, installation and configuration for Linux and MacOS users automatically following the steps below: 1. Open a terminal window in a directory where you want the script and NymVPN CLI binary be downloaded and run ```sh -curl -o execute-nym-vpn-cli-binary.sh -L https://gist.githubusercontent.com/serinko/d65450653d6bbafacbcee71c9cb8fb31/raw/0cbcdd18f7ee94f559692b936061248ebbbf2773/execute-nym-vpn-cli-binary.sh +curl -o execute-nym-vpn-cli-binary.sh -L https://gist.githubusercontent.com/serinko/d65450653d6bbafacbcee71c9cb8fb31/raw/4b70371fb000fd08910c0f778e78566d002e1319/execute-nym-vpn-cli-binary.sh && chmod u+x execute-nym-vpn-cli-binary.sh && sudo -E ./execute-nym-vpn-cli-binary.sh ``` -2. Make the script executable -```sh -chmod u+x execute-nym-vpn-cli-binary.sh -``` +2. Follow the prompts in the program -3. Start the script, turn off any VPN and run -```sh -sudo -E ./execute-nym-vpn-cli-binary.sh -``` - -4. Follow the prompts in the program - -5. The script will automatically start the client. Make sure to **turn off any other VPNs** and follow the prompts: +3. The script will automatically start the client. Make sure to **turn off any other VPNs** and follow the prompts: * It prints a JSON view of existing Gateways and prompt you to: - *Make sure to use two different Gateways for entry and exit!* diff --git a/documentation/dev-portal/src/nymvpn/gui-linux.md b/documentation/dev-portal/src/nymvpn/gui-linux.md index 713142c2eb..2f66420bf1 100644 --- a/documentation/dev-portal/src/nymvpn/gui-linux.md +++ b/documentation/dev-portal/src/nymvpn/gui-linux.md @@ -12,33 +12,35 @@ NymVPN is an experimental software and it's for [testing](./testing.md) purposes ### Installation -1. Open Github [releases page]({{nym_vpn_latest_binary_url}}) and download the binary for Debian based Linux -2. Required (if you don't want to check shasum, skip this point): Verify sha hash of your downloaded binary with the one listed on the [releases page]({{nym_vpn_latest_binary_url}}). You can use a simple `shasum` command and compare strings (ie with Python) or run in the same directory the following command, exchanging `` with the one of your binary, like in the example: +1. Open Github [releases page]({{nym_vpn_releases}}) and download the binary for Debian based Linux + +2. Required (if you don't want to check shasum, skip this point): Verify sha hash of your downloaded binary with the one listed on the [releases page]({{nym_vpn_releases}}). You can use a simple `shasum` command and compare strings (ie with Python) or run in the same directory the following command, exchanging `` with the one of your binary, like in the example: ```sh echo "" | shasum -a 256 -c # choose a correct one according to your binary, this is just an example -# echo "a5f91f20d587975e30b6a75d3a9e195234cf1269eac278139a5b9c39b039e807 nym-vpn-desktop_0.0.3_ubuntu-22.04_x86_64.zip" | shasum -a 256 -c +# echo "a5f91f20d587975e30b6a75d3a9e195234cf1269eac278139a5b9c39b039e807 nym-vpn-desktop__ubuntu-22.04_x86_64.tar.gz" | shasum -a 256 -c ``` + 3. Extract files: ```sh -tar -xvf +tar -xvf .tar.gz # for example -# tar -xvf nym-vpn-desktop_0.0.4_ubuntu-22.04_x86_64.tar.gz +# tar -xvf nym-vpn-desktop__ubuntu-22.04_x86_64.tar.gz ``` 4. If you prefer to run `.AppImage` make executable by running: ```sh # make sure you cd into the right sub-directory after extraction -chmod u+x ./appimage/nym-vpn_0.0.4_amd64.AppImage +chmod u+x ./nym-vpn__amd64.AppImage ``` + 5. If you prefer to use the `.deb` version for installation (works on Debian based Linux only), open terminal in the same directory and run: ```sh -cd deb - -sudo dpkg -i ./nym-vpn_0.0.4_amd64.deb +# make sure you cd into the right sub-directory after extraction +sudo dpkg -i ./nym-vpn__amd64.deb # or -sudo apt-get install -f ./nym-vpn_0.0.4_amd64.deb +sudo apt-get install -f ./nym-vpn__amd64.deb ``` NymVPN alpha version runs over Nym testnet (called sandbox), a little extra configuration is needed for the application to work. @@ -72,7 +74,7 @@ Open terminal and run: ```sh # .AppImage must be run from the same directory as the binary -sudo -E ./nym-vpn_0.0.4_amd64.AppImage +sudo -E ./nym-vpn__amd64.AppImage # .deb installation shall be executable from anywhere as sudo -E nym-vpn diff --git a/documentation/dev-portal/src/nymvpn/gui-mac.md b/documentation/dev-portal/src/nymvpn/gui-mac.md index 336a0cede2..9602f608cf 100644 --- a/documentation/dev-portal/src/nymvpn/gui-mac.md +++ b/documentation/dev-portal/src/nymvpn/gui-mac.md @@ -17,21 +17,21 @@ mkdir -p "$HOME/nym-vpn-latest" ``` --> -1. Open Github [releases page]({{nym_vpn_latest_binary_url}}) and download the binary for your version of MacOS +1. Open Github [releases page]({{nym_vpn_releases}}) and download the binary for your version of MacOS -2. Recommended (skip this point if you don't want to verify): Verify sha hash of your downloaded binary with the one listed on the [releases page]({{nym_vpn_latest_binary_url}}). You can use a simple `shasum` command and compare strings (ie with Python) or run in the same directory the following command, exchanging `` with the one of your binary, like in the example: +2. Recommended (skip this point if you don't want to verify): Verify sha hash of your downloaded binary with the one listed on the [releases page]({{nym_vpn_releases}}). You can use a simple `shasum` command and compare strings (ie with Python) or run in the same directory the following command, exchanging `` with the one of your binary, like in the example: ```sh echo "" | shasum -a 256 -c # choose a correct one according to your binary, this is just an example -# echo "da4c0bf8e8b52658312d341fa3581954cfcb6efd516d9a448c76d042a454b5df nym-vpn-desktop_0.0.3_macos_x86_64.zip" | shasum -a 256 -c +# echo "da4c0bf8e8b52658312d341fa3581954cfcb6efd516d9a448c76d042a454b5df nym-vpn-desktop__macos_x86_64.zip" | shasum -a 256 -c ``` 3. Extract the downloaded file manually or by a command: ```sh -tar -xvf +tar -xvf .tar.gz # for example -# tar -xvf nym-vpn-desktop_0.0.4_macos_aarch64.tar.gz +# tar -xvf nym-vpn-desktop__macos_aarch64.tar.gz ``` _ubuntu-22.04_x86_64/nym-vpn__amd64.AppImage + +# Linux .deb +sudo -E nym-vpn # MacOS sudo -E $HOME/nym-vpn-latest/nym-vpn diff --git a/documentation/dev-portal/src/nymvpn/intro.md b/documentation/dev-portal/src/nymvpn/intro.md index b6da352656..b0648c063e 100644 --- a/documentation/dev-portal/src/nymvpn/intro.md +++ b/documentation/dev-portal/src/nymvpn/intro.md @@ -5,7 +5,7 @@ **Nym proudly presents NymVPN alpha** - a client that uses [Nym Mixnet](https://nymtech.net) to anonymise all of a user's internet traffic through either a 5-hop mixnet (for a full network privacy) or the faster 2-hop decentralised VPN (with some extra features). -**You are invited to take part in the alpha testing** of this new application. The following pages provide a how-to guide, explaining steps to install and run NymVPN [CLI](cli.md) and [GUI](gui.md) on the Sandbox testnet environment as well as provide some scripts for [qualitative testing](testing.md). +**You are invited to take part in the alpha testing** of this new application. The following pages provide a how-to guide, explaining steps to install and run NymVPN [CLI](cli.md) and [GUI](gui.md) on the Sandbox testnet environment. **Here is how** @@ -13,13 +13,12 @@ 2. Please consent to the GDPR so we can use the results 3. To test the GUI, [go here](gui.md) 4. To test the CLI, [go here](cli.md) -5. Run [qualitative testing script](testing.md) -6. Fill and submit the [form!]({{nym_vpn_form_url}}) -7. Join the [NymVPN matrix channel](https://matrix.to/#/#NymVPN:nymtech.chat) if you have any questions, comments or blockers +5. Fill and submit the [form!]({{nym_vpn_form_url}}) +6. Join the [NymVPN matrix channel](https://matrix.to/#/#NymVPN:nymtech.chat) if you have any questions, comments or blockers ***NymVPN alpha testing will last from 15th of January - 15th of February.*** -*NOTE: NymVPN alpha is experimental software for [testing purposes](testing.md) only.* +*NOTE: NymVPN alpha is experimental software for testing purposes only.* ## NymVPN Overview @@ -45,10 +44,9 @@ The client can optionally do the first hop (local client to Entry Gateway) using ## NymVPN Resources & Guides * [NymVPN webpage](https://nymvpn.com) -* [Alpha release page]({{nym_vpn_latest_binary_url}}) +* [Alpha release page]({{nym_vpn_releases}}) * [NymVPN application (GUI) guide](gui.md) * [NymVPN Command Line Interface (CLI) guide](cli.md) -* [Testing scripts](testing.md) * [Troubleshooting](troubleshooting.md) * [NymVPN FAQ](faq.md) * [NymVPN matrix channel](https://matrix.to/#/#NymVPN:nymtech.chat) diff --git a/documentation/dev-portal/src/nymvpn/old-gui-mac.md b/documentation/dev-portal/src/nymvpn/old-gui-mac.md deleted file mode 100644 index ba74a23f41..0000000000 --- a/documentation/dev-portal/src/nymvpn/old-gui-mac.md +++ /dev/null @@ -1,61 +0,0 @@ -# NymVPN alpha - Desktop: Guide for Mac OS - -```admonish info -NymVPN is an experimental software and it's for [testing](./testing.md) purposes only. All users testing the client are expected to sign GDPR Information Sheet and Consent Form (shared at the workshop) so we use their results to improve the client, and submit the form [*NymVPN User research*]({{nym_vpn_form_url}}) with the testing results. -``` - -## Preparation - -> Any syntax in `<>` brackets is a user's/version unique variable. Exchange with a corresponding name without the `<>` brackets. - -### Installation - -1. Create a directory `~/nym-vpn-latest` -```sh -mkdir -p "$HOME/nym-vpn-latest" -``` -2. Open Github [releases page]({{nym_vpn_latest_binary_url}}) and download the binary for MacOS -3. Verify sha hash of your downloaded binary with the one listed on the [releases page]({{nym_vpn_latest_binary_url}}). You can use a simple `shasum` command and compare strings (ie with Python) or run in the same directory the following command, exchanging `` with the one of your binary, like in the example: -```sh -echo "" | shasum -a 256 -c - -# choose a correct one according to your binary, this is just an example -# echo "da4c0bf8e8b52658312d341fa3581954cfcb6efd516d9a448c76d042a454b5df nym-vpn-desktop_0.0.3_macos_x86_64.zip" | shasum -a 256 -c -``` -4. Extract files: -```sh -tar -xvf -# for example -# tar -xvf nym-vpn-desktop_0.0.4_macos_aarch64.tar.gz -``` -5. Move to the application directory and make executable -```sh -cd "macos/nym-vpn.app/Contents/MacOS" - -chmod u+x nym-vpn -``` -6. Move `nym-vpn` to your `~/nym-vpn-latest` directory -```sh -mv nym-vpn "$HOME/nym-vpn-latest" -``` - -### Configuration - -7. Create the configuration file by opening a text editor and saving the lines below as `config.toml` in the same directory `~/nym-vpn-latest` -```toml -env_config_file = ".env" -``` -8. Create testnet configuration file by saving [this](https://raw.githubusercontent.com/nymtech/nym/develop/envs/sandbox.env) as `.env` in the same directory `~/nym-vpn-latest` -```sh -curl -L "https://raw.githubusercontent.com/nymtech/nym/develop/envs/sandbox.env" -o "$HOME/nym-vpn-latest/.env" -``` -## Run NymVPN - -**For NymVPN to work, all other VPNs must be switched off!** At this alpha stage of NymVPN, the network connection (wifi) must be reconnected after or in between the testing rounds. - -Run: -```sh -sudo -E $HOME/nym-vpn-latest/nym-vpn -``` - -In case of errors check out the [troubleshooting](troubleshooting.html#installing-gui-on-macos-not-working) section. diff --git a/documentation/dev-portal/src/nymvpn/scripts/nym_vpn_cli_version.sh b/documentation/dev-portal/src/nymvpn/scripts/nym_vpn_cli_version.sh new file mode 100755 index 0000000000..2801762bbf --- /dev/null +++ b/documentation/dev-portal/src/nymvpn/scripts/nym_vpn_cli_version.sh @@ -0,0 +1,6 @@ +#!/bin/bash + +release_url="https://api.github.com/repos/nymtech/nym-vpn-client/releases" +current_cli_version=$(curl -s $release_url | jq -r '.[].tag_name' | grep '^nym-vpn-cli-v' | sort -Vr | head -n 1 | awk -F'-v' '{print $NF}') + +echo "${current_cli_version}" diff --git a/documentation/dev-portal/src/nymvpn/scripts/nym_vpn_desktop_version.sh b/documentation/dev-portal/src/nymvpn/scripts/nym_vpn_desktop_version.sh new file mode 100755 index 0000000000..443509b70b --- /dev/null +++ b/documentation/dev-portal/src/nymvpn/scripts/nym_vpn_desktop_version.sh @@ -0,0 +1,6 @@ +#!/bin/bash + +release_url="https://api.github.com/repos/nymtech/nym-vpn-client/releases" +version=$(curl -s $release_url | jq -r '.[].tag_name' | grep '^nym-vpn-desktop-v' | sort -Vr | head -n 1 | awk -F'-v' '{print $NF}') + +echo "${version}" diff --git a/documentation/dev-portal/src/nymvpn/testing.md b/documentation/dev-portal/src/nymvpn/testing.md index f5e6558bf4..849b670d8f 100644 --- a/documentation/dev-portal/src/nymvpn/testing.md +++ b/documentation/dev-portal/src/nymvpn/testing.md @@ -14,7 +14,7 @@ One of the main aims of NymVPN alpha release is testing; your results will help > Any syntax in `<>` brackets is a user's/version unique variable. Exchange with a corresponding name without the `<>` brackets. -1. Create a directory called `nym-vpn-tests` and copy your `nym-vpn-cli` binary ([download here]({{nym_vpn_latest_binary_url}})) +1. Create a directory called `nym-vpn-tests` and copy your `nym-vpn-cli` binary ([download here]({{nym_vpn_releases}})) 2. Copy or download [`sandbox.env`](https://raw.githubusercontent.com/nymtech/nym/develop/envs/sandbox.env) testnet config file to the same directory ```sh curl -o sandbox.env -L https://raw.githubusercontent.com/nymtech/nym/develop/envs/sandbox.env diff --git a/documentation/dev-portal/src/nymvpn/troubleshooting.md b/documentation/dev-portal/src/nymvpn/troubleshooting.md index 32f9139516..9e00554518 100644 --- a/documentation/dev-portal/src/nymvpn/troubleshooting.md +++ b/documentation/dev-portal/src/nymvpn/troubleshooting.md @@ -46,6 +46,8 @@ If you are running NymVPN on mac OS for the first time, you may see this alert m 3. Possibly you may have to confirm again upon running the application +