diff --git a/readme.md b/readme.md index fdc21cd05..16c5f07b7 100644 --- a/readme.md +++ b/readme.md @@ -10,6 +10,50 @@ You can view documentation on how to get started [here](https://loki-project.git ![build status](https://gitlab.com/lokiproject/loki-network/badges/master/pipeline.svg "build status") +## Usage + +see the [documentation](https://loki-project.github.io/loki-docs/Lokinet/LokinetOverview/) on how to get started. + +## Running on Linux/UNIX/BSD (Except MacOS) + +**DO NOT RUN AS ROOT**, run as normal user. This requires the binary to have the proper setcaps set by `make install` on the binary. + +to run as client: + + $ lokinet -g + $ lokinet-bootstrap + $ lokinet + +to run as relay: + + $ lokinet -r + $ lokinet-bootstrap + $ lokinet + +## Running on MacOS + +**YOU HAVE TO RUN AS ROOT**, run using sudo. Elevated privileges are needed to create the virtual tunnel interface. + +to run as client: + + $ lokinet -g + $ lokinet-bootstrap + $ sudo lokinet + +to run as relay: + + $ lokinet -r + $ lokinet-bootstrap + $ sudo lokinet + + +## Running on Windows + +**DO NOT RUN AS ELEVATED USER**, run as normal user. + +to run as client, run the `run-lokinet.bat` batch file as your normal user. + + ## Building Build requirements: @@ -33,6 +77,41 @@ install: $ sudo make install +### MacOS + +build: + make sure you have cmake and xcode command line tools installed + + $ git clone https://github.com/loki-project/loki-network + $ cd loki-network + $ make -j8 + +install: + + $ sudo make install + +### Windows + +build (where `$ARCH` is your platform - `i686` or `x86_64`): + + $ pacman -Sy base-devel mingw-w64-$ARCH-toolchain git libtool autoconf mingw-w64-$ARCH-cmake + $ git clone https://github.com/loki-project/loki-network.git + $ cd loki-network + $ mkdir -p build; cd build + $ cmake .. -DCMAKE_BUILD_TYPE=[Debug|Release] -DSTATIC_LINK_RUNTIME=ON -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -G 'Unix Makefiles' + +install (elevated) to `$PROGRAMFILES/lokinet` or `$ProgramFiles(x86)/lokinet`: + + $ make install + +if cross-compiling, install mingw-w64 from your distro's package manager, or [build from source](https://sourceforge.net/p/mingw-w64/wiki2/Cross%20Win32%20and%20Win64%20compiler/), then: + + $ mkdir -p build; cd build + $ export COMPILER=clang # if using clang for windows + $ cmake .. -DCMAKE_BUILD_TYPE=[Debug|Release] -DSTATIC_LINK_RUNTIME=ON -DCMAKE_CROSSCOMPILING=ON -DCMAKE_TOOLCHAIN_FILE=../contrib/cross/mingw[32].cmake + +this will create a static binary that can be installed anywhere, with no other dependency other than libc (minimum v6.1) + ### Solaris 2.10+ NOTE: Oracle Solaris users need to download/compile the TAP driver from http://www.whiteboard.ne.jp/~admin2/tuntap/ @@ -84,53 +163,3 @@ build: install (root): # gmake install - -### Windows - -build (where `$ARCH` is your platform - `i686` or `x86_64`): - - $ pacman -Sy base-devel mingw-w64-$ARCH-toolchain git libtool autoconf mingw-w64-$ARCH-cmake - $ git clone https://github.com/loki-project/loki-network.git - $ cd loki-network - $ mkdir -p build; cd build - $ cmake .. -DCMAKE_BUILD_TYPE=[Debug|Release] -DSTATIC_LINK_RUNTIME=ON -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -G 'Unix Makefiles' - -install (elevated) to `$PROGRAMFILES/lokinet` or `$ProgramFiles(x86)/lokinet`: - - $ make install - -if cross-compiling, install mingw-w64 from your distro's package manager, or [build from source](https://sourceforge.net/p/mingw-w64/wiki2/Cross%20Win32%20and%20Win64%20compiler/), then: - - $ mkdir -p build; cd build - $ export COMPILER=clang # if using clang for windows - $ cmake .. -DCMAKE_BUILD_TYPE=[Debug|Release] -DSTATIC_LINK_RUNTIME=ON -DCMAKE_CROSSCOMPILING=ON -DCMAKE_TOOLCHAIN_FILE=../contrib/cross/mingw[32].cmake - -this will create a static binary that can be installed anywhere, with no other dependency other than libc (minimum v6.1) - -## Running on Linux/UNIX/BSD - -**DO NOT RUN AS ROOT**, run as normal user. - -to run as client: - - $ lokinet -g - $ lokinet-bootstrap - $ lokinet - -to run as relay: - - $ lokinet -r -g - $ lokinet-bootstrap - $ lokinet - - -## Running on Windows - -**DO NOT RUN AS ELEVATED USER**, run as normal user. - -to run as client, run the `run-lokinet.bat` batch file as your normal user. - - -## Usage - -see the [documentation](https://loki-project.github.io/loki-docs/Lokinet/LokinetOverview/) on how to get started.