|
|
|
# Silent Dragon Wormhole
|
|
|
|
|
|
|
|
Wormhole Service for SilentDragon mobile app at wormhole.hush.is
|
|
|
|
|
|
|
|
# Compiling From Source
|
|
|
|
|
|
|
|
Install dependencies:
|
|
|
|
|
|
|
|
sudo apt-get install android-sdk gradle
|
|
|
|
|
|
|
|
Your system may have a version of gradle that is too old. Gradle 5.6.1 is known
|
|
|
|
to work well:
|
|
|
|
|
|
|
|
wget https://services.gradle.org/distributions/gradle-5.6.1-bin.zip
|
|
|
|
unzip gradle-5.6.1-bin.zip
|
|
|
|
export PATH=$PWD/gradle-5.6.1/bin:$PATH
|
|
|
|
|
|
|
|
You will also need a `java` binary installed:
|
|
|
|
|
|
|
|
sudo apt install default-jre # or something equivalent
|
|
|
|
|
|
|
|
Clone and compile:
|
|
|
|
|
|
|
|
git clone https://git.hush.is/hush/SilentDragonWormhole
|
|
|
|
cd SilentDragonWormhole
|
|
|
|
gradle build
|
|
|
|
|
|
|
|
# Running the Wormhole
|
|
|
|
|
|
|
|
If the build was successful, you can execute the binary and start the server:
|
|
|
|
|
|
|
|
./run.sh
|
|
|
|
|
|
|
|
It will run in the background. You can see the process via:
|
|
|
|
|
|
|
|
ps auxw|grep wormhole
|
|
|
|
|
|
|
|
Note: The default port of the Wormhole is 7070. This can be changed in source and recompiled if needed.
|
|
|
|
|
|
|
|
# Nginx Proxying
|
|
|
|
|
|
|
|
You will want something to proxy SSL connections in front of the wormhole, it doesn't handle that itself.
|
|
|
|
For example, the production `wormhole.hush.is` uses CloudFlare to proxy SSL connections, which then talks
|
|
|
|
to nginx, which then proxies to the actual wormhole server. Like so:
|
|
|
|
|
|
|
|
```
|
|
|
|
[SDA] <=> [CloudFlare] <=> [nginx] <=> [wormhole]
|
|
|
|
```
|
|
|
|
|
|
|
|
Here is an example nginx config that you can use, just change your `server_name` :
|
|
|
|
|
|
|
|
```
|
|
|
|
server {
|
|
|
|
root /var/www/wormhole.hush.is;
|
|
|
|
index index.html index.htm;
|
|
|
|
|
|
|
|
server_name wormhole.hush.is;
|
|
|
|
|
|
|
|
location / {
|
|
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
|
|
proxy_set_header Host $host;
|
|
|
|
|
|
|
|
proxy_http_version 1.1;
|
|
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
|
|
proxy_set_header Connection "upgrade";
|
|
|
|
proxy_pass http://localhost:7070;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
```
|
|
|
|
|
|
|
|
# It's Not Working?
|
|
|
|
|
|
|
|
The wormhole does not print anything to STDOUT, all logging is in application.log
|
|
|
|
|
|
|
|
Getting "Peer is not connected" ? Restart SilentDragon/SilentDragonLite and pair SDA again.
|
|
|
|
|
|
|
|
# License
|
|
|
|
|
|
|
|
GPLv3
|
|
|
|
|
|
|
|
# Authors
|
|
|
|
|
|
|
|
The Hush developers
|
|
|
|
|
|
|
|
Zecwallet developers
|