|
|
@ -13,13 +13,13 @@ Static builds via Docker are done in 3 steps:
|
|
|
|
### Linux (reproducible)
|
|
|
|
### Linux (reproducible)
|
|
|
|
|
|
|
|
|
|
|
|
The docker image for reproducible Linux static builds uses Ubuntu 16.04 and compiles the required libraries statically
|
|
|
|
The docker image for reproducible Linux static builds uses Ubuntu 16.04 and compiles the required libraries statically
|
|
|
|
so that the resulting Feather binary is static. For more information, check the Dockerfile: `Dockerfile`.
|
|
|
|
so that the resulting wowlet binary is static. For more information, check the Dockerfile: `Dockerfile`.
|
|
|
|
|
|
|
|
|
|
|
|
#### 1. Clone
|
|
|
|
#### 1. Clone
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
```bash
|
|
|
|
git clone --branch master --recursive https://git.wownero.com/feather/feather.git
|
|
|
|
git clone --branch master --recursive https://git.wownero.com/wowlet/wowlet.git
|
|
|
|
cd feather
|
|
|
|
cd wowlet
|
|
|
|
```
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
Replace `master` with the desired version tag (e.g. `beta-4`) to build the release binary.
|
|
|
|
Replace `master` with the desired version tag (e.g. `beta-4`) to build the release binary.
|
|
|
@ -27,7 +27,7 @@ Replace `master` with the desired version tag (e.g. `beta-4`) to build the relea
|
|
|
|
#### 2. Base image
|
|
|
|
#### 2. Base image
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
```bash
|
|
|
|
docker build --tag feather:linux --build-arg THREADS=4 .
|
|
|
|
docker build --tag wowlet:linux --build-arg THREADS=4 .
|
|
|
|
```
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
Building the base image takes a while. You only need to build the base image once.
|
|
|
|
Building the base image takes a while. You only need to build the base image once.
|
|
|
@ -37,19 +37,19 @@ Building the base image takes a while. You only need to build the base image onc
|
|
|
|
##### Standalone binary
|
|
|
|
##### Standalone binary
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
```bash
|
|
|
|
docker run --rm -it -v $PWD:/feather -w /feather feather:linux sh -c 'make release-static -j4'
|
|
|
|
docker run --rm -it -v $PWD:/wowlet -w /wowlet wowlet:linux sh -c 'make release-static -j4'
|
|
|
|
```
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
If you're re-running a build make sure to `rm -rf build/` first.
|
|
|
|
If you're re-running a build make sure to `rm -rf build/` first.
|
|
|
|
|
|
|
|
|
|
|
|
The resulting binary can be found in `build/bin/feather`.
|
|
|
|
The resulting binary can be found in `build/bin/wowlet`.
|
|
|
|
|
|
|
|
|
|
|
|
##### AppImage
|
|
|
|
##### AppImage
|
|
|
|
|
|
|
|
|
|
|
|
First create the standalone binary using the Docker command in the previous step.
|
|
|
|
First create the standalone binary using the Docker command in the previous step.
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
```bash
|
|
|
|
docker run --rm -it -v $PWD:/feather -w /feather feather:linux contrib/build-appimage.sh
|
|
|
|
docker run --rm -it -v $PWD:/wowlet -w /wowlet wowlet:linux contrib/build-appimage.sh
|
|
|
|
```
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
### Windows (reproducible)
|
|
|
|
### Windows (reproducible)
|
|
|
@ -57,8 +57,8 @@ docker run --rm -it -v $PWD:/feather -w /feather feather:linux contrib/build-app
|
|
|
|
#### 1. Clone
|
|
|
|
#### 1. Clone
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
```bash
|
|
|
|
git clone --branch master --recursive https://git.wownero.com/feather/feather.git
|
|
|
|
git clone --branch master --recursive https://git.wownero.com/wowlet/wowlet.git
|
|
|
|
cd feather
|
|
|
|
cd wowlet
|
|
|
|
```
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
Replace `master` with the desired version tag (e.g. `beta-4`) to build the release binary.
|
|
|
|
Replace `master` with the desired version tag (e.g. `beta-4`) to build the release binary.
|
|
|
@ -67,7 +67,7 @@ Replace `master` with the desired version tag (e.g. `beta-4`) to build the relea
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
```bash
|
|
|
|
docker build -f Dockerfile.windows --tag feather:win --build-arg THREADS=4 .
|
|
|
|
docker build -f Dockerfile.windows --tag wowlet:win --build-arg THREADS=4 .
|
|
|
|
```
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
Building the base image takes a while. You only need to build the base image once.
|
|
|
|
Building the base image takes a while. You only need to build the base image once.
|
|
|
@ -75,12 +75,12 @@ Building the base image takes a while. You only need to build the base image onc
|
|
|
|
#### 3. Build
|
|
|
|
#### 3. Build
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
```bash
|
|
|
|
docker run --rm -it -v $PWD:/feather -w /feather feather:win sh -c 'make depends root=/depends target=x86_64-w64-mingw32 tag=win-x64 -j4'
|
|
|
|
docker run --rm -it -v $PWD:/wowlet -w /wowlet wowlet:win sh -c 'make depends root=/depends target=x86_64-w64-mingw32 tag=win-x64 -j4'
|
|
|
|
```
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
If you're re-running a build make sure to `rm -rf build/` first.
|
|
|
|
If you're re-running a build make sure to `rm -rf build/` first.
|
|
|
|
|
|
|
|
|
|
|
|
The resulting binary can be found in `build/x86_64-w64-mingw32/release/bin/feather.exe`.
|
|
|
|
The resulting binary can be found in `build/x86_64-w64-mingw32/release/bin/wowlet.exe`.
|
|
|
|
|
|
|
|
|
|
|
|
## macOS
|
|
|
|
## macOS
|
|
|
|
|
|
|
|
|
|
|
@ -94,15 +94,15 @@ HOMEBREW_OPTFLAGS="-march=core2" HOMEBREW_OPTIMIZATION_LEVEL="O0" \
|
|
|
|
Clone the repository.
|
|
|
|
Clone the repository.
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
```bash
|
|
|
|
git clone --recursive https://git.wownero.com/feather/feather.git
|
|
|
|
git clone --recursive https://git.wownero.com/wowlet/wowlet.git
|
|
|
|
```
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
Get the latest LTS from here: https://www.qt.io/offline-installers and install.
|
|
|
|
Get the latest LTS from here: https://www.qt.io/offline-installers and install.
|
|
|
|
|
|
|
|
|
|
|
|
Build Feather.
|
|
|
|
Build wowlet.
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
```bash
|
|
|
|
CMAKE_PREFIX_PATH=~/Qt5.15.1/5.15.1/clang_64 make mac-release
|
|
|
|
CMAKE_PREFIX_PATH=~/Qt5.15.1/5.15.1/clang_64 make mac-release
|
|
|
|
```
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
The resulting Mac OS application can be found `build/bin/feather.app` and will **not** have Tor embedded.
|
|
|
|
The resulting Mac OS application can be found `build/bin/wowlet.app` and will **not** have Tor embedded.
|
|
|
|