Merge master
This commit is contained in:
@@ -10,14 +10,14 @@ Head over to the releases page and grab the latest installers or binary. https:/
|
||||
|
||||
If you are on Debian/Ubuntu, please download the `.deb` package and install it.
|
||||
```
|
||||
sudo dpkg -i linux-deb-zec-qt-wallet-v0.5.7.deb
|
||||
sudo dpkg -i linux-deb-zec-qt-wallet-v0.5.10.deb
|
||||
sudo apt install -f
|
||||
```
|
||||
|
||||
Or you can download and run the binaries directly.
|
||||
```
|
||||
tar -xvf zec-qt-wallet-v0.5.7.tar.gz
|
||||
./zec-qt-wallet-v0.5.7/zec-qt-wallet
|
||||
tar -xvf zec-qt-wallet-v0.5.10.tar.gz
|
||||
./zec-qt-wallet-v0.5.10/zec-qt-wallet
|
||||
```
|
||||
|
||||
### Windows
|
||||
|
||||
52
public_key.asc
Normal file
52
public_key.asc
Normal file
@@ -0,0 +1,52 @@
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
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
|
||||
8/k3fH5u794KFQQ3WbeHVoJ4mXI4RsQ=
|
||||
=lY99
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
13
res/SIGNATURES_README
Normal file
13
res/SIGNATURES_README
Normal file
@@ -0,0 +1,13 @@
|
||||
This directory contains the hashes and signatures for zec-qt-wallet
|
||||
|
||||
Verify the hashes by running:
|
||||
sha256sum -c sha256sum-vX.Y.Z.txt
|
||||
|
||||
Verify signatures:
|
||||
1. First, import the public key (Available on github
|
||||
at https://github.com/ZcashFoundation/zec-qt-wallet/blob/master/public_key.asc)
|
||||
gpg --import public_key.asc
|
||||
|
||||
2. Verify signature
|
||||
gpg --verify <filename.sig> <downloaded-filename-to-verify>
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
#include "ui_mainwindow.h"
|
||||
#include "settings.h"
|
||||
#include "mainwindow.h"
|
||||
#include "rpc.h"
|
||||
|
||||
|
||||
AddressBookModel::AddressBookModel(QTableView *parent)
|
||||
@@ -221,6 +222,9 @@ void AddressBook::open(MainWindow* parent, QLineEdit* target) {
|
||||
fnSetTargetLabelAddr(target, item.first, item.second);
|
||||
}
|
||||
};
|
||||
|
||||
// Refresh after the dialog is closed to update the labels everywhere.
|
||||
parent->getRPC()->refresh(true);
|
||||
}
|
||||
|
||||
//=============
|
||||
|
||||
@@ -700,10 +700,6 @@ void MainWindow::doImport(QList<QString>* keys) {
|
||||
|
||||
if (keys->isEmpty()) {
|
||||
delete keys;
|
||||
|
||||
QMessageBox::information(this,
|
||||
"Imported", tr("The keys were imported. It may take several minutes to rescan the blockchain. Until then, functionality may be limited"),
|
||||
QMessageBox::Ok);
|
||||
ui->statusBar->showMessage(tr("Private key import rescan finished"));
|
||||
return;
|
||||
}
|
||||
@@ -836,7 +832,12 @@ void MainWindow::importPrivKey() {
|
||||
});
|
||||
|
||||
// Start the import. The function takes ownership of keys
|
||||
doImport(keys);
|
||||
QTimer::singleShot(1, [=]() {doImport(keys);});
|
||||
|
||||
// Show the dialog that keys will be imported.
|
||||
QMessageBox::information(this,
|
||||
"Imported", tr("The keys were imported. It may take several minutes to rescan the blockchain. Until then, functionality may be limited"),
|
||||
QMessageBox::Ok);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ Exec=/usr/local/bin/zec-qt-wallet
|
||||
Icon=zec-qt-wallet.xpm
|
||||
Type=Application
|
||||
StartupNotify=true
|
||||
StartupWMClass=Code
|
||||
StartupWMClass=zecqtwallet
|
||||
Categories=Utility;
|
||||
MimeType=text/plain;inode/directory;
|
||||
Keywords=zec-qt-wallet;
|
||||
|
||||
@@ -61,7 +61,9 @@ ssh $winserver "New-Item zqwbuild -itemtype directory" | Out-Null
|
||||
# Same while copying the built msi. A straight scp pull from windows to here doesn't work,
|
||||
# so we ssh to windows, and then scp push the file to here.
|
||||
$myhostname = (hostname) | Out-String -NoNewline
|
||||
Remove-Item -Path /tmp/zqwbuild -Recurse -ErrorAction Ignore | Out-Null
|
||||
# Powershell seems not to be able to remove this directory for some reason!
|
||||
# Remove-Item -Path /tmp/zqwbuild -Recurse -ErrorAction Ignore | Out-Null
|
||||
bash "rm -rf /tmp/zqwbuild" 2>&1 | Out-Null
|
||||
New-Item -Path /tmp/zqwbuild -itemtype directory | Out-Null
|
||||
Copy-Item src /tmp/zqwbuild/ -Recurse
|
||||
Copy-Item res /tmp/zqwbuild/ -Recurse
|
||||
@@ -87,3 +89,7 @@ if (! (Test-Path ./artifacts/linux-binaries-zec-qt-wallet-v$version.tar.gz) -or
|
||||
exit 1;
|
||||
}
|
||||
Write-Host "[OK]"
|
||||
|
||||
Write-Host -NoNewline "Signing Binaries......"
|
||||
bash src/scripts/signbinaries.sh --version $version
|
||||
Write-Host "[OK]"
|
||||
|
||||
50
src/scripts/signbinaries.sh
Executable file
50
src/scripts/signbinaries.sh
Executable file
@@ -0,0 +1,50 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Accept the variables as command line arguments as well
|
||||
POSITIONAL=()
|
||||
while [[ $# -gt 0 ]]
|
||||
do
|
||||
key="$1"
|
||||
|
||||
case $key in
|
||||
-v|--version)
|
||||
APP_VERSION="$2"
|
||||
shift # past argument
|
||||
shift # past value
|
||||
;;
|
||||
*) # unknown option
|
||||
POSITIONAL+=("$1") # save it in an array for later
|
||||
shift # past argument
|
||||
;;
|
||||
esac
|
||||
done
|
||||
set -- "${POSITIONAL[@]}" # restore positional parameters
|
||||
|
||||
if [ -z $APP_VERSION ]; then echo "APP_VERSION is not set"; exit 1; fi
|
||||
|
||||
# Store the hash and signatures here
|
||||
rm -rf release/signatures
|
||||
mkdir -p release/signatures
|
||||
|
||||
cd artifacts
|
||||
echo "[Signing Binaries]"
|
||||
|
||||
# Remove previous signatures/hashes
|
||||
rm -f sha256sum-v$APP_VERSION.txt
|
||||
rm -f signatures-v$APP_VERSION.tar.gz
|
||||
|
||||
# sha256sum the binaries
|
||||
gsha256sum *$APP_VERSION* > sha256sum-v$APP_VERSION.txt
|
||||
|
||||
for i in $( ls *zec-qt-wallet-v$APP_VERSION* sha256sum-v$APP_VERSION* ); do
|
||||
echo "Signing" $i
|
||||
gpg --batch --output ../release/signatures/$i.sig --detach-sig $i
|
||||
done
|
||||
|
||||
mv sha256sum-v$APP_VERSION.txt ../release/signatures/
|
||||
cp ../res/SIGNATURES_README ../release/signatures/README
|
||||
|
||||
cd ../release/signatures
|
||||
tar -czf signatures-v$APP_VERSION.tar.gz *
|
||||
mv signatures-v$APP_VERSION.tar.gz ../../artifacts
|
||||
|
||||
@@ -12,8 +12,7 @@ using json = nlohmann::json;
|
||||
|
||||
void MainWindow::setupSendTab() {
|
||||
// Create the validator for send to/amount fields
|
||||
auto amtValidator = new QDoubleValidator(0, 21000000, 8, ui->Amount1);
|
||||
amtValidator->setNotation(QDoubleValidator::StandardNotation);
|
||||
auto amtValidator = new QRegExpValidator(QRegExp("[0-9]{0,8}\\.?[0-9]{0,8}"));
|
||||
ui->Amount1->setValidator(amtValidator);
|
||||
|
||||
// Send button
|
||||
@@ -74,8 +73,7 @@ void MainWindow::setupSendTab() {
|
||||
}
|
||||
});
|
||||
//Fees validator
|
||||
auto feesValidator = new QDoubleValidator(0, 1, 8, ui->Amount1);
|
||||
feesValidator->setNotation(QDoubleValidator::StandardNotation);
|
||||
auto feesValidator = new QRegExpValidator(QRegExp("[0-9]{0,8}\\.?[0-9]{0,8}"));
|
||||
ui->minerFeeAmt->setValidator(feesValidator);
|
||||
|
||||
// Font for the first Memo label
|
||||
@@ -219,8 +217,9 @@ void MainWindow::addAddressSection() {
|
||||
Amount1->setPlaceholderText(tr("Amount"));
|
||||
Amount1->setObjectName(QString("Amount") % QString::number(itemNumber));
|
||||
Amount1->setBaseSize(QSize(200, 0));
|
||||
Amount1->setAlignment(Qt::AlignRight);
|
||||
// Create the validator for send to/amount fields
|
||||
auto amtValidator = new QDoubleValidator(0, 21000000, 8, Amount1);
|
||||
auto amtValidator = new QRegExpValidator(QRegExp("[0-9]{0,8}\\.?[0-9]{0,8}"));
|
||||
Amount1->setValidator(amtValidator);
|
||||
QObject::connect(Amount1, &QLineEdit::textChanged, [=] (auto text) {
|
||||
this->amountChanged(itemNumber, text);
|
||||
|
||||
Reference in New Issue
Block a user