Browse Source

Silent Dragon the build

pull/45/head
Jonathan "Duke" Leto 5 years ago
parent
commit
138e66b68c
  1. 2
      .gitignore
  2. 4
      .travis.yml
  3. 69
      README.md
  4. 6
      res/Info.plist
  5. 0
      silentdragon.pro
  6. 2
      src/scripts/dobuild.ps1
  7. 2
      src/scripts/dotranslations.sh
  8. 2
      src/scripts/dounifiedbuild.ps1
  9. 2
      src/scripts/mkmacdmg.sh
  10. 6
      src/scripts/mkrelease.sh

2
.gitignore

@ -20,7 +20,7 @@ zec-qt-wallet-mingw*
zec-qt-wallet.vcxproj*
zecwallet.vcxproj*
zec-qt-wallet.sln
zec-qt-wallet.pro.user
silentdragon.pro.user
Makefile
Makefile.*
qrc_application.cpp

4
.travis.yml

@ -18,10 +18,10 @@ script:
- qmake -v
- clang++ -v
- g++-8 -v
- qmake zec-qt-wallet.pro CONFIG+=release -spec linux-clang
- qmake silentdragon.pro CONFIG+=release -spec linux-clang
- make CC=clang CXX=clang++ -j2
- make distclean
- qmake zec-qt-wallet.pro CONFIG+=release -spec linux-g++
- qmake silentdragon.pro CONFIG+=release -spec linux-g++
- res/libsodium/buildlibsodium.sh
- make CC=gcc-8 CXX=g++-8 -j2

69
README.md

