From 2aef963c30b6cc27f671fb6bc459164e920098c2 Mon Sep 17 00:00:00 2001 From: Alice Bowman Date: Mon, 29 Jan 2024 16:23:09 +0100 Subject: [PATCH] content: ported compilation and installation wiki page to website --- content/en/docs/compilation.md | 186 +++++++++++++++++++++++++++++++++ static/css/rosenpass.css | 14 +++ 2 files changed, 200 insertions(+) create mode 100644 content/en/docs/compilation.md diff --git a/content/en/docs/compilation.md b/content/en/docs/compilation.md new file mode 100644 index 00000000..23791c4a --- /dev/null +++ b/content/en/docs/compilation.md @@ -0,0 +1,186 @@ +--- +title: "" +linkTitle: "Compilation and Installation" +weight: 4 +menu: false +type: docs +--- + + +{{< blocks/lead color="secondary" class="title-box" >}} +## Compile it yourself +{{< /blocks/lead >}} + +{{% blocks/section color="light" class="no-flex contains-code-snippets" %}} + + + +- You can compile Rosenpass yourself. This gives you the advantage of ensuring that you use Rosenpass as exactly as the source code is in Git. + +1. Install the dependencies. Under Debian, you can do this with the following command: + + + +```sh +sudo apt-get --yes install libsodium-dev libclang-dev cmake pkg-config git build-essential +``` + + + +2. If you want to use Rosenpass with WireGuard, install WireGuard. On Debian, you can do this with the following command: + + + +```sh +sudo apt-get --yes install wireguard +``` + + +3. Install Rust >= 1.64.0 (as of 2023-07-01). This can be achieved using [Rustup](https://rustup.rs/), for example. + +4. Clone the Git Repository: + + + +```sh +git clone https://github.com/rosenpass/rosenpass.git +``` + + + +5. Change to the Rosenpass directory: + + + +```sh +cd rosenpass +``` + + + +6. Switch to the version you want to install. Without switching, you will install and compile the dev version. Find the name of the version that you would like to install on the [releases page](https://github.com/rosenpass/rosenpass/releases), or [find the name of the latest release](https://github.com/rosenpass/rosenpass/releases/latest). Use the following command to switch to version, e.g., 0.2.1: + + + +```sh +git checkout v0.2.1 +``` + + + +7. Compile Rosenpass, this may take a while: + + + +```sh +cargo build --release +``` + + + +8. Install Rosenpass: + + + +```sh +sudo install target/release/rosenpass /usr/local/bin +``` + + + +9. If you want the Rosenpass helper: + + + +```sh +rp +``` + + + +It can be installed it with: + + + +```sh +sudo install rp /usr/local/bin +``` + + + + +**That's it! You have now downloaded, compiled, and installed Rosenpass.** + + + +{{< /blocks/section >}} + +{{< blocks/lead color="secondary" class="title-box" >}} +## Installation via binary files +{{< /blocks/lead >}} + +{{% blocks/section color="light" class="no-flex contains-code-snippets" %}} + + + +- If Rosenpass is not yet available for your distribution, you can attempt to download it manually. + +1. Download the desired version for your operating system from the [releases page](https://github.com/rosenpass/rosenpass/releases/), or directly jump to the [latest version](https://github.com/rosenpass/rosenpass/releases/latest). + +2. Unzip the file. On Linux you can use tar for this: + + + +```sh +tar xf rosenpass-x86_64-linux-0.2.1.tar +``` + + + +3. Install Rosenpass: + + + +```sh +sudo install bin/rosenpass /usr/local/bin +``` + + + +4. If you want the Rosenpass helper: + + + +```sh +rp +``` + + + +It can be installed it with: + + + +```sh +sudo install bin/rp /usr/local/bin +``` + + + +5. Delete the downloaded files: + + + +```sh +rm -r rosenpass-x86_64-linux-0.1.1.tar bin/ +``` + + + + + +**That's it! You have now downloaded and installed Rosenpass.** + + + +{{< /blocks/section >}} \ No newline at end of file diff --git a/static/css/rosenpass.css b/static/css/rosenpass.css index 8b733389..5e8bbf75 100644 --- a/static/css/rosenpass.css +++ b/static/css/rosenpass.css @@ -111,6 +111,20 @@ margin-bottom: 0; /* ADHD Spacing */ +.title-box{ + padding: 2rem; +} + +.codebox div.highlight{ +margin: 0 0 15px 0; +border: none; +} + +.spacer { + display: inline-block; + margin-top: 1rem; +} + .contains-code-snippets ol { margin-top: 15px; }