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* zec-qt-wallet.vcxproj*
zecwallet.vcxproj* zecwallet.vcxproj*
zec-qt-wallet.sln zec-qt-wallet.sln
zec-qt-wallet.pro.user silentdragon.pro.user
Makefile Makefile
Makefile.* Makefile.*
qrc_application.cpp qrc_application.cpp

4
.travis.yml

@ -18,10 +18,10 @@ script:
- qmake -v - qmake -v
- clang++ -v - clang++ -v
- g++-8 -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 CC=clang CXX=clang++ -j2
- make distclean - make distclean
- qmake zec-qt-wallet.pro CONFIG+=release -spec linux-g++ - qmake silentdragon.pro CONFIG+=release -spec linux-g++
- res/libsodium/buildlibsodium.sh - res/libsodium/buildlibsodium.sh
- make CC=gcc-8 CXX=g++-8 -j2 - 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) ![Screenshots](docs/screenshot-sub.png?raw=true)
# Installation # 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. If you don't have one, SilentDragon will start its embedded hushd node.
```
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.
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 ## 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 ### Building on Linux
``` ```
git clone https://github.com/ZcashFoundation/zecwallet.git git clone https://github.com/MyHush/SilentDragon.git
cd zecwallet cd SilentDragon
/path/to/qt5/bin/qmake zec-qt-wallet.pro CONFIG+=debug qmake silentdragon.pro CONFIG+=debug
make -j$(nproc) make -j$(nproc)
./zecwallet ./SilentDragon
``` ```
### Building on Windows ### 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 From the VS Tools command prompt
``` ```
git clone https://github.com/ZcashFoundation/zecwallet.git git clone https://github.com/MyHush/SilentDragon.git
cd zecwallet cd SilentDragon
c:\Qt5\bin\qmake.exe zec-qt-wallet.pro -spec win32-msvc CONFIG+=debug c:\Qt5\bin\qmake.exe silentdragon.pro -spec win32-msvc CONFIG+=debug
nmake nmake
debug\zecwallet.exe debug\SilentDragon.exe
``` ```
To create the Visual Studio project files so you can compile and run from Visual Studio: 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 ### Building on macOS
You need to install the Xcode app or the Xcode command line tools first, and then install Qt. 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 git clone https://github.com/MyHush/SilentDragon.git
cd zecwallet cd SilentDragon
/path/to/qt5/bin/qmake zec-qt-wallet.pro CONFIG+=debug qmake silentdragon.pro CONFIG+=debug
make make
./zecwallet.app/Contents/MacOS/zecwallet ./SilentDragon.app/Contents/MacOS/SilentDragon
``` ```
### [Troubleshooting Guide & FAQ](https://github.com/ZcashFoundation/zecwallet/wiki/Troubleshooting-&-FAQ) ### [Troubleshooting Guide & FAQ](https://github.com/MyHush/SilentDragon/wiki/Troubleshooting-&-FAQ)
Please read the [troubleshooting guide](https://docs.zecwallet.co/troubleshooting/) for common problems and solutions. Please read the [troubleshooting guide](https://docs.SilentDragon.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). 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"> <plist version="1.0">
<dict> <dict>
<key>CFBundleExecutable</key> <key>CFBundleExecutable</key>
<string>zecwallet</string> <string>SilentDragon</string>
<key>CFBundleGetInfoString</key> <key>CFBundleGetInfoString</key>
<string>Created by Qt/QMake</string> <string>Created by Qt/QMake</string>
<key>CFBundleIconFile</key> <key>CFBundleIconFile</key>
<string>logo.icns</string> <string>logo.icns</string>
<key>CFBundleIdentifier</key> <key>CFBundleIdentifier</key>
<string>com.yourcompany.zecwallet</string> <string>com.myhush.silentdragon</string>
<key>CFBundlePackageType</key> <key>CFBundlePackageType</key>
<string>APPL</string> <string>APPL</string>
<key>CFBundleSignature</key> <key>CFBundleSignature</key>
@ -39,4 +39,4 @@
<key>NSUIElement</key> <key>NSUIElement</key>
<true/> <true/>
</dict> </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.........." Write-Host -NoNewline "Copying files.........."
ssh $server "rm -rf /tmp/zqwbuild" ssh $server "rm -rf /tmp/zqwbuild"
ssh $server "mkdir /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/scripts/mkrelease.sh" | Out-Null
ssh $server "dos2unix -q /tmp/zqwbuild/src/version.h" ssh $server "dos2unix -q /tmp/zqwbuild/src/version.h"
Write-Host "[OK]" Write-Host "[OK]"

2
src/scripts/dotranslations.sh

@ -6,7 +6,7 @@ if [ -z $QT_STATIC ]; then
fi fi
rm -f res/*.qm 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 # Then update the qt base translations. First, get all languages
ls res/*.qm | awk -F '[_.]' '{print $4}' | while read -r language ; do 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.........." Write-Host -NoNewline "Copying files.........."
ssh $server "rm -rf /tmp/zqwbuild" ssh $server "rm -rf /tmp/zqwbuild"
ssh $server "mkdir /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/scripts/mkrelease.sh" | Out-Null
ssh $server "dos2unix -q /tmp/zqwbuild/src/version.h" ssh $server "dos2unix -q /tmp/zqwbuild/src/version.h"
Write-Host "[OK]" Write-Host "[OK]"

2
src/scripts/mkmacdmg.sh

@ -67,7 +67,7 @@ echo "[OK]"
echo -n "Configuring............" echo -n "Configuring............"
# Build # Build
QT_STATIC=$QT_PATH src/scripts/dotranslations.sh >/dev/null 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]" echo "[OK]"

6
src/scripts/mkrelease.sh

@ -43,7 +43,7 @@ fi
echo -n "Version files.........." echo -n "Version files.........."
# Replace the version number in the .pro file so it gets picked up everywhere # 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 # Also update it in the README.md
sed -i "s/${PREV_VERSION}/${APP_VERSION}/g" README.md > /dev/null 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............" echo -n "Configuring............"
QT_STATIC=$QT_STATIC bash src/scripts/dotranslations.sh >/dev/null 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]" echo "[OK]"
@ -163,7 +163,7 @@ make clean > /dev/null
rm -f zec-qt-wallet-mingw.pro rm -f zec-qt-wallet-mingw.pro
rm -rf release/ rm -rf release/
#Mingw seems to have trouble with precompiled headers, so strip that option from the .pro file #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]" echo "[OK]"

Loading…
Cancel
Save