@ -3,51 +3,31 @@ SilentDragon desktop wallet for HUSH ($HUSH) that runs on Linux, Windows and mac
![Screenshots](docs/screenshot-sub.png?raw=true)
# Installation
Head over to the releases page and grab the latest installers or binary. https://github.com/ZcashFoundation/zecwallet/releases
Head over to the releases page and grab the latest installers or binary. https://github.com/MyHush/SilentDragon/releases
### Linux
## hushd
SilentDragon needs a Hush full node running hushd. If you already have a hushd node running, SilentDragon will connect to it.
If you are on Debian/Ubuntu, please download the `.deb` package and install it.
```
sudo dpkg -i linux-deb-zecwallet-v0.6.7.deb
sudo apt install -f
```
Or you can download and run the binaries directly.
```
tar -xvf zecwallet-v0.6.7.tar.gz
./zecwallet-v0.6.7/zecwallet
```
### Windows
Download and run the `.msi` installer and follow the prompts. Alternately, you can download the release binary, unzip it and double click on `zecwallet.exe` to start.
### macOS
Double-click on the `.dmg` file to open it, and drag `zecwallet` on to the Applications link to install.
## zcashd
ZecWallet needs a Zcash node running zcashd. If you already have a zcashd node running, ZecWallet will connect to it.
If you don't have one, ZecWallet will start its embedded zcashd node.
If you don't have one, SilentDragon will start its embedded hushd node.
Additionally, if this is the first time you're running ZecWallet or a zcashd daemon, ZecWallet will download the zcash params (~1.7 GB) and configure `zcash.conf` for you.
Additionally, if this is the first time you're running SilentDragon or a hushd daemon, SilentDragon will download the zcash params (~1.7 GB) and configure `HUSH3.conf` for you.
Pass `--no-embedded` to disable the embedded zcashd and force ZecWallet to connect to an external node.
Pass `--no-embedded` to disable the embedded hushd and force SilentDragon to connect to an external node.
## Compiling from source
ZecWallet is written in C++ 14, and can be compiled with g++/clang++/visual c++. It also depends on Qt5, which you can get from [here](https://www.qt.io/download). Note that if you are compiling from source, you won't get the embedded zcashd by default. You can either run an external zcashd, or compile zcashd as well.
SilentDragon is written in C++ 14, and can be compiled with g++/clang++/visual c++. It also depends on Qt5, which you can get from [here](https://www.qt.io/download). Note that if you are compiling from source, you won't get the embedded hushd by default. You can either run an external hushd, or compile hushd as well.
See detailed build instructions [on the wiki](https://github.com/ZcashFoundation/zecwallet/wiki/Compiling-from-source-code)
See detailed build instructions [on the wiki](https://github.com/MyHush/SilentDragon/wiki/Compiling-from-source-code)
### Building on Linux
```
git clone https://github.com/ZcashFoundation/zecwallet.git
cd zecwallet
/path/to/qt5/bin/qmake zec-qt-wallet.pro CONFIG+=debug
git clone https://github.com/MyHush/SilentDragon.git
cd SilentDragon
qmake silentdragon.pro CONFIG+=debug
make -j$(nproc)
./zecwallet
./SilentDragon
```
### Building on Windows
@ -55,33 +35,32 @@ You need Visual Studio 2017 (The free C++ Community Edition works just fine).
From the VS Tools command prompt
```
git clone https://github.com/ZcashFoundation/zecwallet.git
cd zecwallet
c:\Qt5\bin\qmake.exe zec-qt-wallet.pro -spec win32-msvc CONFIG+=debug
git clone https://github.com/MyHush/SilentDragon.git
cd SilentDragon
c:\Qt5\bin\qmake.exe silentdragon.pro -spec win32-msvc CONFIG+=debug
nmake
debug\zecwallet.exe
debug\SilentDragon.exe
```
To create the Visual Studio project files so you can compile and run from Visual Studio:
```
c:\Qt5\bin\qmake.exe zec-qt-wallet.pro -tp vc CONFIG+=debug
c:\Qt5\bin\qmake.exe silentdragon.pro -tp vc CONFIG+=debug
```
### Building on macOS
You need to install the Xcode app or the Xcode command line tools first, and then install Qt.
```
git clone https://github.com/ZcashFoundation/zecwallet.git
cd zecwallet
/path/to/qt5/bin/qmake zec-qt-wallet.pro CONFIG+=debug
git clone https://github.com/MyHush/SilentDragon.git
cd SilentDragon
qmake silentdragon.pro CONFIG+=debug
make
./zecwallet.app/Contents/MacOS/zecwallet
./SilentDragon.app/Contents/MacOS/SilentDragon
```
### [Troubleshooting Guide & FAQ](https://github.com/ZcashFoundation/zecwallet/wiki/Troubleshooting-&-FAQ)
Please read the [troubleshooting guide](https://docs.zecwallet.co/troubleshooting/) for common problems and solutions.
For support or other questions, tweet at [@zecwallet](https://twitter.com/zecwallet) or [file an issue](https://github.com/ZcashFoundation/zecwallet/issues).
### [Troubleshooting Guide & FAQ](https://github.com/MyHush/SilentDragon/wiki/Troubleshooting-&-FAQ)
Please read the [troubleshooting guide](https://docs.SilentDragon.co/troubleshooting/) for common problems and solutions.
For support or other questions, tweet at [@SilentDragon](https://twitter.com/SilentDragon) or [file an issue](https://github.com/MyHush/SilentDragon/issues).
_PS: ZecWallet is NOT an official wallet, and is not affiliated with the Electric Coin Company in any way._

6
res/Info.plist

@ -3,13 +3,13 @@
<plist version="1.0">
<dict>
<key>CFBundleExecutable</key>
<string>zecwallet</string>
<string>SilentDragon</string>
<key>CFBundleGetInfoString</key>
<string>Created by Qt/QMake</string>
<key>CFBundleIconFile</key>
<string>logo.icns</string>
<key>CFBundleIdentifier</key>
<string>com.yourcompany.zecwallet</string>
<string>com.myhush.silentdragon</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleSignature</key>
@ -39,4 +39,4 @@
<key>NSUIElement</key>
<true/>
</dict>
</plist>
</plist>

0
zec-qt-wallet.pro → silentdragon.pro

2
src/scripts/dobuild.ps1

@ -26,7 +26,7 @@ Write-Host "[Building Linux + Windows]"
Write-Host -NoNewline "Copying files.........."
ssh $server "rm -rf /tmp/zqwbuild"
ssh $server "mkdir /tmp/zqwbuild"
scp -r src/ res/ ./zec-qt-wallet.pro ./application.qrc ./LICENSE ./README.md ${server}:/tmp/zqwbuild/ | Out-Null
scp -r src/ res/ ./silentdragon.pro ./application.qrc ./LICENSE ./README.md ${server}:/tmp/zqwbuild/ | Out-Null
ssh $server "dos2unix -q /tmp/zqwbuild/src/scripts/mkrelease.sh" | Out-Null
ssh $server "dos2unix -q /tmp/zqwbuild/src/version.h"
Write-Host "[OK]"

2
src/scripts/dotranslations.sh

@ -6,7 +6,7 @@ if [ -z $QT_STATIC ]; then
fi
rm -f res/*.qm
$QT_STATIC/bin/lrelease zec-qt-wallet.pro
$QT_STATIC/bin/lrelease silentdragon.pro
# Then update the qt base translations. First, get all languages
ls res/*.qm | awk -F '[_.]' '{print $4}' | while read -r language ; do

2
src/scripts/dounifiedbuild.ps1

@ -39,7 +39,7 @@ Write-Host "[Building Linux + Windows]"
Write-Host -NoNewline "Copying files.........."
ssh $server "rm -rf /tmp/zqwbuild"
ssh $server "mkdir /tmp/zqwbuild"
scp -r src/ singleapplication/ res/ ./zec-qt-wallet.pro ./application.qrc ./LICENSE ./README.md ${server}:/tmp/zqwbuild/ | Out-Null
scp -r src/ singleapplication/ res/ ./silentdragon.pro ./application.qrc ./LICENSE ./README.md ${server}:/tmp/zqwbuild/ | Out-Null
ssh $server "dos2unix -q /tmp/zqwbuild/src/scripts/mkrelease.sh" | Out-Null
ssh $server "dos2unix -q /tmp/zqwbuild/src/version.h"
Write-Host "[OK]"

2
src/scripts/mkmacdmg.sh

@ -67,7 +67,7 @@ echo "[OK]"
echo -n "Configuring............"
# Build
QT_STATIC=$QT_PATH src/scripts/dotranslations.sh >/dev/null
$QT_PATH/bin/qmake zec-qt-wallet.pro CONFIG+=release >/dev/null
$QT_PATH/bin/qmake silentdragon.pro CONFIG+=release >/dev/null
echo "[OK]"

6
src/scripts/mkrelease.sh

@ -43,7 +43,7 @@ fi
echo -n "Version files.........."
# Replace the version number in the .pro file so it gets picked up everywhere
sed -i "s/${PREV_VERSION}/${APP_VERSION}/g" zec-qt-wallet.pro > /dev/null
sed -i "s/${PREV_VERSION}/${APP_VERSION}/g" silentdragon.pro > /dev/null
# Also update it in the README.md
sed -i "s/${PREV_VERSION}/${APP_VERSION}/g" README.md > /dev/null
@ -60,7 +60,7 @@ echo "[Building on" `lsb_release -r`"]"
echo -n "Configuring............"
QT_STATIC=$QT_STATIC bash src/scripts/dotranslations.sh >/dev/null
$QT_STATIC/bin/qmake zec-qt-wallet.pro -spec linux-clang CONFIG+=release > /dev/null
$QT_STATIC/bin/qmake silentdragon.pro -spec linux-clang CONFIG+=release > /dev/null
echo "[OK]"
@ -163,7 +163,7 @@ make clean > /dev/null
rm -f zec-qt-wallet-mingw.pro
rm -rf release/
#Mingw seems to have trouble with precompiled headers, so strip that option from the .pro file
cat zec-qt-wallet.pro | sed "s/precompile_header/release/g" | sed "s/PRECOMPILED_HEADER.*//g" > zec-qt-wallet-mingw.pro
cat silentdragon.pro | sed "s/precompile_header/release/g" | sed "s/PRECOMPILED_HEADER.*//g" > zec-qt-wallet-mingw.pro
echo "[OK]"

Loading…
Cancel
Save